python--scapy学习

Python的Scapy模块能够让用户发送,嗅探,解析并伪造网络数据包。这些能力能用来构建探测,扫描或者攻击网络的工具。

换句话说,Scapy是一个强大的交互式数据包处理程序。它能够伪造或者解码大量的数据包协议,发送,捕获数据包并匹配请求和回复。Scapy能轻松的处理像扫描,追踪,探测,单元测试,攻击或者网络发现能大多数常见的任务。它能够替代像hping, arpspoof, arp-sk, arping, p0f甚至是Nmap, tcpdump, and tshark这样的工具。

Scapy在执行很多工具不能处理的特定问题上也完成的很好。像是发送无效的数据帧,注入我们自己的802.11帧,在WEP上解码加密通道结合其他技术(VLAN hopping攻击+APR缓存中毒,VOIP解码等)等等。
看起来很不错。Scapy只做了两件主要的事:发送数据包并接受响应。你定义了一些数据包,然后发送他们,接受响应,匹配符合要求的响应,然后返回数据元组(请求,响应)和一些没有被匹配的数据包。这对于那些像Nmap和hping的工具来说有巨大的优势,他们不会减少数据包而是完整的数据包。

这些能建立更高水平的功能,比如路由追踪,只需要开始请求的TTL和响应的原始的IP地址便可返回结果。Ping这个网络并返回主机的响应,端口扫描并返回LaTeX格式的报告。

是什么让Scapy如此的特别?

首先,大多数网络工具你不能做作者没有设定的事情。那些工具被建立起来是为了特定的目标,不能偏离目标。比如说,ARP缓存中毒工具不会让你使用双802.1q封装。或者试图发现一个程序能发送,表达一个用ICMP的数据包。事实上,每当你有新的需求你必须构建新的工具。

第二,他们通常把解码和解释弄混淆。机器很擅长解码并帮助人们开始,解释是给人类看的。一些程序试图模仿这些行为。例如,他们说“这个端口是开放的”而不是“我收到了一个SYN-ACK”,有些时候他们是对的,有时候并不是。这对初学者很容易,但是当你知道你正在做什么的时候,你要试图解码从程序的解释中到底发生了什么,这是很困难的,因为你丢掉了大量的信息。并且你经常使用tcpdump -xX来解码,并解释,工具丢

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值