implementing-attack-surface-management
Implements external attack surface management (EASM) using Shodan, Censys, and ProjectDiscovery tools (subfinder, httpx, nuclei) for asset discovery…
Skill by pinkpixel-dev
Chalk Labs
Need help deploying implementing-attack-surface-management?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/pinkpixel-dev-implementing-attack-surface-management
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: security
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/implementing-attack-surface-management
What's inside
- Skill name
implementing-attack-surface-management- Description
- Implements external attack surface management (EASM) using Shodan, Censys, and ProjectDiscovery tools (subfinder, httpx, nuclei) for asset discovery, subdomain enumeration, service fingerprinting, and exposure scoring. Includes a weighted risk scoring algorithm based on OWASP attack surface analysis methodology and the Relative Attack Surface Quotient (RSQ). Use when building continuous ASM programs or performing external reconnaissance for security assessments.
- License
- Apache-2.0
- Instructions
- 196 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (4)
- LICENSE
- SKILL.md
- asm-reference.md · references/
- agent.py · scripts/
SKILL.md (first lines)
# Implementing Attack Surface Management
## When to Use
- When building an external attack surface management (EASM) program from scratch
- When performing authorized external reconnaissance for penetration testing engagements
- When continuously monitoring organizational exposure across internet-facing assets
- When scoring and prioritizing external attack surface risks for remediation
- When integrating multiple discovery tools into an automated ASM pipeline
## Prerequisites
- Python 3.8+ with requests, shodan, censys libraries installed
- Shodan API key (free tier provides 100 queries/month)
- Censys API ID and Secret (free tier available)
- ProjectDiscovery tools installed: subfinder, httpx, nuclei
- Go 1.21+ for building ProjectDiscovery tools from source
- Appropriate authorization for all external scanning activities
- Target domains and IP ranges with written scope documentation
## Instructions
### Phase 1: Subdomain Enumeration with Multiple Sources
Use subfinder for passive subdomain discovery leveraging dozens of data sources
including certificate transparency logs, DNS datasets, and search engines.
```bash
# Install ProjectDiscovery tools
go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest
go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest
# Basic subdomain enumeration
subfinder -d example.com -o subdomains.txt
# Verbose with all sources and recursive enumeration
subfinder -d example.com -all -recursive -o subdomains_full.txt
# Multi-domain enumeration from file
subfinder -dL domains.txt -o all_subdomains.txt
# Using OWASP Amass for deeper enumeration
amass enum -d example.com -passive -o amass_subdomains.txt
# Merge and deduplicate results
cat subdomains.txt amass_subdomains.txt | sort -u > combined_subdomains.txt
```
### Phase 2: Live Host Discovery and Service Fingerprinting
Probe discovered subdomains to identify live hosts, technologies, and services.
```bash
# HTTP probing with technology detection
cat combined_subdomains.txt | httpx -sc -cl -ct -title -tech-detect \
-follow-redirects -json -o httpx_results.json
# Detailed service fingerprinting
cat combined_subdomains.txt | httpx -sc -cl -ct -title -tech-detect \
-favicon -hash sha256 -jarm -cdn -cname \
-follow-redirects -json -o httpx_detailed.json
```
### Phase 3: Shodan Asset Discovery
Query Shodan for exposed services, open ports, and known vulnerabilities
associated with discovered assets.
```python
import shodan
api = shodan.Shodan("YOUR_SHODAN_API_KEY")
# Search by organization
results = api.search("org:\"Example Corp\"")
for service in results["matches"]:
print(f"{service['ip_str']}:{service['port']} - {service.get('product', 'unknown')}")
if service.get("vulns"):
for cve in service["vulns"]:
print(f" CVE: {cve}")
# Search by hostname
results = api.search("hostname:example.com")
# Search by SSL certificate
results = api.search("ssl.cert.subject.cn:example.com")
# Get host details with all services
host = api.host("93.184.216.34")
print(f"IP: {host['ip_str']}")
print(f"Ports: {host['ports']}")
print(f"Vulns: {host.get('vulns', [])}")
```
### Phase 4: Censys Asset Discovery
Use Censys to discover internet-facing assets through certificate and host search.
```python
from censys.search import CensysHosts, CensysCerts
# Host search
hosts = CensysHosts()
query = hosts.search("services.tls.certificates.leaf.subject.common_name: example.com")
for page in query:
for host in page:
print(f"IP: {host['ip']}")
for service in host.get("services", []):
print(f" Port: {service['port']} Protocol: {service['transport_protocol']}")
print(f" Service: {service.get('service_name', 'unknown')}")
# Certificate transparency search
certs = CensysCerts()
query = certs.search("parsed.names: example.com")
for page in query:
for cert in page:
print(f"Fingerprint: {cert['fingerprint_sha256']}")
print(f"Names: {cert.get('parsed', {}).get('names', [])}")From pinkpixel-dev/skills-collection-2, Apache-2.0.
More from pinkpixel-dev/skills-collection-2
- 0.459score
implementing-application-whitelisting-with-applocker
pinkpixel-dev
Implements application whitelisting using Windows AppLocker to restrict unauthorized software execution on endpoints, reducing attack surface from malware…
SkillDFreshness: D★ 4Claude Code +9 - 0.459score
implementing-alert-fatigue-reduction
pinkpixel-dev
Implements strategies to reduce SOC alert fatigue by tuning detection rules, consolidating duplicate alerts, implementing risk-based alerting, and measuring…
SkillDFreshness: D★ 4Claude Code +9 - 0.459score
implementing-aws-nitro-enclave-security
pinkpixel-dev
Implements AWS Nitro Enclave-based confidential computing environments with cryptographic attestation, KMS policy integration using PCR-based condition keys…
SkillDFreshness: D★ 4Claude Code +9 - 0.456score
implementing-aes-encryption-for-data-at-rest
pinkpixel-dev
AES (Advanced Encryption Standard) is a symmetric block cipher standardized by NIST (FIPS 197) used to protect classified and sensitive data.
SkillDFreshness: D★ 4Claude Code +9 - 0.456score
implementing-aws-config-rules-for-compliance
pinkpixel-dev
Implementing AWS Config rules for continuous compliance monitoring of AWS resources, deploying managed and custom rules aligned to CIS and PCI DSS frameworks…
SkillDFreshness: D★ 4Claude Code +9 - 0.456score
implementing-aws-iam-permission-boundaries
pinkpixel-dev
Configure IAM permission boundaries in AWS to delegate role creation to developers while enforcing maximum privilege limits set by the security team.
SkillDFreshness: D★ 4Claude Code +9 - 0.456score
implementing-aws-macie-for-data-classification
pinkpixel-dev
Implement Amazon Macie to automatically discover, classify, and protect sensitive data in S3 buckets using machine learning and pattern matching for PII…
SkillDFreshness: D★ 4Claude Code +9 - 0.456score
implementing-attack-path-analysis-with-xm-cyber
pinkpixel-dev
Deploy XM Cyber's continuous exposure management platform to map attack paths, identify choke points, and prioritize the 2% of exposures that threaten…
SkillDFreshness: D★ 4Claude Code +9 - 0.456score
implementing-anti-phishing-training-program
pinkpixel-dev
Security awareness training is the human layer of phishing defense.
SkillDFreshness: D★ 4Claude Code +9 - 0.456score
implementing-aqua-security-for-container-scanning
pinkpixel-dev
Deploy Aqua Security's Trivy scanner to detect vulnerabilities, misconfigurations, secrets, and license issues in container images across CI/CD pipelines and…
SkillDFreshness: D★ 4Claude Code +9 - 0.455score
implementing-anti-ransomware-group-policy
pinkpixel-dev
Configures Windows Group Policy Objects (GPO) to prevent ransomware execution and limit its spread.
SkillDFreshness: D★ 4Claude Code +9
Signals
- Stars
- 4
- Forks
- 4
- Open issues
- 0
- Last commit (this folder)
- Mar 29, 2026 (7 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from pinkpixel-dev
- 0.534score
adhd
pinkpixel-dev
Parallel divergent ideation for coding agents.
SkillCFreshness: C★ 9Claude Code +9 - 0.470score
3d-web-experience
pinkpixel-dev
You bring the third dimension to the web.
SkillDFreshness: D★ 9Claude Code +9 - 0.459score
implementing-alert-fatigue-reduction
pinkpixel-dev
Implements strategies to reduce SOC alert fatigue by tuning detection rules, consolidating duplicate alerts, implementing risk-based alerting, and measuring…
SkillDFreshness: D★ 4Claude Code +9 - 0.459score
implementing-aws-nitro-enclave-security
pinkpixel-dev
Implements AWS Nitro Enclave-based confidential computing environments with cryptographic attestation, KMS policy integration using PCR-based condition keys…
SkillDFreshness: D★ 4Claude Code +9 - 0.459score
implementing-application-whitelisting-with-applocker
pinkpixel-dev
Implements application whitelisting using Windows AppLocker to restrict unauthorized software execution on endpoints, reducing attack surface from malware…
SkillDFreshness: D★ 4Claude Code +9 - 0.456score
implementing-aes-encryption-for-data-at-rest
pinkpixel-dev
AES (Advanced Encryption Standard) is a symmetric block cipher standardized by NIST (FIPS 197) used to protect classified and sensitive data.
SkillDFreshness: D★ 4Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get implementing-attack-surface-management running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
implementing-attack-surface-management skill. Agent Mart. https://agentmart.dev/skills/pinkpixel-dev-implementing-attack-surface-management (last updated 2026-10-24)