ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

永久禁用 Windows Defender:绕过篡改保护从根上关停它的 3 个关键步骤

永久禁用 Windows Defender:绕过篡改保护从根上关停它的 3 个关键步骤 永久禁用 Windows Defender绕过篡改保护从根上关停它的 3 个关键步骤【免费下载链接】defender-controlAn open-source windows defender manager. Now you can disable windows defender permanently.项目地址: https://gitcode.com/gh_mirrors/de/defender-controldefender-control 是一款开源的 Windows Defender 管理器专门解决关了又自动复活的循环它绕过普通管理员权限的限制从服务、驱动、注册表四个层面一次性把 Defender 永久关停也能凭一张恢复清单把它原样拉回来。下面从一次踩坑说起讲清楚它为什么比手动改注册表可靠以及实操中真正重要的 3 个关键步骤。一次编译产物被实时防护秒删之后编译了半小时的安装包刚落地Windows Defender 顺手就把它当成病毒隔离了打游戏打到关键团战后台扫描把 CPU 顶到 100%你明明在设置里关了实时防护一次系统更新后又满血复活。这三个场景只要中过一个你就知道和 Defender 的拉锯有多累人。defender-control 正是为终结这种拉锯而生它不管设置面板里的开关而是从更底层动手把禁用这个动作做成一件能撤销、能审计的完整流程。为什么手动改注册表总在重启后被打回原形很多人试过手动改DisableAntiSpyware这个注册表策略结果要么写入被拒要么重启后失效。原因有两个第一这些关键注册表项被**篡改保护Tamper Protection**罩着内核层直接拦截写入普通管理员权限根本进不去第二就算你侥幸写进去了Defender 的核心引擎进程还在跑下一次启动时它自己就能把策略纠正回来。defender-control 的破解思路是绕过而不是硬刚它先把自己提权成TrustedInstallerWindows 里比管理员更高一档的服务账户专门负责系统组件安装与修复再从驱动层面把引擎启动的必经之路堵死。这也解释了 README 里那句让人困惑的话运行时会输出failed to write to TamperProtection之类的报错但这些报错是预期内的因为工具根本不靠这些写入取胜。提权细节见src/defender-control/trusted.cpp。提权这关怎么过Task Scheduler RunEx 双保险提权是整套操作的地基。main.cpp的启动逻辑先检查是否已是管理员然后走一条主路径、一条备用路径主路径通过任务计划程序Task Scheduler的RunEx技术创建一个临时计划任务指定以NT SERVICE\TrustedInstaller账户运行得到干净的 TrustedInstaller 主令牌备用路径主路径不可用时退回到从正在运行的 TrustedInstaller 服务进程借用令牌的方式用CreateProcessWithTokenW拉起自己。因为计划任务运行在会话 0、没有控制台工具还做了日志重定向子进程把输出写进%ProgramData%\defender-control\last-run.log父进程结束后再回读打印所以你在终端里依然能看到完整过程。这个输出绕一圈再回来的设计在main.cpp里用-tilog参数串联起来是相当贴心的细节。从停服务到改驱动名禁用动作的四个落点拿到 TrustedInstaller 身份后禁用动作分四个落点推进核心逻辑见src/defender-control/dcontrol.cpp落点具体动作为什么有效停服务结束 MsMpEng、网络检查服务等核心进程先让引擎停止工作避免它中途干预改驱动名把 WdFilter.sys、WdBoot.sys 及引擎 exe/dll 重命名为.OLD重启后系统找不到驱动文件引擎根本起不来无需安全模式写策略写入 DisableAntiSpyware 等禁用策略从策略层宣告已禁用锁界面锁定安全中心界面、禁用通知防止系统或用户悄悄把一切恢复其中改驱动名是最关键的一步soft_delete_binaries()会动态解析引擎版本目录不写死版本号把驱动和二进制文件改名如果文件正被占用则用MoveFileEx的延迟标志把改名排到下次开机前执行。所有被改过的文件都会先登记进%ProgramData%\defender-control\soft-deleted.txt清单再动手改名即使中途断电恢复路径依然可靠。三步跑通关闭篡改保护后的实际操作动手前有 3 个关键步骤缺一步都可能前功尽弃打开Windows 安全中心 → 病毒和威胁防护 → 管理设置关闭篡改保护——它是内核层保护开着它任何工具都写不进关键项顺手把实时保护也临时关掉否则工具 exe 一出现就会被隔离以管理员身份运行disable-defender.exe。git clone https://gitcode.com/gh_mirrors/de/defender-control disable-defender.exe跑完后建议重启一次让改名动作彻底生效。工具自己会对篡改保护做一次 WMI 探测如果发现它仍处于开启状态会先打印警告再继续——它不是默认忽略而是把可能被内核拦截的事实摆给你看。安全中心被锁后用一条命令自检状态禁用之后安全中心界面是被锁定的想确认状态就得靠命令行。加-c或-check参数disable-defender.exe -c它会输出一份人类可读的报告实时防护、行为监控、篡改保护状态MsMpEng.exe是否在运行WinDefend服务当前启动类型最后给出一个整体结论DISABLED / PARTIALLY DISABLED / ACTIVE。想把这套检查写进脚本或定时任务再加-s跳过执行完的暂停等待。注意-c检查不需要提权可以直接跑。反悔有路按恢复清单一键还原恢复同样简单以管理员身份运行enable-defender.exe然后重启。它做的事情正好是禁用流程的镜像——按soft-deleted.txt清单把.OLD文件全部改回原名、删除策略与界面锁定项、恢复注册表项所有者、把WinDefend服务重新设为自动启动。万一极端情况下 Defender 怎么都回不来README 给出了兜底命令DISM /Online /Cleanup-Image /RestoreHealth sfc /scannow为什么防火墙服务被故意保留运行这是藏在dcontrol.cpp里一个值得注意的设计禁用操作把防火墙的注册表策略关掉了却有意让防火墙服务继续运行。原因很实际——Docker、WSL、winget 这些工具依赖防火墙服务提供的网络栈能力把服务一并杀掉你的容器和虚拟网络会跟着遭殃。关策略、留服务正是只关 Defender、不动其他系统能力的取舍体现。想只关一半或自己审计编译专属版本工具是彻底开源的源码就在src/defender-control/目录下。用 Visual Studio 2022 打开src/defender-control.sln在src/defender-control/settings.hpp里切换一行宏就能编译出不同倾向的版本#define DEFENDER_CONFIG DEFENDER_DISABLE // 编译出禁用版 #define DEFENDER_CONFIG DEFENDER_ENABLE // 编译出启用版选择 Release / x64 配置编译即可。想深入理解实现archive/research.md里保留了作者逆向分析同类工具的完整记录从注册表调用到权限获取的思路都有迹可循。动手前后的注意事项清单最后把要点收拢成一张清单动手前对照一遍更稳妥先关篡改保护再运行工具否则关键写入会被内核拦截首次运行会被 Defender 标记为HackTool:Win32/DefenderControl并隔离这是对所有禁用类工具的类目检测不代表代码不安全源码可自行审查禁用后安全中心界面会被锁定用-c定期确认系统状态恢复时先跑enable-defender.exe兜底再用 DISM 和 SFC在受信任的网络环境里操作重要数据先备份。选择权本就该在你自己手里需要性能时干净利落地关掉需要保护时原样恢复。克隆一份源码亲手跑一遍禁用、检查、恢复的完整闭环你就彻底告别和 Defender 的拉锯了。【免费下载链接】defender-controlAn open-source windows defender manager. Now you can disable windows defender permanently.项目地址: https://gitcode.com/gh_mirrors/de/defender-control创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表