tcp - 如何重组 tcpdump 看到的特定设备 IP 的 IP 分段数据包
问题描述
在混杂模式下,使用 tcpdump(Wireshark 帮助查看 Hex 格式的数据包),我可以查看请求的不同数据包(不完整有意义的数据),并获得连接到 WiFi 路由器的不同设备。
但是,我如何重新组装特定设备 IP 的所有数据包,以获得该设备请求和获得的有意义的数据?
是否有任何现有的解决方案可用?
解决方案
正如 David Hoelzer 所建议的,您首先需要确保启用 TCP 重组。很可能已经存在,但您可以通过"Edit -> Preferences -> Protocols -> TCP -> Allow subdissector to reassemble TCP streams"来验证这一点。如果发生 IP 分段,您还应该验证 IP 重组是否已启用:"Edit -> Preferences -> Protocols -> IPv4|IPv6 -> Reassemble fragmented IPv4|IPv6 datagrams"。
但这不是全部,因为这不会为您提取完整的文件(对象)。Wireshark 确实支持通过“文件 -> 导出对象”功能提取某些协议的对象,特别是 DICOM、HTTP、IMF、SMB 和 TFTP。因此,如果您的文件是通过其中一种协议传输的,那么您很幸运并且有机会使用 Wireshark 提取它;否则,您将不得不找到除 Wireshark 之外的另一个能够从数据包中提取对象的工具。
有关导出对象的更多详细信息,请参阅https://www.wireshark.org/docs/wsug_html_chunked/ChIOExportSection.html#ChIOExportObjectsDialog。
如果 Wireshark 无法满足您的需求,请参阅https://wiki.wireshark.org/Tools了解您可能感兴趣的其他可能工具。
推荐阅读
- reactjs - 映射 useState 动态对象
- python - 更新颜色条/颜色轴位置 - Plotly Python
- ms-access - 使用 Visual Basic 的 3 合 1 表
- java - 如何根据 Spring Boot 中的活动配置文件加载自定义属性文件
- php - 无法通过 PHP 使用 REST API 在 GitLab 中创建用户(错误:401 未授权)
- python - 我想通过 embed at ban 命令发送消息 (Discord.py)
- java - 如何在 Keycloak 用户存储提供程序中更改自定义用户属性的值后更新外部存储
- spring-boot - 如何在springboot应用程序中使用JSF任务表单部署流程
- javascript - 当所有值都为空时,Lodash sumBy 返回空
- javascript - 在 html 中使用 javascript 显示当前日期