网络安全-主动信息收集篇第二章-二层网络扫描之scapy
scapy是python第三方库文件,可以使用python进行调用也单独进行使用。
非常强大可以用于抓包、分析、创建、修改、注入网络流量。
使用scapy
详细使用方式可以查看github:https://github.com/secdev/scapy
使用ARP().display()调用这个方法,定制一个ARP数据包
hwtype硬件类型
ptype协议类型
hwlen硬件地址长度
plen协议长度
op操作 who-has arp查询包
hwsrc 源MAC地址
psrc 源IP地址
hwdst 目标MAC地址
pdst 目标IP地址
可以得到scapy与真实的ARP包结构对比一致。
通过对scapy中的ARP方法中的pdst变量进行赋值为需要请求的IP地址这里设置为我的网关
这里准备将这个组装好的包发布出去,在此之前提前打开wireshark通过arp抓包筛选器进行显示过滤
可以根据本次获得的回应包分析可以得到数据有:
协议类型:ARP
硬件类型为:0x1
协议类型为:0x800
硬件长度为:6
协议长度为:4
操作:确定谁是某台主机
源mac地址:54:66:6c:80:f3:50
源主机IP:10.0.0.1
目标mac地址:00:0c:29:cf:9f:77
目标IP地址:10.0.0.8
padding:当所有字段加完时依旧不满足最小包长度时,会十六进制的x00来进行补位。
已抓到本次组装的ARP包