python 读取修改pcap包的例子

 更新时间:2019年07月23日 10:44:46   作者:seen_in_hw  
今天小编就为大家分享一篇python 读取修改pcap包的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

思路

利用scapy库,在这个库的基础下能够做很多的事情,python读取pcap包网上一找一大把

将读取出来的pcap包改一个名字,然后写回,这不就OK了吗

写回的函数是:scapy.wrpcap(‘filename',list)

第一个参数是filename,第二个参数是一个list,保存报文的list

样例代码

#coding=utf8
import scapy.all as scapy
from scapy.layers import http
import random
#p就是一堆数据,上几层的各种数据


charset = 'QWER.;[]?|%123445TYUerty!@#$%^&*()-uiopadDFGHJKLZXCVBNMqwfghjklzcvbnm,6789=+'  #字符集在这里,可以随意更改

def string_change(str_data):       #通过字符集替换一个等长的攻击字符串
  str_response = ''
  for i in range(len(str_data)):
    index = random.randint(0,len(charset)-1) # 随机整个区间
    str_response+=charset[index]
  print str_response
  return str_response


# 提取出pacp文件中的所有包,改写path字段然后写入新的pcap,tcp流都会保存
list_a = []
if __name__ == '__main__':
  count = 0      #用来记载重复生成样本数据
  port = 0
  packeges = scapy.rdpcap('/home/seen/桌面/http.pcap')
  while(count!=1):
    #带有混淆的攻击流量
    for p in packeges:       #重新拷贝流的时候需要给端口修改啥的,这里还没做
      temp = p
      if temp.haslayer("HTTPRequest"):
        temp["HTTPRequest"].Path = string_change(temp["HTTPRequest"].Path)
        list_a.append(temp)
      else:
        list_a.append(temp)
    count = count + 1
  scapy.wrpcap('/home/seen/桌面/test_1to0.pcap',list_a)


以上这篇python 读取修改pcap包的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python 叠加等边三角形的绘制的实现

    python 叠加等边三角形的绘制的实现

    这篇文章主要介绍了python 叠加等边三角形的绘制的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Django配合python进行requests请求的问题及解决方法

    Django配合python进行requests请求的问题及解决方法

    Python作为目前比较流行的编程语言,他内置的Django框架就是一个很好的网络框架,可以被用来搭建后端,和前端进行交互,那么我们现在来学习一下,如何用Python本地进行requests请求,并通过请求让Django帮我们解决一些问题
    2022-06-06
  • Python人脸检测实战之疲劳检测

    Python人脸检测实战之疲劳检测

    本文主要介绍了实现疲劳检测:如果眼睛已经闭上了一段时间,我们会认为他们开始打瞌睡并发出警报来唤醒他们并引起他们的注意。感兴趣的朋友可以了解一下
    2021-12-12
  • python交互模式下输入换行/输入多行命令的方法

    python交互模式下输入换行/输入多行命令的方法

    这篇文章主要介绍了python交互模式下输入换行/输入多行命令的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • Python中Numpy和Matplotlib的基本使用指南

    Python中Numpy和Matplotlib的基本使用指南

    numpy库处理的最基础数据类型是由同种元素构成的多维数组(ndarray),而matplotlib 是提供数据绘图功能的第三方库,其pyplot子库主要用于实现各种数据展示图形的绘制,这篇文章主要给大家介绍了关于Python中Numpy和Matplotlib的基本使用指南,需要的朋友可以参考下
    2021-11-11
  • python如何遍历指定路径下所有文件(按按照时间区间检索)

    python如何遍历指定路径下所有文件(按按照时间区间检索)

    这篇文章主要给大家介绍了关于python如何遍历指定路径下所有文件(按按照时间区间检索)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Python Playwright的使用详解

    Python Playwright的使用详解

    本篇博客为大家介绍一款新的自动化测试工具,效果类似 selenium,但是这个模块年轻。模块名称为 playwright-python,微软开源的,是针对 Python 语言的纯自动化工具,感兴趣的可以了解一下
    2022-10-10
  • Matplotlib实战之柱状图绘制详解

    Matplotlib实战之柱状图绘制详解

    柱状图,是一种使用矩形条,对不同类别进行数值比较的统计图表,这篇文章主要为大家详细介绍了如何使用Matplotlib绘制柱状图,需要的可以参考下
    2023-08-08
  • Python开发WebService系列教程之REST,web.py,eurasia,Django

    Python开发WebService系列教程之REST,web.py,eurasia,Django

    对于今天的WebService开发,我们至少有两种选择:SOAP/WSDL/UDDI系列的; REST风格架构系列的 !!!
    2014-06-06
  • python操作oracle的完整教程分享

    python操作oracle的完整教程分享

    下面小编就为大家分享一篇python操作oracle的完整教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧,祝大家游戏愉快哦
    2018-01-01

最新评论