【免费下载链接】horusAn OSINT / digital forensics tool built in Python项目地址https://gitcode.com/gh_mirrors/hor/horus点击查看免费下载Horus 是一款用 Python 编写的 OSINT开源网络情报与数字取证工具其中的 falcon 模块是一个网络数据包分析器。它能借助 pyshark 库在终端里实时抓包或读取已有抓包文件自动识别并解析 HTTP、DNS、TCP、UDP 等协议把原始数据帧整理成可读的源IP→目的IP、端口、协议、HTTP 请求/响应、DNS 查询名等关键信息。对于新手来说无需打开图形化 Wireshark 窗口直接在命令行就能看到网络通信的骨架是入门网络分析的一个很好的实践入口。为什么需要 falcon 数据包分析器很多初学者一提到抓包就会想到 Wireshark但它界面元素繁多、信息量大容易看花眼。falcon 模块把最核心的字段提取出来用简洁的彩色前缀打印在终端里让你快速回答几个问题这个包里有没有HTTP 请求访问的是哪个 Host、哪个 URI有没有DNS 查询在解析哪个域名这是一条TCP 还是 UDP流量源端口和目的端口分别是什么它的源码非常短小核心逻辑集中在 src/modules/falcon.py读一遍就能搞懂从抓包到解析的完整链路非常适合当作学习材料。falcon 的两种使用模式进入 falcon 后程序会先让你二选一源码见 src/modules/falcon.py实时抓包Sniff选择(1)然后依次输入网卡接口interface例如eth0可选的 BPF 过滤器bpf_filter不想过滤直接回车要抓取的数据包数量 程序会调用pyshark.LiveCapture在真实网卡上抓包抓到指定数量后再逐包分析。读取抓包文件Capture file选择(2)输入一个.pcap/.pcapng抓包文件路径可选一个显示过滤器display filter。程序会用pyshark.FileCapture打开文件离线解析适合复盘之前保存的流量。 小提示实时抓包通常需要root权限或给 Python 授予 CAP_NET_RAW 权限并且需要系统安装好 Tsharkpyshark 的底层依赖。它到底解析了哪些字段falcon 用了一个analysis函数逐包输出信息见 src/modules/falcon.py每个数据包会打印字段说明Protocol协议数据包最高层协议如 HTTP、DNS、TCPLength长度数据包包长字节Time时间抓包时间戳Source / Destination IP源 IP 与目的 IPSource / Destination Port源端口与目的端口TCP FlagsTCP 标志位SYN、ACK 等HTTP Host / DNS Query NameHTTP 主机名 / DNS 查询域名Info详情由get_packet_info生成的协议级摘要其中详情的提取逻辑在 get_packet_info 函数它按协议类型分别处理HTTP若是请求提取request_method、host、request_uri并附带上User-Agent、Content-Type若是响应提取response_code和response_phrase。DNS若有查询名则打印qry_name若是 A 记录响应则打印解析到的a地址。TCP / UDP打印源端口 - 目的端口。其他回退为最高层协议 packet的通用描述。这种先判断协议、再按需取字段、取不到就回退的写法是处理网络数据包时很实用的健壮性技巧——不同包结构差异很大代码必须能优雅地兜底。如何启动 falcon 模块Horus 提供了两种进入 falcon 的方式命令行参数在 Horus 目录执行python3 horus.py -falcon入口逻辑在 horus.py。菜单交互运行主程序后在命令菜单中输入falcon主菜单会分发到 falcon 模块逻辑见 src/main.py。在菜单页里falcon 被归类在FORENSICS取证区描述为Packet analysis; sniff for your own in the terminal or use a capture file!数据包分析在终端自行抓包或使用抓包文件你可以在 src/utils.py 的命令清单里看到它。依赖说明pyshark 从哪来falcon 模块唯一的关键第三方依赖是pyshark在 requirements.txt 中固定为pyshark0.6。pyshark 本质上是 Tshark 的 Python 封装把抓包结果封装成一个个packet 对象你用属性访问如packet.http.host就能拿到字段而不是去手写解析二进制。这也正是它能轻松判断有没有 HTTP有没有 DNS的原因。小结新手能学到什么从零理解一次抓包接口、BPF 过滤器、包数量三个参数就构成了一个最小可运行的抓包器。协议判定的健壮写法先用if HTTP in packet判断协议存在再用hasattr检查字段最后给出回退值避免字段不存在导致的报错。命令行工具的清晰输出借助 src/utils.py 里的彩色前缀函数把成功/提示/询问分层展示可读性更好。falcon 模块代码量不大、结构清晰是 Python 网络编程和数字取证方向的一个很好的入门案例。建议你先把 src/modules/falcon.py 通读一遍再动手抓几个包对照输出逐行验证每个字段是怎么来的理解会更深。延伸阅读主程序入口horus.py命令菜单与分发src/main.py模块源码src/modules/falcon.py依赖清单requirements.txt赞分享【免费下载链接】horusAn OSINT / digital forensics tool built in Python项目地址https://gitcode.com/gh_mirrors/hor/horus点击查看免费下载相关推荐PyShark终极指南10分钟掌握Python网络数据包分析利器PyShark终极指南10分钟掌握Python网络数据包分析利器 PyShark是一个强大的Python库它封装了Wireshark的tshark工具让开网络安全网络通信【亲测免费】 探索网络数据包分析的新利器PyShark探索网络数据包分析的新利器PyShark 在网络分析的世界中数据包的解析是理解网络行为的关键。今天我们要介绍的是一款强大的开源工具——PyShark它为网络安全网络通信Umi-OCR 离线OCR新手指南从下载到第一次批量跑通Umi OCR 离线OCR新手指南从下载到第一次批量跑通 开篇速览 Umi OCR 是一款免费、开源的离线文字识别OCR工具能把截图、图片、PDF 里的桌面应用OCR计算机视觉上一篇Rerun Angle 数据类型详解弧度制角度编码的底层实现与实战用法下一篇Home Assistant 中使用 isy994.send_program_command 控制 ISY 程序完整配置指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考