使用PYTHON解析Wireshark的PCAP文件
PYTHON首先要安装scapy模块
PY3的安装scapy-python3,使用PIP安装就好了,注意,PY3无法使用pyinstaller打包文件,PY2正常
PY2的安装scapy,比较麻烦
from scapy.all import *
pcaps = rdpcap("file.pcap")
pcaps便是解析后的类似结构体的东西了
<pre name="code" class="python">packet=pcaps[0] #第1个数据包结构
packet.time#数据包时间戳
packet[Raw].load#PY3读取节点数据方法,packet[IP].src;packet[IP].dst
packet['Raw'].load#PY2读取节点数据方法,PY3也应该可以
lambda="lambda pcap:IP in pcap and UDP in pcap and pcap[IP].src=='192.168.1.1' and pcap[UDP].sport==80"
results=pcaps.filter(eval(lambda))#lambda是一种表达式,这里使用字符串,也可以不用eval,直接写表达式,然后返回经过筛选的数据包
python解析数据包十分占用内存,建议先用tshark命令行预处理筛选一遍数据包再进行PYTHON处理
cmd_filter="%s && ip.src==%s && ip.dst==%s && %s.srcport==%s && %s.port==%s"% \
(Node['proto'].lower(),Node['src'],Node['dst'],Node['proto'].lower(),Node['sport'],Node['proto'].lower(),Node['dport']) os.system('start /WAIT "" "%s\tshark" -r "%s" -R "%s" -w "%s"'%(Wireshark_path,pcap_filename,cmd_filter,Temp_pcap_File))
然后在处理Temp_pcap_File文件就好了
使用PYTHON解析Wireshark的PCAP文件的更多相关文章
- 深入学习Python解析并解密PDF文件内容的方法
前面学习了解析PDF文档,并写入文档的知识,那篇文章的名字为深入学习Python解析并读取PDF文件内容的方法. 链接如下:https://www.cnblogs.com/wj-1314/p/9429 ...
- 深入学习python解析并读取PDF文件内容的方法
这篇文章主要学习了python解析并读取PDF文件内容的方法,包括对学习库的应用,python2.7和python3.6中python解析PDF文件内容库的更新,包括对pdfminer库的详细解释和应 ...
- python解析VOC的xml文件并转成自己需要的txt格式
在进行神经网络训练的时候,自己标注的数据集往往会有数据量不够大以及代表性不强等问题,因此我们会采用开源数据集作为训练,开源数据集往往具有特定的格式,如果我们想将开源数据集为我们所用的话,就需要对其格式 ...
- python cookbook第三版学习笔记七:python解析csv,json,xml文件
CSV文件读取: Csv文件格式如下:分别有2行三列. 访问代码如下: f=open(r'E:\py_prj\test.csv','rb') f_csv=csv.reader(f) for f in ...
- python dpkt 解析 pcap 文件
dpkt Tutorial #2: Parsing a PCAP File 原文链接:https://jon.oberheide.org/blog/2008/10/15/dpkt-tutorial-2 ...
- Python解析Pcap包类源码学习
0x1.前言 在现场取证遇到分析流量包的情况会比较少,虽然流量类设备原理是把数据都抓出来进行解析,很大一定程度上已经把人可以做的事情交给了机器自动完成. 可用于PCAP包分析的软件比如科来,W ...
- pcapng文件的python解析实例以及抓包补遗
为了弥补pcap文件的缺陷,让抓包文件可以容纳更多的信息,pcapng格式应运而生.关于它的介绍详见<PCAP Next Generation Dump File Format> 当前的w ...
- python构造wireshark可以解析的LTE空口数据
Wireshark是可以解析LTE的空口数据.但是在wireshark的实现中,这些数据都是被封装到UDP报文中.然后根据wireshark的格式文件对LTE的数据加上头信息.头信息的定义参考附件pa ...
- pcap文件生成metadata——使用tshark解析tcpdump的pcap包
pcap文件生成metadata #!/usr/bin/env python # -*- coding: utf-8 -*- import os import time, datetime impor ...
随机推荐
- 阿里云CentOS7部署MySql8.0
本文主要介绍了阿里云CentOS7如何安装MySql8.0,并对所踩的坑加以记录; 环境.工具.准备工作 服务器:阿里云CentOS 7.4.1708版本; 客户端:Windows 10; SFTP客 ...
- 最新学习springboot 配置注解
一.概述 Spring Boot设计目的是用来简化新Spring应用的初始搭建以及开发过程.Spring Boot并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式. ...
- swiper一组图片,点击图片出现中间,看效果
好兄弟先看看效果是这样的么 点击哪个头像,头像移动到中间,然后放大,demo上写了五条数据 废话不多说 直接上代码 1.引入swiper.css, swiper.js 2.HTML(小弟做的是移动端的 ...
- 遍历collection是否会出现重复遍历?
在处理一次线上问题时,需要遍历一张玩家信息表,看单个account是否存在多个entity.使用aid_playerid_dict建立aid到playerid的映射,遍历过程中,发现同一个aid会出现 ...
- PhpStorm 全局查找的快捷键
本页面查找 : ctrl + f 全局查找 : ctrl + shift + f 自己定义 :文件 -> 设置 -> 快捷键 -> 修改
- flex Datagrid checkbox
<?xml version="1.0" encoding="utf-8"?><!-- http://blog.flexexamples.com ...
- 用sudo 运行命令的时候,环境变量用的是super用户的环境变量
比如今天在~/.bashrc设置了JAVA_HOME, 而sudo运行命令的时候却显示没有设置可用的JAVA_HOME
- 每天一个linux命令(1):ln 命令
每天一个linux命令(35):ln 命令 ln 是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在 每一 ...
- [2016北京集训测试赛5]小Q与内存-[线段树的神秘操作]
Description Solution 哇真的异常服气..线段树都可以搞合并和拆分的啊orzorz.神的世界我不懂 Code #include<iostream> #include< ...
- 【SCOI2009】迷路
题面 题解 如果给我们的是一个邻接矩阵,那么直接给邻接矩阵\(T\)次幂即可. 这里的图有边权,那么我们就将它拆成\(9\)个点即可. 代码 #include<cstdio> #inclu ...