Files
Anthropic-Cybersecurity-Skills/skills/performing-red-team-phishing-with-gophish/SKILL.md
T
mukul975 27c6414ca5 Add folder anatomy (scripts/agent.py + references/api-reference.md) for 648 cybersecurity skills
Complete skill folder anatomy across all cybersecurity skills:
- scripts/agent.py: 80-150 line Python agents using real libraries (impacket,
  boto3, azure-mgmt-*, kubernetes, pefile, yara, scapy, shodan, stix2, etc.)
- references/api-reference.md: real API documentation with method signatures
- LICENSE: MIT license for all skill folders
2026-03-10 21:02:12 +01:00

39 lines
1.5 KiB
Markdown

---
name: performing-red-team-phishing-with-gophish
description: >-
Automate GoPhish phishing simulation campaigns using the Python gophish library. Creates email
templates with tracking pixels, configures SMTP sending profiles, builds target groups from
CSV, launches campaigns, and analyzes results including open rates, click rates, and credential
submission statistics for security awareness assessment.
---
## Instructions
1. Install dependencies: `pip install gophish requests`
2. Deploy GoPhish server and obtain an API key from Settings.
3. Use the Python gophish library to automate campaign setup:
- Create email templates with HTML body and tracking
- Configure SMTP sending profiles
- Import target groups from CSV
- Create landing pages for credential capture
- Launch and monitor campaigns
4. Analyze campaign results: opens, clicks, submitted data, reported.
```bash
# For authorized penetration testing and lab environments only
python scripts/agent.py --gophish-url https://localhost:3333 --api-key <key> --campaign-name "Q1 Awareness" --output phishing_report.json
```
## Examples
### Create Campaign via API
```python
from gophish import Gophish
from gophish.models import Campaign, Template, Group, SMTP, Page
api = Gophish("api_key", host="https://localhost:3333", verify=False)
campaign = Campaign(name="Q1 Test", groups=[Group(name="Sales Team")],
template=Template(name="IT Password Reset"), smtp=SMTP(name="Internal SMTP"),
page=Page(name="Credential Page"))
api.campaigns.post(campaign)
```