文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python scapy模块个人见解

2023-01-31 05:57

关注

scapy模块

from scapy.all import *    //来自scapy.all文件,导入所有函数

python交互模式中:ls(*)*=Ether、IP、ICMP、TCP、UDP、ARP    等等,查看可以配置的参数


1.构建包:不同层之间用/分隔(常用)

Ether = Ether(src="源mac",dst="目的mac")    //以太网层 =  二层

IP   = IP(src="源ip",dst="目的ip或者URL")   //IP层   =  三层

XY   = ICMP()、TCP()、UDP() [都可以用dport=目的端口,sport=源端口]//协议封装在IP层  

ARP  = ARP(hwsrc='二层源mac',psrc='三层源IP',hwdst='二层目的mac',pdst='三层目的IP')     SJ    = padding(load='x'*8)           //数据位,填充 x乘8个    


RandMAC()  任意MAC地址               

RandIP()   任意IP地址


构建二层包:(以Ether层开头)

 如:pkt=Ether/IP/ARP

构建三层包:(以IP层开头)

 如:pkt=IP/XY/SJ


2.只发送

 二层:sendp()  //给定网卡接口

 三层:send()   //自动根据路由表进行路由发送


 如发二层包:

     sendp(pkt,iface="eth0",loop=1,inter=1 )  

 参数:

pkt          构建包的变量

iface="eth0" 选择网卡为eth0

loop=1       循环发送

inter=1      每隔1秒发送 

timeout=1    超时1秒就丢弃,实际时间看程序处理能力而定 


3.发送并返回

 二层:

     srp()   //发送包, 返回答复和没有答复的包的数量

     srp1() //发送包, 返回只答复或者发送的包的详细信息| .参数,显示这个参数的返回数据

 三层:

     sr(  )  //发送包, 返回答复和没有答复的包的数量

     sr1( ) //发送包, 返回只答复或者发送的包的详细信息|.参数,显示这个参数的返回数据


 如二层发收包:

     srp1(pkt,timeout=1,verbose=0 )

 参数:

        pkt       构建包的变量

        timeout=1 超时1秒就丢弃,实际时间看程序处理能力而定

        verbose=0 不显示详细信息


以上是我个人学习积累到的知识,如有需要更正或者增加的地方,欢迎来与我交流学习一番,共同进步,谢谢观看。 

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯