工具列表:

tcpdump
Ferret
Hamster
node
closurether

拓扑环境:

攻击机: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走的流量通过本机的服务再转发给访问者。HTTP是正常的。遇到HTTPS会出现一些错误。也没有找到什么好的解决方式一起共勉下。

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

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

0x02  测试劫持

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

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

找一个这个文件js

find / -name extern.js

  

加入测试内容

alert 弹出

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

想要加入js的url.自要在

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

  

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

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

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

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

0x03 实战劫持

试一试劫持会话

tcpdump 监听下eth0  生成cap

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

在启用hamster 代理

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

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

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

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

本机我访问下QQ空间。

收到了urlsnarf里面的信息

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

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

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

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

内网DNS投毒技术劫持会话的更多相关文章

  1. Centos下内网DNS主从环境部署记录

    一.DNS是什么?DNS(Domain Name System),即域名系统.它使用层次结构的命名系统,将域名和IP地址相互映射,形成一个分布式数据库系统. DNS采用C-S架构,服务器端工作在UDP ...

  2. 配置内网DNS实现内部域名解析

    服务器 实战目的: ü 配置内网的DNS服务器实现内网服务器的域名解析. ü 配置内网的DNS服务器减少到Internet的域名解析流量. ü 配置内网的DNS服务器实现Internet上服务器的域名 ...

  3. 用 ROS 做内网DNS服务器

    转载:http://iliuyong.iteye.com/blog/1035692 用 ROS 做内网DNS服务器方法:1.ROS 设置IP ->DNS 选择"static" ...

  4. 使用dnsmasq快速搭建内网DNS

    背景介绍公司有一批测试服务器,之间希望通过自定义的域名进行访问,这样比较方便,但每个人每台机器都维护一个hosts的话会非常麻烦,于是想搭建一个内部的DNS服务器,对自定义的域名进行解析,同时缓存公网 ...

  5. 云计算之路-试用Azure:搭建自己的内网DNS服务器

    之前我们写过一篇博文谈到Azure内置的内网DNS服务器不能跨Cloud Service,而我们的虚拟机部署场景恰恰需要跨多个Cloud Service,所以目前只能选择用Azure虚拟机搭建自己的内 ...

  6. bind搭建内网DNS服务器架构(主从、子域授权、DNS转发器)

    实验目的 模拟企业DNS服务架构服务器及原理 实验环境准备 实验架构图 实验设备 DNS服务器4台 主服务器master(centos8):IP_192.168.100.30, 从服务器slave(r ...

  7. 内网dns劫持

    进行内网的dns劫持呢 ---> 我们需要用到ettercap 和ettercap内置的工具dns_spoof 1.我们需要开启ip转发 echo >/proc/sys/net/ipv4/ ...

  8. 常见企业IT支撑【5、内网DNS cache轻量服务dnsmasq】

    可参考http://www.centoscn.com/CentosServer/dns/2014/0113/2355.html 布署keepalive高可用方式 此方案只适合小型企业,规模少的情况下使 ...

  9. bettercap实现内网Dns欺骗

    目的 让内网的所有计算机浏览网页的时候, 出现我的钓鱼页面 准备 kali系统 Bettercap dns文件 通过ifconfig查看当前计算机的ip, 我这边为, 192.168.1.150 创建 ...

随机推荐

  1. Android: TODO 应用交互的两种实现方法(Behavior)

    最近在写 TODO app,涉及到 Calendar 和 RecyclerView 的交互, 需求: 1. 往上滑动, Calendar 显示为周 2. 周显示模式下,往下滑动,显示为月 3. 列表下 ...

  2. 笔记本上安装centos7

    1.下载centos的dvd镜像就够了.地址: 2.制作u盘镜像. 1)下载安装UltraIOS,(百度云->软件文件夹有,for me). 2)打开镜像,选择“启动”-->“写入硬盘镜像 ...

  3. [Linux] Ubuntu修改时区

    sudo apt-get install sysv-rc-confsudo dpkg-reconfigure tzdata

  4. c# 获取当前程序运行根目录

    //获取绝对路径,调用如 string fileName = string.Format("~/RuleConfigFiles/Campaign_{0}.JSON", Campai ...

  5. CCCallFunc和CCSequence

    class CC_DLL CCCallFunc : public CCActionInstant //<NSCopying> void Issue1305_2::onEnter() { A ...

  6. 每日英语:Is Bo Xilai the Past or Future?

    Bo Xilai may be in jail, but a struggle is now underway within the Communist Party over the policies ...

  7. xslt循环转换子元素

    转换源xml <keywords class="array"> <e type="string">e1</e> <e ...

  8. 修改mysql root账户登录密码

    打开mysql.exe(如果你配置了path的话,打开cmd即可)键入: mysqladmin -u root -p password [你的新密码][回车] 然后会要求你输入你当前的密码,就修改成功 ...

  9. tomcat 8 加 struts2的 java.lang.NoSuchFieldException: resourceEntries

    google发现已经有人把这个bug提交给了apache,issue地址,具体原因就是 Tomcat8 introduce super class WebappClassLoaderBase and ...

  10. Excel VBA 操作 Word(入门篇)

    原文地址 本文的对象是:有一定Excel VBA基础,对Word VBA还没有什么认识,想在Excel中通过VBA操作Word还有困难的人.   一.新建Word引用 需要首先创建一个对 Word A ...