在 Ubuntu 6.8 内核上,无法使用 --input-raw 来捕获回环流量 (lo/127.0.0.1)
作者: antonioribeiro创建于 2025年4月29日更新于 2025年4月29日
标签bug
** 黄金版本:** 1.3.0
** 环境:**
- ** 操作系统:** Ubuntu(运行6.8内核)
- ** Kernel 版本:** `6.8.0-52-基因#53-Ubuntu SMP PREEMPT DYNAMIC Sat 11 00:06:25 UTC 2025 x86 64'
- ** 建筑:**`x86 64' ***环境类型:**云VM(如: DigitalOcean,基于更早上下文).
** 说明问题:**
我们正在试图使用gor-input-raw'来捕捉我们服务器上通过回路接口(lo'/`127.0.0.1')流出的非加密HTTP流量。 具体来说,从Caddy代理到PHP-FPM的交通(根据TCP ' 127.0.0.1:9000 ' 的配置而成).
尽管确认流量 * 正确流于目标回回路端口和界面上,且基础的 “ libpcap” 库 * 可用其他工具回路回路抓取, `gor' 无法捕捉到任何数据包, 也没有创建指定的输出文件, 也没有在配置时打印任何要显示的文件 。
** 重现(在受影响的服务器环境中):**
- 确保PHP-FPM的配置可以收听回回路接口上的 " 127.0.0.1:900 " (TCP)。 (确认这一设置正在通过`lsof-i:9000 | grep listen'进行活动并监听)
- 在同一台机器上配置一个网络服务器(如Caddy),用于在`127.0.0.1:9000'上向PHP-FPM实例提出代理请求。
- 确保流量进入外部的网络服务器,从而成功地将请求代理到内部的 " 127.0.0.1:9000 " 。 (由凯迪访问日志证实,该日志显示PHP-FPM对PHP请求的HTTP 200状态回复, " telnet 127.0.0.1 9000 " 正在工作)。
- 运行`gor',瞄准回路地址和端口,输出到文件(或stdout):
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
使用文件输出的示例, 以 root 或 sudo 运行
sudo gor -- -- 输入-raw 127.0.0.1:9000 -- -- 输出-文件 /tmp/capture.gor -- -- 动词 9
(还尝试了“-输入-引出本地主机:9000”、“-输出-引出”、“去除`附录'以及针对用户的家和/var/log等不同目录)。
5. 在 " gor " 运行时向网络服务器发送请求。
6. 观察输出文件位置或 stdout.
** 受保护的行为:**
* `gor'开始并打印初始化信息(界面:`lo',BPF过滤器:`(tcp dst port 900)和(dst host 127.0.0.1或dst host *1))',第1.3.0版。
* `gor'进程成功启动并持续运行(`ps aux'确认`Sl+`'状态)。
* 此示例中指定的输出文件( " /tmp/capture.gor " ,或其他尝试目录中的文件) 从未创建** 。
* 在使用 " -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- " 时,不打印任何俘获数据。
* “gor”在执行期间或“Ctrl+C”上不打印出任何错误信息。
** 预期行为:**
`gor'应捕获回路接口上流入`127.0.0.1:9000'的TCP流量,并将所捕获的请求(从快取CGI流取出HTTP)写入指定的输出.
** 诊断结论(关键信息):**
1. ** PHP-FPM正在收听`127.0.0.1:9000':** 经确认
. . . . . . .内容来源: probelabs/goreplay