V2EX 4小时前
[分享创造] 一个开箱即用的 HTTPS 流量明文分析 Linux 工具
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文介绍了一个创新的Linux工具,它能够捕获启动进程的HTTPS流量,而无需手动安装根证书。该工具的核心原理是利用隔离的命名空间、自定义DNS解析以及将HTTPS请求转发至内置的443端口服务。为确保证书验证通过,工具会在首次运行时自动生成并信任一个自签名证书,且该操作仅限于进程的命名空间,不影响系统全局。此外,该工具还支持开启HTTP镜像,方便Wireshark用户实时预览HTTPS流量,即使未安装证书密钥。该工具的代码开发过程得到了Claude Code和Gemini CLI的协助,作者在其中扮演了提供想法、测试和反馈的关键角色。

🥷 **无缝捕获HTTPS流量**:该Linux工具的核心在于其无需手动安装根证书即可捕获HTTPS流量的能力。它通过创建一个隔离的命名空间,并利用自定义DNS服务器解析域名,将HTTPS请求重定向到工具内置的443端口,从而实现了对进程HTTPS流量的透明捕获。

🔒 **自动化证书信任机制**:为了解决HTTPS流量的证书验证问题,该工具在首次运行时会自动生成一个自签名证书,并将其添加到隔离命名空间内的系统信任证书列表中。这一过程仅限于特定进程的命名空间,避免了对整个系统的污染,确保了捕获过程的安全性与便捷性。

🌐 **实时流量预览功能**:为了提升用户体验,该工具还提供了一个HTTP镜像功能。这使得Wireshark用户即使没有安装相应的证书密钥,也能通过捕获HTTP镜像的流量来实时预览HTTPS流量,大大简化了流量分析的工作流程。

👨‍💻 **AI辅助开发与协作**:该工具的代码开发过程大量运用了AI工具,如Claude Code进行代码生成,以及Gemini CLI进行调试。作者在整个开发过程中扮演了核心角色,负责提供创意、进行测试、给出反馈并进行修正,体现了人机协作在技术创新中的重要作用。

我创建了一个无需手动安装根证书即可捕获用它启动的进程的 HTTPS 流量的 Linux 工具。

原理是通过创建一个隔离的命名文件空间,挂载 /etc/resolv.conf 相关的 DNS 配置文件,使用一个自定义的 DNS 服务器来解析域名,让 HTTPS 请求转发到这个工具内置的 443 端口的服务上去。为了通过启动的进程的证书验证,这个工具在首次运行时会自动生成一个自签名证书,并将其挂载到隔离空间的系统的受信任证书列表中,整个过程只影响进程的命名空间,对系统无污染。后面就是传统的 MITM 流程了。

为了方便让 Wireshark 不安装证书密钥也能实时预览 HTTPS 流量,还可以通过这个工具开启一个 HTTP 镜像,这样 Wireshark 只要捕获到这个 HTTP 镜像的流量就能实时预览 HTTPS 流量。

另外,代码基本都是通过 Claude Code 开发的,期间也用 gemini cli debug 了一下,我的主要角色是提供想法、测试、反馈、修正。

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

HTTPS流量捕获 Linux工具 AI辅助开发 网络安全 流量分析
相关文章