问题标签 [pcap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
610 浏览

c - pcap_compile 的输出的可移植性如何?

pcap_compile()将字符串编译成bpf_program结构形式的过滤程序。理论上,我可以保存程序的编译形式并将其提供pcap_setfilter()给不同的网络接口,甚至是不同的机器。

那会奏效吗?表单是否bpf_program可跨不同界面移植?不同的流程?不同的架构?或者每次我想使用它时编译表达式是最安全的吗?

基于存在,pcap_open_dead()我认为它有点可移植,但是文档中的任何地方似乎都没有说明什么是安全的,什么不是。

0 投票
4 回答
17976 浏览

network-programming - 如何在 NIC 上发送 pcap 文件数据包?

我有一些网络流量捕获 pcap 文件,并想在 NIC 上发送它的数据包;是否可以?有没有应用程序可以做到这一点?

0 投票
4 回答
1543 浏览

c# - 哪种数据包捕获格式更好?

我正在编写一个应用程序来将捕获的 IP 数据包保存到文件中。以下哪种数据包捕获格式更适合用作文件格式?单击链接以获取有关每个的更多信息。

此外,是否有任何上述格式的 C# 库?

0 投票
1 回答
426 浏览

ruby - 为什么 ruby​​ 的 (ver 1.9) pcap gem 在访问后挂起?

使用 ruby​​ 1.9 和 latest gem install pcap+ fix 进行编译(将->ptr/转换->len_PTR/ _LEN),我发现在做了简单的代码之后:

Pcap gem 不离开 block cap.each,即输出:

并且进程只能被kill -s KILL <process_id>.
有没有什么办法解决这一问题?

PS 1.dmp 文件使用tcpdump -w 1.dmp.

0 投票
4 回答
2295 浏览

c - 解压缩 gzip 后的 HTTP 消息

我正在使用 C 分析 Pcap 捕获,我需要解压缩 HTTP 回复的 Gzipped 正文。我知道我可以手动使用 Wireshark 来做到这一点,但我需要在我的程序中即时进行。

我的理解是我应该研究 zlib 和 RFC。但既然它是一个小分析程序,你知道我在哪里可以找到一个快速的解决方案吗?

谢谢

0 投票
8 回答
49390 浏览

python - 如何使用 python 通过特定协议过滤 pcap 文件?

我有一些 pcap 文件,我想按协议过滤,即,如果我想按 HTTP 协议过滤,除了 HTTP 数据包之外的任何内容都将保留在 pcap 文件中。

有一个名为openDPI的工具,它非常适合我的需要,但是没有 python 语言的包装器。

有谁知道任何可以做我需要的python模块?

谢谢

编辑1:

HTTP 过滤只是一个例子,我想过滤很多协议。

编辑2:

我试过 Scapy,但我不知道如何正确过滤。该过滤器只接受 Berkeley Packet Filter 表达式,即我不能应用 msn、HTTP 或来自上层的其他特定过滤器。谁能帮我?

0 投票
1 回答
6572 浏览

c - 如何使用 pcap_breakloop?

我在另一个函数中有一个 pcap_loop 函数,它捕获数据包直到用户停止它,即

是否可以设置捕获数据包的持续时间?就像是:

但我不知道把它放在哪里,因为到目前为止我看到的所有示例都在信号处理程序中使用 pcap_breakloop,这需要用户干预。pcap_loop 运行时如何检查时间条件?

谢谢你。

问候,雷恩

0 投票
3 回答
7369 浏览

wireshark - 有没有办法使用 Wireshark 的工具以编程方式导出文件?

我正在尝试自动化我使用 WireShark 的重复手动过程:

1) 加载给定的 pcap 文件

2) 为给定协议应用一个简单的过滤器

3) 使用导出对话框将显示的数据包导出为 CSV 文件

4) 使用导出对话框以 XML PDML 格式导出显示的数据包。

这很乏味,并且需要人工参与大部分自动化的流程(包括分析文件以生成报告)。

有没有办法自动化 Wireshark,或者以某种方式访问​​用于导出的底层库?

更新:正如这里的几个人所指出的,TShark 原来是要走的路。我最终使用的确切命令行是:

然后我使用基于事件的 XML 解析器(Python 的 expat)来解析生成的 2GB 文件

0 投票
3 回答
615 浏览

c - IP头的分解

我必须做一个嗅探器作为安全课程的作业。我正在使用 C 和 pcap 库。我让一切运行良好(因为我从互联网上获得了代码并进行了更改)。但我对代码有一些疑问。

ih类型为ip_header,并且它当前指向数据包中的 IP 标头。
ver_ihl给出 IP 的版本。
我不知道是什么:& 0xf) * 4;

0 投票
1 回答
1923 浏览

c - 打印嗅探数据包的序列号

我正在使用 pcap 创建数据包嗅探器。
我有这个 tcp 结构:

如何打印序列号?
我应该使用 htons(sequence_number) 吗?因为它不是这样工作的!

我的另一个问题是变量声明后的数字是多少?
tcph_hlen:4 中的 4 是什么意思