必须用process monitor精准捕获目标程序的createfile、readfile、writefile操作:先清空界面并开启捕获,关闭已运行的目标程序;再按进程名和三种文件操作设置双重过滤,必要时启用include subtree;复现动作后立即停止捕获,并保存为pml格式日志。

要精准定位某个程序在运行时偷偷读取或修改了哪些敏感配置文件、日志路径或用户数据,必须用Process Monitor把每一次CreateFile、ReadFile、WriteFile操作原样录下来,而不是靠猜测或事后翻目录。
启动前清空环境,避免日志被干扰
双击打开Procmon64.exe → 点击菜单栏【File】→【Clear Display】清空当前界面所有事件 → 再点击【File】→【Capture Events】确保左侧图标为红色(表示正在捕获)→ 【此时务必关闭目标程序,哪怕它只是后台常驻】。因为Procmon一启动就全局监听,若目标程序已在运行,它此前所有历史动作都会混进日志,导致关键操作被淹没在上万条无关记录里。
设置精准过滤,只留目标进程的文件行为
方法一:按进程名过滤
点击工具栏漏斗图标 → 弹出Filter窗口 → 左侧下拉选【Process Name】→ 中间选【is】→ 右侧输入框填入目标程序名(如notepad.exe、chrome.exe)→ 点击【Add】→ 再点【OK】。这一步做完后,界面只会显示该进程及其子进程触发的事件。
方法二:按操作类型聚焦文件读写
再次打开Filter → 新增一条规则 → 左侧选【Operation】→ 中间选【is】→ 右侧填入【CreateFile】→ Add;再新增一条 → 【Operation】→ 【is】→ 【ReadFile】→ Add;再加一条 → 【Operation】→ 【is】→ 【WriteFile】→ Add → 全部点【OK】。这样连注册表、网络、进程创建等其他事件全被屏蔽,只剩最关心的三类文件操作。
注意:如果目标程序会动态加载DLL或临时生成子进程,仅过滤主进程名可能漏掉关键行为,此时应配合【Include Subtree】功能右键目标进程→勾选【Include Subtree】,把整个进程家族都纳入监控范围。
复现问题并控制捕获节奏
第一步:确认过滤器已启用且Capture为开启状态
第二步:手动启动你要监控的目标程序(例如双击打开一个Excel文件)
第三步:执行你想观察的动作(比如点击“另存为”、导入CSV、修改单元格后Ctrl+S)
第四步:动作完成后立刻点击工具栏红色圆点按钮停止捕获 → 【不要等几秒再停,多录1秒就可能多出上千条无关CreateFile事件】
保存原始日志供后续分析
点击【File】→【Save】→ 文件类型选【PML (Process Monitor Log)】→ 保存为带时间戳的文件(如procmon_20261022_1735.pml)。PML格式保留全部字段(包括调用栈、权限位、线程ID),是唯一支持双击跳转、堆栈下钻和Result筛选的原始格式。CSV虽可Excel打开,但会丢失Detail字段中的Desired Access、ShareMode等关键权限信息,不建议用于深度排查。











