DEV Community · Show DEV9/1 20:0162

用Go和eBPF构建无需代理的HTTPS流量检查工具

Inspect HTTPS Traffic Without a Proxy — Built with Go and eBPF

阅读原文
开发者用Go和eBPF构建了CLI工具tinytap,无需安装CA证书、无需代理或修改目标应用,即可读取HTTPS明文流量。其原理是使用uprobe挂钩libssl中的SSL_write函数,在数据加密前读取参数缓冲区,通过环形缓冲区传输到用户空间并显示。该工具仅能查看自己进程传给TLS库的明文,无法拦截网络上的其他流量。文章展示了捕获OpenAI API请求的示例,包括请求行、头部、Authorization令牌和JSON体。选择Go是因为cilium/ebpf库成熟。