bettercap是一个强大的,模块化的,方便并且容易扩展的中间人攻击框架。
主要选项:
-T:指定中间人目标(IP地址或者MAC地址)
-I:指定使用的网络接口
-G:指定网关地址(通常是自动识别的)
--no-discovery:不搜索主机(使用ARP缓存)
--ignore:忽略指定的地址
--check-updates:检查升级
-h:获取帮助信息
嗅探不同于欺骗,最根本的区别在于,嗅探是被动的而欺骗是主动的。
嗅探能帮助你剖析协议数据包以发现用户凭证或其他东西,但显然结合欺骗会使嗅探更加强大。
-X:开启嗅探模式
-L:从本机进行嗅探(默认是从其他主机)
--sniffer-source:指定需要使用的文件
--sniffer-output:指定输出的文件
--sniffer-filter:指定使用的 BPF 过滤器
-P:解析指定数据的列表(COOKIE, CREDITCARD, DHCP, DICT, FTP, HTTPAUTH, HTTPS, IRC, MAIL, MPD, MYSQL, NNTP, NTLMMS, PGSWL, POST, REDIS, RLOGIN, SNMP, SNPP, URL, WHATSAPP),默认包含全部。
默认情况下是没有开启嗅探模式的
嗅探会检查所有可见的网络流量,并在发现用户凭证或使用相关协议进行的敏感活动时告诉你,例如:
通过 HTTP、FTP、POP、IMAP、SMTP 或其他协议传输的明文密码
用户凭证数据
Cookies
数据库连接信息
URLs
聊天应用
等等...
基本上它会显示正常安全网络中你本不应该看到的东西,同时它也能嗅探任何例如无线网络的流量。
-X 选项进入嗅探模式,而 --no-spoofing 选项则是关闭欺骗模块,这样做会在不产生太大噪声和破坏的情况下对网络进行嗅探。
如果你想同时查看自己的流量,只需增加 -L 选项。
欺骗就是通过使用各种方法模拟网络上活跃的主机,使得其他主机会将网络流量发送给你而不是其实际目标。这是任何进行中间人攻击工具的核心功能。
正因如此,在你运行 bettercap 时 -S 选项是隐藏开启的,你增加 -S 选项只是为了选择欺骗方式罢了。
欺骗是一种攻击性行为,其在网络里相当嘈杂且具有相当的破坏力。当然如果你是在本地网络进行测试或者进行的是有授权的行为,那就没问题了。
-S:使用 ARP、ICMP、NONE 进行欺骗(默认是 ARP)
--kill:断开目标当前连接
--half-duplex:当你的路由器中存在一些内置的防中间人攻击的策略时使用它。
日志
--log:选择日志输出位置
--silent:不在终端中输出日志
--log-timestamp:在日志中增加时间戳
Linux桌面上有许多不同的软件包管理器,它们的分布不同,例如,Ubuntu使用“apt”软件包管理器,而Fedora使用“dnf”,openSUSE使用“zypper”而Arch使用“pacman”。
例如:如果你想 在你的系统上安装Firefox,你应该在Ubuntu上运行以下命令:
sudo apt安装firefox
在Fedora上:
sudo dnf安装firefox
在openSUSE上:
sudo zypper安装firefox
BeEF
BEEF (The Browser Exploitation Framework):一款浏览器攻击框架,用Ruby语言开发的,Kali中默认安装的一个模块,用于实现对XSS漏洞的攻击和利用。
BeEF主要是往网页中插入一段名为hook.js的JS脚本代码,如果浏览器访问了有hook.js(钩子)的页面,就会被hook(勾住),勾连的浏览器会执行初始代码返回一些信息,接着目标主机会每隔一段时间(默认为1秒)就会向BeEF服务器发送一个请求,询问是否有新的代码需要执行。BeEF服务器本质上就像一个Web应用,被分为前端和后端。前端会轮询后端是否有新的数据需要更新,同时前端也可以向后端发送指示, BeEF持有者可以通过浏览器来登录 BeEF 的后端,来控制前端(用户的浏览器)。BeEF一般和XSS漏洞结合使用。
BeEF的目录是: /usr/share/beef-xss/beef
在使用之前,先修改 /usr/share/beef-xss/config.yaml 配置文件,将ip修改成我们kali的ip地址。后续我们进行其他实验也是需要修改这个配置文件
打开方式:
直接点击桌面上的图标,过5秒左右,然后它自动会打开命令行和浏览器beef的登录框
任意目录,直接输入命令:beef-xss 打开 ,过5秒左右,然后它自动会打开命令行和浏览器beef的登录框
进入/usr/share/beef-xss/,输入命令:./beef-xss 打开 ,然后手动打开浏览器链接
kali已经把beef-xss做成服务了,也可以使用systemctl 命令来启动或关闭beef服务
systemctl start beef-xss.service #开启beef服务
systemctl stop beef-xss.service #关闭beef服务
systemctl restart beef-xss.service #重启beef服务
登录名和密码默认都是:beef
登录成功后,会显示在线的主机和不在线的主机。在线的就是现在该主机浏览器执行了我们的JS脚本代码,不在线的就是该主机曾经执行过我们的JS脚本代码,但是现在叉掉了该页面
点击当前在线的主机,然后右边会有选择框,我们点击 Current Browser ,然后下面就有一些功能项:Details、Logs、Commands、Rider、XssRays、Ipec、Network、WebRTC
Details是浏览器信息详情
Logs能记录你在浏览器上的操作,点击,输入操作都能记录
Commands是你能对该浏览器进行哪些操作
点击Command,这里有一些我们可以使用的功能分类,一共有12个大的功能,括号里面的是每个功能分类里面的个数。
绿色的代表该功能有效,并且执行不会被用户所发现
橙色的代表该功能有效,但是执行会被用户所发现
白色的代表该功能不确定是否有效
红色的代表该功能无效
获取用户Cookie
我们点击Browser—>Hooked Domain —>Get Cookie,然后点击右下角的Execute
然后点击我们执行的那条命令,右边就可以看到浏览器的 Cookie 了。
网页重定向
我们点击Browser—>Hooked Domain —>Redirect Browser,然后点击右下角的Execute,然后用户的浏览器的该页面就会跳转到百度的页面了。
社工弹窗
我们点击Social Engiineering——>Pretty Theft ,然后右上角选择弹窗的类型,右下角点击 Execute
然后浏览器那边就会弹出框,如果你在框内输入了用户名和密码的话,点击了Log in的话,我们后台是可以收到密码的
钓鱼网站(结合DNS欺骗)
进入/usr/share/beef-xss/ 目录下,执行命令:./beef启动 beef ,API Token值
新打开一个页面,执行下面的命令
curl -H "Content-Type: application/json; charset=UTF-8" -d '{"url":"https://www.baidu.com/","mount":"/"}' -X POST http://192.168.10.25:3000/api/seng/clone_page?token=cc69c97f075be5d72675c04bbde77f747d36c6a9 #这里的地址token是我们上一步获取到的token
我们克隆的网站在目录:/usr/share/beef-xss/extensions/social_engineering/web_cloner/cloned_pages 下
访问:http://192.168.10.25:3000/ , 可以看到和百度一模一样。只要别人访问了该链接,这个浏览器就可以被我们控制了!
进行DNS欺骗之前,先去配置文件中把3000端口改成80端口
然后利用bettercap进行DNS欺骗。
然后重新打开beef,然后克隆www.baidu.com网站
只要被欺骗的主机访问www.baidu.com,其实跳转到了克隆的网站。
https://www.freebuf.com/sectool/178512.html
网友评论