Skip to content

A comprehensive, step-by-step penetration testing checklist for ethical hackers. Covers pre-engagement, information gathering, analysis, exploitation, reporting, and more. Ideal for both beginners and pros.

License

iAnonymous3000/awesome-pentest-checklist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Penetration Testing Checklist

Overview

A comprehensive guide for ethical penetration testing, meticulously designed to cover all phases of a penetration test. This step-by-step checklist ensures thorough coverage from preparation to reporting, ideal for both novice and experienced testers.

Table of Contents

  1. Pre-Engagement
  2. Information Gathering
  3. Vulnerability Analysis
  4. Exploitation
  5. Post-Exploitation
  6. Reporting
  7. Remediation Verification

1. Pre-Engagement

  • Secure Non-Disclosure Agreement (NDA).
  • Collect comprehensive client and system information.
  • Define the scope and rules of engagement clearly.
  • Obtain formal, written authorization for testing.
  • Conduct a detailed risk assessment.
  • Ensure legal compliance for all testing activities.
  • Set specific, measurable success criteria.
  • Establish emergency contact and response protocols.
  • Define data handling and storage protocols.
  • Agree on communication channels and reporting frequency with the client.
  • Ensure the penetration testing team has the necessary skills and certifications.

2. Information Gathering

  • Conduct network and application scans (e.g., Nmap, Nessus).
  • Perform web crawling for hidden or dynamic content.
  • Identify and enumerate all subdomains.
  • Search for common vulnerabilities (e.g., default credentials, unpatched systems).
  • Pinpoint potential initial access points.
  • Assess opportunities and methods for social engineering.
  • Execute a comprehensive DNS analysis.
  • Undertake passive information gathering (e.g., Shodan, Censys).
  • Utilize Open Source Intelligence (OSINT) techniques.
  • Perform Google dorking to find potentially sensitive information.
  • Check for information leakage via metadata, HTML comments, etc.

3. Vulnerability Analysis

  • Validate and prioritize findings from scans.
  • Test for known vulnerabilities and possible exploits.
  • Analyze applications for common flaws (SQLi, XSS, etc.).
  • Conduct fuzz testing to discover new vulnerabilities.
  • Review server and application configurations for misconfigurations.
  • Perform manual code reviews where feasible.
  • Examine third-party components and libraries.
  • Evaluate the security of wireless and cloud services.
  • Assess authentication and authorization mechanisms.
  • Test for insecure direct object references (IDOR).
  • Check for sensitive data exposure (e.g., in URLs, API responses).
  • Analyze mobile app binaries if in scope.

4. Exploitation

  • Attempt to gain initial access (e.g., through phishing, exploiting known vulnerabilities).
  • Perform privilege escalation on compromised systems.
  • Explore lateral movements within the network.
  • Document each step of the exploitation process meticulously.
  • Simulate Advanced Persistent Threat (APT) techniques where authorized.
  • Attempt to bypass security controls like WAF, 2FA etc.
  • Test for common misconfigurations (e.g., verbose error messages, directory listing).

5. Post-Exploitation

  • Identify and access critical data stores.
  • Simulate data exfiltration, if within the agreed scope.
  • Implement strategies for maintaining access, if necessary.
  • Adhere to secure data handling and processing procedures.
  • Document all system alterations comprehensively.
  • Check for clear-text credentials and sensitive data in memory.
  • Analyze the potential impact of identified vulnerabilities.

6. Reporting

  • Create a detailed report documenting tools, techniques, and procedures used.
  • Include evidence such as screenshots and logs.
  • Provide clear, actionable remediation recommendations.
  • Assign risk ratings to all identified vulnerabilities.
  • Prepare an executive summary for stakeholder review.
  • Suggest a timeline for follow-up assessments or retesting.
  • Conduct a read-out meeting with the client to discuss key findings.
  • Provide a technical report as well as an executive summary.

7. Remediation Verification

  • Allow a designated period for the client to remediate identified issues.
  • Conduct retests to verify the effectiveness of fixes.
  • Document any unresolved security issues.
  • Recommend strategies for ongoing monitoring and improvement.
  • Advise on the need for security awareness and training programs.
  • Propose a schedule for regular future security audits.
  • Provide guidance on implementing a vulnerability management program.
  • Discuss strategies to improve the security development lifecycle.

Contributing

We welcome and value contributions. Please feel free to submit pull requests or issues for improvements.

About

A comprehensive, step-by-step penetration testing checklist for ethical hackers. Covers pre-engagement, information gathering, analysis, exploitation, reporting, and more. Ideal for both beginners and pros.

Topics

Resources

License

Stars

Watchers

Forks