pentest-checklist by zebbern
This skill should be used when the user asks to "plan a penetration test", "create a security assessment checklist", "prepare for penetration testing", "define pentest scope", "follow security testing best practices", or needs a structured methodology for penetration testing engagements.
Security
3.0K Stars
263 Forks
Updated Jan 12, 2026, 12:44 AM
Why Use This
This skill provides specialized capabilities for zebbern's codebase.
Use Cases
- Developing new features in the zebbern repository
- Refactoring existing code to follow zebbern standards
- Understanding and working with zebbern's codebase structure
Skill Snapshot
Auto scan of skill assets. Informational only.
Valid SKILL.md
Checks against SKILL.md specification
Source & Community
Repository claude-code-guide
Skill Version
main
Community
3.0K 263
Updated At Jan 12, 2026, 12:44 AM
Skill Stats
SKILL.md 332 Lines
Total Files 1
Total Size 0 B
License NOASSERTION
--- name: Pentest Checklist description: This skill should be used when the user asks to "plan a penetration test", "create a security assessment checklist", "prepare for penetration testing", "define pentest scope", "follow security testing best practices", or needs a structured methodology for penetration testing engagements. --- # Pentest Checklist ## Purpose Provide a comprehensive checklist for planning, executing, and following up on penetration tests. Ensure thorough preparation, proper scoping, and effective remediation of discovered vulnerabilities. ## Inputs/Prerequisites - Clear business objectives for testing - Target environment information - Budget and timeline constraints - Stakeholder contacts and authorization - Legal agreements and scope documents ## Outputs/Deliverables - Defined pentest scope and objectives - Prepared testing environment - Security monitoring data - Vulnerability findings report - Remediation plan and verification ## Core Workflow ### Phase 1: Scope Definition #### Define Objectives - [ ] **Clarify testing purpose** - Determine goals (find vulnerabilities, compliance, customer assurance) - [ ] **Validate pentest necessity** - Ensure penetration test is the right solution - [ ] **Align outcomes with objectives** - Define success criteria **Reference Questions:** - Why are you doing this pentest? - What specific outcomes do you expect? - What will you do with the findings? #### Know Your Test Types | Type | Purpose | Scope | |------|---------|-------| | External Pentest | Assess external attack surface | Public-facing systems | | Internal Pentest | Assess insider threat risk | Internal network | | Web Application | Find application vulnerabilities | Specific applications | | Social Engineering | Test human security | Employees, processes | | Red Team | Full adversary simulation | Entire organization | #### Enumerate Likely Threats - [ ] **Identify high-risk areas** - Where could damage occur? - [ ] **Assess data sensitivity** - What data could be compromised? - [ ] **Review legacy systems** - Old systems often have vulnerabilities - [ ] **Map critical assets** - Prioritize testing targets #### Define Scope - [ ] **List in-scope systems** - IPs, domains, applications - [ ] **Define out-of-scope items** - Systems to avoid - [ ] **Set testing boundaries** - What techniques are allowed? - [ ] **Document exclusions** - Third-party systems, production data #### Budget Planning | Factor | Consideration | |--------|---------------| | Asset Value | Higher value = higher investment | | Complexity | More systems = more time | | Depth Required | Thorough testing costs more | | Reputation Value | Brand-name firms cost more | **Budget Reality Check:** - Cheap pentests often produce poor results - Align budget with asset criticality - Consider ongoing vs. one-time testing ### Phase 2: Environment Preparation #### Prepare Test Environment - [ ] **Production vs. staging decision** - Determine where to test - [ ] **Set testing limits** - No DoS on production - [ ] **Schedule testing window** - Minimize business impact - [ ] **Create test accounts** - Provide appropriate access levels **Environment Options:** ``` Production - Realistic but risky Staging - Safer but may differ from production Clone - Ideal but resource-intensive ``` #### Run Preliminary Scans - [ ] **Execute vulnerability scanners** - Find known issues first - [ ] **Fix obvious vulnerabilities** - Don't waste pentest time - [ ] **Document existing issues** - Share with testers **Common Pre-Scan Tools:** ```bash # Network vulnerability scan nmap -sV --script vuln TARGET # Web vulnerability scan nikto -h http://TARGET ``` #### Review Security Policy - [ ] **Verify compliance requirements** - GDPR, PCI-DSS, HIPAA - [ ] **Document data handling rules** - Sensitive data procedures - [ ] **Confirm legal authorization** - Get written permission #### Notify Hosting Provider - [ ] **Check provider policies** - What testing is allowed? - [ ] **Submit authorization requests** - AWS, Azure, GCP requirements - [ ] **Document approvals** - Keep records **Cloud Provider Policies:** - AWS: https://aws.amazon.com/security/penetration-testing/ - Azure: https://docs.microsoft.com/security/pentest - GCP: https://cloud.google.com/security/overview #### Freeze Developments - [ ] **Stop deployments during testing** - Maintain consistent environment - [ ] **Document current versions** - Record system states - [ ] **Avoid critical patches** - Unless security emergency ### Phase 3: Expertise Selection #### Find Qualified Pentesters - [ ] **Seek recommendations** - Ask trusted sources - [ ] **Verify credentials** - OSCP, GPEN, CEH, CREST - [ ] **Check references** - Talk to previous clients - [ ] **Match expertise to scope** - Web, network, mobile specialists **Evaluation Criteria:** | Factor | Questions to Ask | |--------|------------------| | Experience | Years in field, similar projects | | Methodology | OWASP, PTES, custom approach | | Reporting | Sample reports, detail level | | Communication | Availability, update frequency | #### Define Methodology - [ ] **Select testing standard** - PTES, OWASP, NIST - [ ] **Determine access level** - Black box, gray box, white box - [ ] **Agree on techniques** - Manual vs. automated testing - [ ] **Set communication schedule** - Updates and escalation **Testing Approaches:** | Type | Access Level | Simulates | |------|-------------|-----------| | Black Box | No information | External attacker | | Gray Box | Partial access | Insider with limited access | | White Box | Full access | Insider/detailed audit | #### Define Report Format - [ ] **Review sample reports** - Ensure quality meets needs - [ ] **Specify required sections** - Executive summary, technical details - [ ] **Request machine-readable output** - CSV, XML for tracking - [ ] **Agree on risk ratings** - CVSS, custom scale **Report Should Include:** - Executive summary for management - Technical findings with evidence - Risk ratings and prioritization - Remediation recommendations - Retesting guidance ### Phase 4: Monitoring #### Implement Security Monitoring - [ ] **Deploy IDS/IPS** - Intrusion detection systems - [ ] **Enable logging** - Comprehensive audit trails - [ ] **Configure SIEM** - Centralized log analysis - [ ] **Set up alerting** - Real-time notifications **Monitoring Tools:** ```bash # Check security logs tail -f /var/log/auth.log tail -f /var/log/apache2/access.log # Monitor network tcpdump -i eth0 -w capture.pcap ``` #### Configure Logging - [ ] **Centralize logs** - Aggregate from all systems - [ ] **Set retention periods** - Keep logs for analysis - [ ] **Enable detailed logging** - Application and system level - [ ] **Test log collection** - Verify all sources working **Key Logs to Monitor:** - Authentication events - Application errors - Network connections - File access - System changes #### Monitor Exception Tools - [ ] **Track error rates** - Unusual spikes indicate testing - [ ] **Brief operations team** - Distinguish testing from attacks - [ ] **Document baseline** - Normal vs. pentest activity #### Watch Security Tools - [ ] **Review IDS alerts** - Separate pentest from real attacks - [ ] **Monitor WAF logs** - Track blocked attempts - [ ] **Check endpoint protection** - Antivirus detections ### Phase 5: Remediation #### Ensure Backups - [ ] **Verify backup integrity** - Test restoration - [ ] **Document recovery procedures** - Know how to restore - [ ] **Separate backup access** - Protect from testing #### Reserve Remediation Time - [ ] **Allocate team availability** - Post-pentest analysis - [ ] **Schedule fix implementation** - Address findings - [ ] **Plan verification testing** - Confirm fixes work #### Patch During Testing Policy - [ ] **Generally avoid patching** - Maintain consistent environment - [ ] **Exception for critical issues** - Security emergencies only - [ ] **Communicate changes** - Inform pentesters of any changes #### Cleanup Procedure - [ ] **Remove test artifacts** - Backdoors, scripts, files - [ ] **Delete test accounts** - Remove pentester access - [ ] **Restore configurations** - Return to original state - [ ] **Verify cleanup complete** - Audit all changes #### Schedule Next Pentest - [ ] **Determine frequency** - Annual, quarterly, after changes - [ ] **Consider continuous testing** - Bug bounty, ongoing assessments - [ ] **Budget for future tests** - Plan ahead **Testing Frequency Factors:** - Release frequency - Regulatory requirements - Risk tolerance - Past findings severity ## Quick Reference ### Pre-Pentest Checklist ``` □ Scope defined and documented □ Authorization obtained □ Environment prepared □ Hosting provider notified □ Team briefed □ Monitoring enabled □ Backups verified ``` ### Post-Pentest Checklist ``` □ Report received and reviewed □ Findings prioritized □ Remediation assigned □ Fixes implemented □ Verification testing scheduled □ Environment cleaned up □ Next test scheduled ``` ## Constraints - Production testing carries inherent risks - Budget limitations affect thoroughness - Time constraints may limit coverage - Tester expertise varies significantly - Findings become stale quickly ## Examples ### Example 1: Quick Scope Definition ```markdown **Target:** Corporate web application (app.company.com) **Type:** Gray box web application pentest **Duration:** 5 business days **Excluded:** DoS testing, production database access **Access:** Standard user account provided ``` ### Example 2: Monitoring Setup ```bash # Enable comprehensive logging sudo systemctl restart rsyslog sudo systemctl restart auditd # Start packet capture tcpdump -i eth0 -w /tmp/pentest_capture.pcap & ``` ## Troubleshooting | Issue | Solution | |-------|----------| | Scope creep | Document and require change approval | | Testing impacts production | Schedule off-hours, use staging | | Findings disputed | Provide detailed evidence, retest | | Remediation delayed | Prioritize by risk, set deadlines | | Budget exceeded | Define clear scope, fixed-price contracts |
Name Size