十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

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

Defender Control:如何彻底禁用并完整恢复 Windows Defender

Defender Control:如何彻底禁用并完整恢复 Windows Defender Defender Control如何彻底禁用并完整恢复 Windows Defender【免费下载链接】defender-controlAn open-source windows defender manager. Now you can disable windows defender permanently.项目地址: https://gitcode.com/gh_mirrors/de/defender-control最反直觉的一点在 Windows 安全中心里关掉实时保护重启后它会自动恢复而你下载一个禁用器Defender 会在你下载完的瞬间把它隔离。Defender Control 就是针对这个死循环的开源工具——它把 Defender 的驱动程序和引擎二进制重命名掉让引擎在下次开机时根本无法启动同时把每一步改动写入清单文件保证可以完整还原。动手前必读适用人群与回滚方案适用完全受控环境虚拟机、沙箱下的性能测试、兼容性测试、安全研究想研究 Defender 如何自我保护和被还原的人。不适用需要日常上网、会运行不可信文件的普通机器——禁用后系统没有本地实时防护没有做还原点或快照就动手的人。前置条件按顺序执行创建系统还原点或虚拟机快照。在 Windows 安全中心 → 病毒和威胁防护 → 管理设置中手动关闭篡改保护。暂时关闭实时保护防止下载的 exe 被即时隔离。以管理员身份运行工具工具会自行以 TrustedInstaller 重启自己无需手动处理令牌。警告篡改保护必须手动关闭。这个键在引擎运行期间受内核守护任何注册表写入——包括以 TrustedInstaller 身份进行的写入——都会被静默回滚。源码注释里明确写着这是 best-effort 操作。 如果你跳过这步直接运行控制台会打印*** WARNING: Tamper Protection appears to be ENABLED ***此时先回安全中心关掉篡改保护再重新运行而不是反复重试。警告整个流程期间系统处于无本地防护状态若中途断电或操作被中断可能停在驱动已重命名但未登记完整的状态。 如果出错立即运行enable-defender.exe回滚它按清单把 .OLD 文件还原回去或直接恢复还原点/快照。原理拆解它凭什么能永久禁用把 Defender 想象成一栋楼的安防体系WdFilter.sys是总电闸文件过滤驱动负责实时监视WdBoot.sys是比大楼开门还早到岗的清晨巡更员ELAM 早期加载驱动MsMpEng.exe是驻场保安扫描引擎。传统方法——改组策略、停服务——相当于把保安的工牌剪掉。系统重启时会重新发牌所以禁用不持久。Defender Control 的做法是换掉人事档案把保安的名字从花名册上改掉他第二天根本进不了门。两个关键机制一是拿到 TrustedInstaller 身份。TrustedInstaller 是 Windows 安装系统模块时使用的服务账户权限高于管理员且默认拥有系统文件的文件所有权普通账户连改个文件名都做不到。工具不直接偷令牌而是借用任务计划程序——任务计划程序服务本身以 SYSTEM 运行可以替任意系统账户拉起进程——由它代之以 TI 账户启动工作进程拿到干净的初始令牌见 src/defender-control/trusted.cpp 中的run_as_ti_scheduled另保留了一条令牌克隆的备用路径。二是软删除而非删除。删除受保护文件会触发系统还原逻辑而重命名为.OLD不会。重命名后清单文件先落盘保证断电可恢复再逐个执行若文件正被运行中的引擎锁定则登记为下次重启时重命名// dcontrol.cpprename 前先接管文件所有权 reg::file_take_ownership(src.c_str()); if (MoveFileExW(src, dst, MOVEFILE_REPLACE_EXISTING)) return true; // 被运行中进程锁定登记为下次重启时生效 if (MoveFileExW(src, dst, MOVEFILE_REPLACE_EXISTING | MOVEFILE_DELAY_UNTIL_REBOOT)) return true;驱动文件一旦缺失ELAM 早期保护无法启动受保护引擎自然起不来——这就是不需要进安全模式的原因。清单保存在%ProgramData%\defender-control\soft-deleted.txt刻意放在 Defender 目录之外避免被清理波及。除了核心驱动工具按层覆盖其余防护恢复时按镜像顺序逐项还原防护层禁用手段恢复手段实时保护驱动重命名 服务 Start 改为 4禁用 组策略文件名还原 Start 恢复为 0/2/3篡改保护写TamperProtection4best-effort写回5并删除 Source 覆盖值安全中心 UIUILockdown锁定各页面、隐藏托盘图标删除锁定策略键SmartScreen / AMSI / VBS组策略与注册表逐项关闭逐项还原防火墙仅改注册表策略保留 MpsSvc 服务运行WSL、Docker、商店继续可用策略值还原进程自恢复杀进程 IFEO Debugger 劫持 DisallowRun 策略删除劫持与策略实操三阶段首次配置、日常使用、验证生效阶段一首次配置一次性。如果你直接使用 release 里的disable-defender.exe/enable-defender.exe跳过编译即可。注意官方二进制带HackTool:Win32/DefenderControl特征——这是 Defender 对一切禁用器的类别性检测不代表代码有恶意但确实意味着文件会被即时隔离。想避开它就自行编译源码开放可自行审计git clone https://gitcode.com/gh_mirrors/de/defender-control cd defender-control # Visual Studio 2022 打开 .slnRelease/x64 # 在 settings.hpp 中把 DEFENDER_CONFIG 设为 DEFENDER_DISABLE 或 DEFENDER_ENABLE分别编译出禁用/恢复两个 exe阶段二日常使用。禁用和恢复各是一条命令都以管理员身份运行disable-defender.exe 禁用自动以 TrustedInstaller 重启自身等待任务完成 enable-defender.exe 恢复按清单还原文件、清除策略与 UI 锁定、设置 WinDefend 自动启动禁用后建议重启一次内存中的引擎进程受 PPL 保护无法被杀死重命名只阻止下一次启动重启才让禁用完整生效。恢复同理重启后WinDefend才会以自动启动身份回归。阶段三验证生效。禁用后安全中心界面本身被锁定不能再作为判断依据用终端检查disable-defender.exe -c 检查当前 Defender 状态 disable-defender.exe -c -s 静默模式跳过结尾 pause适合脚本检查报告包含 WMI 实时状态AntivirusEnabled、RealTimeProtectionEnabled、IsTamperProtected、MsMpEng.exe是否在运行、WinDefend服务的 Start 值以及一行结论性 Verdict如DISABLED (service stopped and set to disabled)。前后对比如何量化禁用了资源类数字CPU、内存、磁盘 I/O随负载、硬件差异极大本仓库没有跑过标准化基准因此下表只列可复现的判定项全部来自工具-c报告与系统可查状态判定项禁用前禁用后重启完成检查方式MsMpEng.exe进程常驻运行全机扫描时 CPU 可达两位数百分比视负载不存在-cMsMpEng.exe running: noWinDefend服务 Start 值2自动4禁用-cWinDefend service Start实时保护WMIRealTimeProtectionEnabled: YESno-c篡改保护ONoff若篡改保护未手动关闭可能仍为 ON见踩坑清单-cWMI 状态查询正常返回可能报 WMI status unavailableprovider 已被禁用常是生效信号-c安全中心界面功能完整各页被锁定手动Defender 来源的后台磁盘 I/O持续存在无资源监视器观察定性非基准进阶扩展源码结构与二次开发切入点模块路径职责入口与参数解析src/defender-control/main.cpp-c/-s/-worker/-tilog处理TI 重启与回退逻辑禁用/恢复核心src/defender-control/dcontrol.cpp全部注册表策略、服务、进程与软删除操作权限获取src/defender-control/trusted.cpp任务计划程序 RunEx首选与令牌克隆备用两种 TI 启动器注册表/文件src/defender-control/reg.cpp键值读写、文件所有权接管与还原WMI 查询src/defender-control/wmic.cppMSFT_MpComputerStatus等类编译开关src/defender-control/settings.hppDEFENDER_CONFIG选DEFENDER_DISABLE/DEFENDER_ENABLE二次开发切入点build_target_list()dcontrol.cpp维护要软删除哪些文件的清单想覆盖新平台路径或增减目标在这里改。set_group_policies()所有组策略键值的唯一写入口增删策略在此成对实现禁用写、恢复删。report_status()想让自己的禁用方式也能被体检就在这里加检查项。trusted::run_as_ti_scheduled()想换成别的提权方案只需保证返回一个以 TI 身份运行的工作进程。踩坑清单现象日志里刷failed to write to TamperProtection、kernel-locked、error 5。原因引擎运行期间内核守护这些键任何身份的写入都被静默回滚源码注释将其标注为 expected。解决不用处理——真正起作用的禁用动作是驱动重命名重启后生效。以-c报告为准若重启后仍显示 ACTIVE回到动手前必读检查篡改保护是否真的关掉了。现象下载的 exe 刚落地就被隔离或运行前弹窗告警。原因Defender 官方特征库带该工具签名HackTool:Win32/DefenderControl类别性命中。解决下载前临时关闭实时保护或自行编译源码版本并核对哈希只运行自己构建的二进制。现象禁用工具跑完MsMpEng还在任务管理器里。原因引擎进程受 PPL 保护无法当场杀死重命名只拦截下一次启动。解决重启。重启后MsMpEng.exe不应再出现出现-c报告异常时检查%SystemRoot%\System32\drivers下WdFilter.sys、WdBoot.sys是否已变为.OLD。现象跑完enable-defender.exe并重启后Defender 仍然起不来。原因恢复循环中途被打断残留了错误策略、错误的服务 Start 值或缺失的服务键。解决enable 二进制本身带离线修复重建缺失的MpDefenderCoreService键、恢复 WdBoot ELAM 组、把 WinDefend 设回自动启动先完整跑一遍仍无效则在管理员终端执行DISM /Online /Cleanup-Image /RestoreHealth与sfc /scannow后重启最后手段是保留文件和应用的就地修复升级。现象-c输出WMI status unavailable被误判为工具报错。原因Defender 的 WMI provider 本身已被禁用属于禁用生效的侧面证据。解决交叉核对报告中的MsMpEng进程与WinDefendStart 值即可不必单独修复 WMI。收尾Defender Control 把禁用 Defender从一场和系统自愈机制的拉锯战变成一次有清单、可回滚的文件级操作能关得掉也关得回。先建还原点或快照再运行任何一条命令。把-c报告当作唯一事实来源每次禁用和恢复之后都验证一次 Verdict。需求结束立刻恢复防护并确认 Verdict 回到 ACTIVE 再离开这台机器。【免费下载链接】defender-controlAn open-source windows defender manager. Now you can disable windows defender permanently.项目地址: https://gitcode.com/gh_mirrors/de/defender-control创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表