ssl - 如何使用 socat 将传输的数据 fork 到脚本?

标签 ssl man-in-the-middle socat

我想用 socat 分析客户端和服务器之间传输的数据。我已经使用以下命令将 socat 设置为中间人:

socat -x -v OPENSSL-LISTEN:4443,reuseaddr,verify=0,cert=server.crt,key=server.key OPENSSL:server.example:443,verify=0

虽然我可以看到传输的数据,但我想将它发送到脚本进行处理以供以后分析。

有谁知道可以将每个传输的数据包发送到脚本的解决方案吗?

最佳答案

我找到了一个 solution that allows to log the transferred data into files using tee :

socat OPENSSL-LISTEN:4443,reuseaddr,verify=0,cert=server.crt,key=server.key,fork SYSTEM:'tee requests | socat - "OPENSSL:server.example:443,verify=0" | tee responses'

这离我要找的东西又近了一步。

关于ssl - 如何使用 socat 将传输的数据 fork 到脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16045046/

相关文章:

apache - 在 docker 中使用 https 的应用程序

security - SSL和中间人的误解

security - 中间人攻击和 SSL

python - 希望在 Python 中模拟 socat 的功能

windows - openssl s_server 和 gethostbyname 失败

Java:SSL 身份验证/SSL 调试问题

java - 如何在 SSL 配置的 tomcat 中缓存和更新 CRL(证书撤销列表)/OCSP 响应?

python - 将特定 URL 的正文响应保存到文件并使用 mitmproxy 对其进行解码

c++ - 无法使用 socat 写入打开 QSerialPort

ssl - 稍后如何将 socat tcp4 连接更改为 SSL 连接(使用 XMPP 协议(protocol))