内网DNS投毒技术劫持会话

时间:2025-03-07 22:34:07

工具列表:

tcpdump
Ferret
Hamster
node
closurether

拓扑环境:

内网DNS投毒技术劫持会话

攻击机:Kali 10.10.10.237

被攻击机: win7 10.10.10.232

因为只为了测试,只修改了PC1的DNS

0x01  node安装

wget http://nodejs.org/dist/v0.8.7/node-v0.8.7.tar.gz
tar zxvf node-v0.8.7.tar.gz
root@192:~/node-v0.8.7# ./configure
{ "target_defaults": { "cflags": [],
"default_configuration": "Release",
"defines": [],
"include_dirs": [],
"libraries": []},
"variables": { "clang": 0,
"gcc_version": 47,
"host_arch": "ia32",
"node_install_npm": "true",
"node_install_waf": "true",
"node_prefix": "",
"node_shared_openssl": "false",
"node_shared_v8": "false",
"node_shared_zlib": "false",
"node_use_dtrace": "false",
"node_use_etw": "false",
"node_use_openssl": "true",
"target_arch": "ia32",
"v8_no_strict_aliasing": 1,
"v8_use_snapshot": "true"}}
creating ./config.gypi
creating ./config.mk
root@192:~/node-v0.8.7# make install

安装完后,执行

npm install -g closurether

 

如果出现错误

SSL Error: SELF_SIGNED_CERT_IN_CHAIN

symlinking ../lib/node_modules/npm/bin/npm-cli.js -> /usr/local/bin/npm
updating shebang of /usr/local/bin/npm to /usr/local/bin/node
root@192:~/node-v0.8.7# npm install -g closurether
npm http GET https://registry.npmjs.org/closurether
npm http GET https://registry.npmjs.org/closurether
npm http GET https://registry.npmjs.org/closurether
npm ERR! Error: SSL Error: SELF_SIGNED_CERT_IN_CHAIN
npm ERR! at ClientRequest.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/request/main.js:440:26)
npm ERR! at ClientRequest.g (events.js:185:14)
npm ERR! at ClientRequest.EventEmitter.emit (events.js:88:17)
npm ERR! at HTTPParser.parserOnIncomingClient [as onIncoming] (http.js:1455:

找到解决方法是:

root@192:~/node-v0.8.7# npm install npm -g --ca=null
npm http GET https://registry.npmjs.org/npm
npm http 200 https://registry.npmjs.org/npm
npm http GET https://registry.npmjs.org/npm/-/npm-1.4.26.tgz
npm http 200 https://registry.npmjs.org/npm/-/npm-1.4.26.tgz
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@1.4.26 /usr/local/lib/node_modules/npm
root@192:~/node-v0.8.7# npm config set ca=""
root@192:~/node-v0.8.7# npm install -g closurether
/usr/local/bin/closurether -> /usr/local/lib/node_modules/closurether/bin/closurether
closurether@0.1.1 /usr/local/lib/node_modules/closurether
├── mkdirp@0.3.5
├── iconv-lite@0.2.11
└── uglify-js@2.3.6 (async@0.2.10, source-map@0.1.39, optimist@0.3.7)

再执行closurether已经正常。

内网DNS投毒技术劫持会话

这里运行是 DNS走的流量通过本机的服务再转发给访问者。HTTP是正常的。遇到HTTPS会出现一些错误。也没有找到什么好的解决方式一起共勉下。

现在配置好了,来测试一下。

内网DNS投毒技术劫持会话

修改下本机的DNS 。指向kali,用closurether来处理DNS信息。(修改DNS也可以在路由上面进行修改。另外也可以DHCP,自动获取DNS的话可以强制获取到自己设置的DNS。怎么实现大家可以自己去测试,这里就不讨论了)

0x02  测试劫持

修改成功后。可以看到详细的DNS信息与访问信息。

内网DNS投毒技术劫持会话

这里。我们当然就用来node来进行JS注入了。

找一个这个文件js

find / -name extern.js

  内网DNS投毒技术劫持会话

加入测试内容

内网DNS投毒技术劫持会话

alert 弹出

内网DNS投毒技术劫持会话

加入后。会在默认的列表里面自动加入JS,默认是所有的网站都会注入JS。JS是会缓存的。要清理缓存。也可以new预加载。

内网DNS投毒技术劫持会话

想要加入js的url.自要在

/usr/local/lib/node_modules/closurether/tool/cache-sniffer

  

这个目录里面加入 就可以了。

这里的10086.cn伪造地址 具体想伪装成什么地址,可以在config.json里配置。

内网DNS投毒技术劫持会话

JS里面就是我们修改的文件extern.js

内网DNS投毒技术劫持会话

这里就可以用js进行投毒。投入flash升级与下载exe识别替换与js获得主机的一些信息。(注意JS死循环)

0x03 实战劫持

试一试劫持会话

tcpdump 监听下eth0  生成cap

内网DNS投毒技术劫持会话

用ferret处理生成的cap文件 自动在目录会长成一个hamster.txt.

内网DNS投毒技术劫持会话

在启用hamster 代理

内网DNS投毒技术劫持会话

这样就可以劫持他们的会话了

内网DNS投毒技术劫持会话

这里看不懂的可以看看查查中间人攻击。

劫持会话的kali上面集成了很多。如urlsnarf,Cookie Cadger(这种我觉得太方便)这里我不演示这几种了,大家可以自己测试。

urlsnarf 劫持的话也只是处理下头文件。

内网DNS投毒技术劫持会话

本机我访问下QQ空间。

收到了urlsnarf里面的信息

内网DNS投毒技术劫持会话

我们通过抓取到的信息。直接就可以登陆到QQ空间。

内网DNS投毒技术劫持会话

在局域网利用信息是很方便的,还有没有隐私。测试成功的有 QQ空间 QQ邮箱,百度网盘。其他的HTTP没有一一测试。我测试的基本都成功。

说的都是常规思路,大牛们求更淫荡的姿态。

转载自 :http://www.freebuf.com/articles/web/43157.html