【无标题】

从 Fiddler 提示 "system proxy was changed" 开始:一次 Windows 进程、服务与代理排查实战

很多人第一次用 Fiddler 抓包时,都会遇到一个经典问题:

复制代码
the system proxy was changed

刚开始我以为只是 Fiddler 的普通提示,但后来发现:

  • 系统代理被反复修改
  • 某个进程一直自动重启
  • 明明杀掉了进程,却还能自己恢复

最后一路排查,定位到了:

复制代码
ECAgent.exe(EasyConnect)

这篇文章就用这次经历,完整总结一下:

  • Windows 中"进程 / 服务 / 详细信息"的区别
  • 如何定位是谁在修改系统代理
  • 为什么有些进程"杀不掉"
  • 如何找到"是谁在托管这个进程"
  • 正确关闭一个会自动恢复的进程

一、问题起点:Fiddler 一直提示代理被修改

当时打开 Fiddler 后,不断弹出:

复制代码
the system proxy was changed

意思其实很简单:

复制代码
系统代理设置被其他程序改了

因为 Fiddler 工作原理是:

复制代码
浏览器
   ↓
系统代理(127.0.0.1:8888)
   ↓
Fiddler
   ↓
真实网站

也就是说:

👉 Fiddler 必须"接管系统代理"才能抓包。

所以当有别的软件也在改代理时,就会冲突。


二、第一步:如何定位"是谁在改代理"

这里我用到了微软官方工具:

Process Monitor(ProcMon)

它可以监控:

  • 注册表
  • 文件
  • 进程
  • 网络行为

非常适合查:

复制代码
是谁在修改系统代理

三、ProcMon 排查步骤

1. 打开 ProcMon

运行:

复制代码
Procmon.exe

第一次会出现大量滚动日志。


2. 清空日志

点击:

复制代码
Clear(橡皮擦)

避免历史信息干扰。


3. 设置过滤条件

核心过滤:

复制代码
Path contains Internet Settings

以及:

复制代码
Operation is RegSetValue

含义:

复制代码
监控谁在修改系统代理相关注册表

四、找到元凶:ECAgent.exe

很快日志中出现:

复制代码
ECAgent.exe

它在不断修改:

复制代码
ProxyServer
ProxyEnable
Internet Settings

到这里就能确认:

👉 是它在抢系统代理。


五、什么是 ECAgent.exe

后来发现:

复制代码
ECAgent.exe = EasyConnect(深信服)

即使我已经没有在使用 EasyConnect:

  • 它依然常驻后台
  • 自动修改系统代理
  • 并且无法直接结束

于是我想要直接杀掉ECAgent进程,可是发现每次杀掉进程之后其一下子又起来了。根本杀不掉


六、为什么"杀掉进程"没用

这里就涉及 Windows 一个很重要的概念:

进程 ≠ 服务

很多人会混淆:

  • 任务管理器中的"进程"
  • "详细信息"
  • "服务"

其实它们不是一回事。


七、Windows 中三者的区别

1. 进程(Processes)

任务管理器第一页看到的:

复制代码
Chrome
微信
QQ
Fiddler

属于:

复制代码
简化后的运行程序列表

更偏"用户视角"。


2. 详细信息(Details)

这里才是真正的:

复制代码
所有运行中的 exe

包括:

  • chrome.exe
  • ECAgent.exe
  • svchost.exe

每个都有:

  • PID
  • CPU
  • 内存

这是查问题最核心的位置。


3. 服务(Services)

services.msc 中看到的:

复制代码
Sangfor
Windows Update
DHCP Client

它们本质是:

复制代码
系统级后台守护程序

负责:

  • 自动启动
  • 长期运行
  • 拉起子进程

八、为什么 ECAgent.exe 杀不掉

真正结构其实是:

复制代码
Sangfor Service(服务)
      ↓
启动 ECAgent.exe(进程)
      ↓
监控 ECAgent 是否存在
      ↓
如果被杀 → 自动重启

所以:

复制代码
你杀的是"进程"
但真正控制它的是"服务"

九、正确关闭方法

最开始我只是:

复制代码
taskkill /F /IM ECAgent.exe

结果:

复制代码
几秒后自动恢复

原因就是:

👉 Sangfor 服务还在。


十、正确的处理顺序

正确流程应该是:

复制代码
1. 停止服务
2. 禁用服务
3. 再结束进程

具体步骤

1. 打开服务管理器

复制代码
Win + R
services.msc

找到:

复制代码
Sangfor
EasyConnect
ECAgent

2. 停止服务(找到对应的服务,右键鼠标转到服务选线)

右键:

复制代码
停止(Stop)

3. 禁用自动启动

属性 → 启动类型:

复制代码
禁用 / 手动

4. 再结束进程

此时再:

复制代码
taskkill /F /IM ECAgent.exe

进程就不会复活了。


十一、如果还是会自动恢复怎么办

说明还有:

  • 计划任务(Task Scheduler)
  • 开机启动项
  • watchdog 守护程序

继续检查:

复制代码
taskschd.msc

以及:

复制代码
任务管理器 → 启动应用

十二、这次最大的收获

这次最大的认知变化是:

以前:

复制代码
"杀掉进程" = 关闭程序

后来才发现:

复制代码
很多进程只是"服务托管的执行体"

真正控制它们的:

是后台服务。


十三、以后遇到类似问题的万能排查流程

以后再遇到:

  • 代理被改
  • 杀不掉进程
  • 软件自动恢复
  • Fiddler 冲突
  • VPN 抢代理

我会按下面流程排查:


Step 1:先找是谁在修改系统

工具:

  • ProcMon

重点看:

复制代码
RegSetValue
Internet Settings
ProxyServer

Step 2:找到进程

定位:

复制代码
PID
exe 名称

Step 3:判断是否有服务托管

检查:

复制代码
services.msc

Step 4:检查计划任务

复制代码
taskschd.msc

Step 5:按正确顺序关闭

复制代码
服务
↓
计划任务
↓
启动项
↓
进程
相关推荐
瑞雪兆丰年兮1 小时前
[从0开始学Java|第二十五天]项目阶段(综合练习&斗地主小游戏)
java·windows
ylscode2 小时前
Chrome桌面安全更新修复数百个漏洞
网络·windows·安全·安全威胁分析
思麟呀2 小时前
C++11并发编程:条件变量
java·linux·jvm·c++·windows
Full Stack Developme2 小时前
Hutool CollUtil 教程
java·开发语言·windows·python
ideal-cs3 小时前
总结:Windows/Mac电脑,安装ClaudeCode + DeepSeekV4Pro
windows·macos·claude code·安装claude code·deepseek v4 pro
嘿嘻哈呀3 小时前
Mac 如何通过 SSH 控制同一 Wi-Fi 下的 Windows 电脑
windows·ssh·mac·局域网·openssh
light blue bird3 小时前
3C 数码电子BOM 协同工作台组件
java·开发语言·jvm·windows·.net·桌面端
云服务器租用费用15 小时前
2026年腾讯云OpenClaw(Clawdbot)+Skills云上部署及Windows本地集成轻松入门
运维·服务器·数据库·windows·云计算·腾讯云
烛之武16 小时前
Python速通笔记
windows·python
牛奶咖啡1316 小时前
windows系统中安装配置命令行工具——psping
windows·psping·psping与ping对比·下载安装配置psping·psping的核心功能与用法·psping参数