TGTGInsighttelegram intelligenceLIVE / telegram public index
← V2EX
V2EX avatar

TGINSIGHT POST

Post #201748

@pushv2ex

V2EX

Views4帖子阅读量
发布4月16日2026/04/16 13:36
Post content

帖子内容

[问与答] 我被一个 heartbeat 刷屏了两天——追踪 v2ray 日志疯狂报警的真相 起因 某天打开 v2rayN ,发现日志以每秒 2 条的速度疯狂刷 Warning ,重要关键词: http://127.0.0.1:61242/heartbeat [Warning] [2007118945] app/proxyman/inbound: connection ends > proxy/http: connection ends > proxy/http: failed to write response > write tcp 127.0.0.1:10808->127.0.0.1:13356: wsasend: An established connection was aborted by the software in your host machine. 一个本地端口 61242,每秒被请求 2 次,每次都失败。日志文件几天就涨到几十 MB ,更要命的是——真正有用的代理日志全被淹没了。 这谁受得了?开查。 ——————文章来自 AI 总结,我觉得这次经验值得发出来。相信会有跟我一样遭遇的人。 ——————另外整个问题解决过程由龙虾辅助处理,虽然我使用 TCPVIEW 工具给它提供了很关键的信息。但检查分析工作都由它完成,真的太强了。 ---------------------- 第一轮:Chrome ? 用 netstat 一看,连向代理端口 10808 的进程中,Chrome 的 NetworkService 子进程连接数最多。Chrome 扩展里确实有 SwitchyOmega 代理插件。 结论: 关掉 Chrome 。结果——heartbeat 还在。❌ 第二轮:拼多多? netstat 发现 PID 4380 ( PddService ,拼多多商家版)有连接到代理。拼多多商家版也是 Electron 架构,前端渲染进程发 heartbeat 很正常。 结论: 退出拼多多。结果——heartbeat 还在。❌ 第三轮:360 ? 用 TCPVIEW 锁定:所有连向 61242 的连接来自 explorer.exe,状态 SYN_SENT。而 explorer.exe 里注入了一堆 360 安全卫士的 DLL (iNetSafe64.dll、safemon64.dll 等),这些 DLL 有网络监控能力。 结论: 卸载 360 。结果——heartbeat 还在。❌ 360 卸载后 DLL 仍残留在内存中,重启 explorer 也没用。线索断了。 ---------------------- 破案:一个二进制字符串搜索 既然进程确定是 explorer.exe,那问题一定出在注入到 explorer 的某个 Shell Extension DLL 上。 我列出了 explorer.exe 加载的所有第三方 DLL ,然后对每个 DLL 做了一个最原始的操作——搜索二进制里的字符串: $bytes = [System.IO.File]::ReadAllBytes($dll) $text = [System.Text.Encoding]::ASCII.GetString($bytes) $text -match 'heartbeat' # 搜心跳关键字 $text -match '61242' # 搜端口号 结果: 方正云( Fangcloud )。同时命中 heartbeat 和 61242。 再看看上下文,这个 DLL 里硬编码了一整套本地 API: http://127.0.0.1:61242/heartbeat http://127.0.0.1:61242/overlay_status http://127.0.0.1:61242/context_menu http://127.0.0.1:61242/remote_call 完整的真相浮出水面—— ---------------------- 完整链路 方正云 Shell Extension DLL (注入 explorer.exe ) → 每秒发 2 次 HTTP GET http://127.0.0.1:61242/heartbeat → 方正云客户端服务未启动,61242 端口无人监听 → 请求被系统代理转发到 v2ray ( 127.0.0.1:10808 ) → v2ray 尝试连 61242 ,失败,刷 Warning 日志 方正云安装了一个 Shell Extension (右键菜单集成、文件夹图标覆盖),这个 DLL 注入到 explorer.exe 后,以每秒 2 次的频率检测本地服务是否在线。即使你没有打开方正云客户端,只要 explorer.exe 在运行,心跳就不会停。 而一旦服务没启动( 61242 没人监听),请求就会走系统代理 → 经过 v2ray → 刷满你的日志。 ---------------------- 解决 1. 卸载方正云:E:\ProgramData\Fangcloud\uninst.exe 2. 重启电脑(释放注入的 DLL ) 3. 日志清净了 ✅ ---------------------- 经验总结 1. Electron/Chromium 应用关闭不等于进程退出,Chrome 关了还有子进程,拼多多退了还有后台服务。排查时要确认相关进程全部消失。 2. 卸载软件 ≠ DLL 释放,注入到 explorer.exe 的 Shell Extension 在卸载后仍留在内存中,必须重启 explorer 或重启电脑。 3. 最有效的排查手段往往最简单——在二进制文件里搜字符串。不要被复杂的网络抓包工具吓到,grep 二进制就能定位问题。 4. 本地请求不应该走代理。如果你的代理日志被本地流量刷屏,检查系统代理的"绕过列表"( ProxyOverride )是否正确配置了 127.* 和 localhost。不过在这个案例中,即使绕过列表正确,有些程序内部硬编码了代理地址,根本不走系统设置。 5. Shell Extension 是隐蔽的流量源。注入 explorer.exe 的第三方 DLL 拥有完整的网络能力,但很少被怀疑。以后遇到不明本地流量,优先排查 Shell Extension 。 ---------------------- 全文完。一个 1.6MB 的 DLL ,两天的排查。有时候最烦人的 bug ,藏在你最想不到的地方。