📞
Contrxl
External Links
Theoretical Learning
Theoretical Learning
  • 🏡Home
  • 📰News & Information
  • Systems Administration
    • ⌨️Cisco
      • Networking Basics
        • Communication in a Connected World
        • Network Components, Types and Connections
        • Wireless and Mobile Networks
        • Home Networking Technologies
        • Communication Protocols
        • Network Media
        • The Access Layer
        • The Internet Protocol
        • IPv4 and Network Segmentation
    • 🎓Learning Links
    • 💻Microsoft
      • AZ-900
        • 1. Cloud Concepts
          • 1.1 Describe Cloud Computing
            • 1.1.1 Introduction - Cloud Computing
            • 1.1.2 What is Cloud Computing?
            • 1.1.3 The Shared Responsibility Model
            • 1.1.4 Define Cloud Models
            • 1.1.5 Define the Consumption based Model
            • 1.1.6 Summary - Cloud Computing
          • 1.2 Describe the Benefits of Cloud Services
            • 1.2.1 Introduction - Cloud Services
            • 1.2.2 Benefits of High Availability and Scalability
            • 1.2.3 Benefits of Reliability and Predictability
            • 1.2.4 Benefits of Security and Governance
            • 1.2.5 Manageability in the Cloud
            • 1.2.6 Summary - Cloud Services
          • 1.3 Describe Cloud Service Types
            • 1.3.1 Introduction - Cloud Service Types
            • 1.3.2 Describe Infrastructure as a Service
            • 1.3.3 Describe Platform as a Service
            • 1.3.4 Describe Software as a Service
            • 1.3.5 Summary - Cloud Service Types
        • 2. Architecture
          • 2.1 Core Architectural Components
            • 2.1.1 Introduction - Core Architectural Components
            • 2.1.2 What is Microsoft Azure
            • 2.1.3 Get Started with Azure Accounts
            • 2.1.4 Explore the Learn Sandbox
            • 2.1.5 Describe Azure Physical Infrastructure
            • 2.1.6 Describe Azure Management Infrastructure
            • 2.1.7 Create an Azure Resource
            • 2.1.8 Summary
          • 2.2 Compute and Networking
            • 2.2.1 Introduction - Compute and Networking
            • 2.2.2 Describe Azure VMs
            • 2.2.3 Create an Azure VM
            • 2.2.4 Describe Azure Virtual Desktop
            • 2.2.5 Describe Azure Containers
            • 2.2.6 Describe Azure Functions
            • 2.2.7 Describe Application Hosting Options
            • 2.2.8 Describe Azure Virtual Networking
            • 2.2.9 Configure Network Access
            • 2.2.10 Describe Azure VPNs
            • 2.2.11 Describe Azure ExpressRoute
            • 2.2.12 Describe Azure DNS
            • 2.2.13 Summary - Compute and Networking
          • 2.3 Azure Storage Services
            • 2.3.1 Introduction - Storage Services
            • 2.3.2 Describe Azure Storage Accounts
            • 2.3.3 Describe Azure Storage Redundancy
            • 2.3.4 Describe Azure Storage Services
            • 2.3.5 Create a Storage Blob
            • 2.3.6 Identify Azure Data Migration Options
            • 2.3.7 Identify Azure File Movement Options
            • 2.3.8 Summary - Storage Services
        • 3. Management and Governance
          • 3.1 Cost Management
            • 3.1.1 Introduction - Cost Management
            • 3.1.2 Describe Factors that can Affect Costs in Azure
            • 3.1.3 Compare Pricing and TCO Calculators
            • 3.1.4 Estimate Workload Costs
            • 3.1.5 Compare Workload Costs with TCO
            • 3.1.6 Describe the Microsoft Cost Management Tool
            • 3.1.7 Describe the Purpose of Tags
            • 3.1.8 Summary - Cost Management
          • 3.2 Governance and Compliance
            • 3.2.1 Introduction - Compliance and Governance
            • 3.2.2 Describe the Purpose of Microsoft Purview
            • 3.2.3 Describe the Purpose of Azure Policy
            • 3.2.4 Describe the Purpose of Resource Locks
            • 3.2.5 Configure a Resource Lock
            • 3.2.6 Describe the Purpose of the Service Trust Portal
            • 3.2.7 Summary - Compliance and Governance
          • 3.3 Tools for Managing Azure Resources
            • 3.3.1 Introduction - Tools for Managing Azure Resources
            • 3.3.2 Describe Tools for Interacting with Azure
            • 3.3.3 Describe the Purpose of Azure Arc
            • 3.3.4 Describe ARM and Azure ARM Templates
            • 3.3.5 Summary - Tools for Managing Azure Resources
          • 3.4 Monitoring Tools
            • 3.4.1 Introduction - Monitoring Tools
            • 3.4.2 Describe the Purpose of Azure Advisor
            • 3.4.3 Describe Azure Service Health
            • 3.4.4 Describe Azure Monitor
    • 📘Microsoft Portal Links
  • Cybersecurity
    • ❓Anonymity Tools
    • 💡OSINT
      • IP & Domain OSINT
      • Email & Username OSINT
      • Vulnerability OSINT
    • 📚Projects
      • ‼️A Simulation Study of DDoS
  • 🦈Hacking
    • ☁️Cloud Attack Vectors
      • Credential Harvesting
      • Privilege Escalation
      • Account Takeover
      • Metadata Service Attacks
      • Misconfigured Cloud Assets
      • Resource Exhaustion and DoS
      • Cloud Malware Injection Attacks
      • Side-Channel Attacks
    • Maintaining Persistence
      • Reverse and Bind Shells
      • Command and Control (C2) Utilities
      • Scheduled Jobs, Tasks and Custom Daemons
    • 💻Network-Based Vulnerabilities
      • Windows Name Resolution and SMB
      • DNS Cache Poisoning
      • SNMP
      • SMTP
      • FTP
      • Pass-the-Hash
      • Kerberos and LDAP-Based Attacks
      • On-Path
      • Route Manipulation
      • DoS and DDoS
      • NAC Bypass
      • VLAN Hopping
      • DHCP Starvation/Rogue DHCP Server
    • Pivoting
      • Post-Exploitation Scanning
      • Legitimate Utilities and LotL
      • Privilege Escalation
    • Specialised System Vulnerabilities
      • Mobile Devices
      • Internet of Things Devices
      • Virtual Machines
      • Containerised Workloads
    • ⚒️Tools
      • Burp Suite
        • Repeater
        • Intruder
        • Other Modules
      • GoPhish
      • Hydra
      • John the Ripper
      • Metasploit
        • Exploitation
        • Meterpreter
      • NMAP
      • Wireshark
    • 🖥️TryHackMe
      • Complete Beginner
        • 1. Complete Beginner Intro
        • 2. Linux Fundamentals
        • 3. Introductory Networking
        • 3.1 Network Exploitation Basics
        • 4. OWASP Top 10 Exploits
        • 5. Upload Vulnerabilities
        • 5.1 An Example Methodology
        • 6. Cryptography - Hashing
        • 7. Cryptography - Encryption
        • 8. Active Directory Basics
        • 9. What the Shell?
        • 10. Linux Privesc
        • 11. More Linux Privesc
      • Jr Penetration Tester
        • Walking an Application
        • Content Discovery
        • Subdomain Enumeration
        • Authentication Bypass
        • IDOR
        • File Inclusion
        • SSRF
        • XSS (Cross-site Scripting)
        • Command Injection
        • SQL Injection
        • Passive Reconnaissance
        • Active Reconnaissance
        • Protocols and Servers
        • Protocol and Server Attacks
        • Vulnerabilities
        • Exploiting Vulnerabilities
        • Linux Privilege Escalation
        • Windows Privilege Escalation
      • CompTIA Pentest+
        • Planning and Scoping
          • Pentesting Fundamentals
          • Red Team Engagements
          • Governance and Regulation
        • Tools and Code Analysis
          • Metasploit: Introduction
          • Wireshark: The Basics
          • Burp Suite: The Basics
          • Hydra
          • Python Basics
        • Attacks and Exploits
          • Phishing
          • Windows Local Persistence
          • Breaching Active Directory
          • Lateral Movement & Pivoting
    • Web Application Vulnerabilities
      • The HTTP Protocol
      • Business Logic Flaws
      • Injection-Based Vulnerabilities
      • Authentication-Based Vulnerabilities
      • Authorisation-Based Vulnerabilities
      • Cross-Site Scripting (XSS)
      • Cross-Site Request Forgery (CSRF/XSRF) and Server-Side Request Forgery (SSRF)
      • Clickjacking
      • Security Misconfigurations
      • File Inclusion Vulnerabilities
      • Insecure Coding Practices
    • Wireless Vulnerabilities
      • Rogue Access Point/Evil Twin
      • Disassociation/Deauthentication
      • Preferred Network List Attack
      • Wireless Signal Jamming
      • War Driving
      • Initialization Vector (IV) and Insecure Wireless Protocol
      • KARMA
      • Fragmentation Attacks
      • Credential Harvesting
      • Bluejacking and Bluesnarfing
      • RFID Attacks
Powered by GitBook
On this page
  1. Hacking
  2. TryHackMe
  3. CompTIA Pentest+
  4. Planning and Scoping

Pentesting Fundamentals

Ethics and methodologies behind a pentest.

Last updated 4 months ago

What is Penetration Testing?

Cybersecurity is relevant to all people in the modern world. A penetration test (pentest) is an ethically driven attempt to test and analyse security defences to protect assets and information. A pentest involves using the same tools, techniques and methodologies that someone with malicious intent would use and is similar to an audit.

Penetration Testing Ethics

Labels like "hacking" and "hacker" tend to hold negative connotations, the idea of legally gaining access to a computer system is a challenging concept to grasp. A penetration test is an authorised audit of a computer system's security and defences, the legality of a pentest is very clear in this sense. Anything outside of the defined agreement/scope is unauthorised.

Before a pentest, a formal discussion is held between the tester and system owner. They agree on tools, techniques and systems to be tested. This discussion forms the scope of the test.

Companies that provide penetration testing services are held to legal frameworks and industry accreditation. An example of this is the National Cyber Security Centre (NCSC) which has the CHECK accreditation scheme in the UK. This means that only "[CHECK] approved companies can conduct authorised penetration tests of public sector and CNI systems and networks."

Pentesters are often faced with morally questionable decisions during a test, for example, if they are presented with sensitive database info or performing a phishing attack. As long as this action is agreed upon, it is legal - albeit ethically questionable. Hackers are typically sorted into three hats:

Hat
Description
Example

White Hat

"Good guys" - act within the law and use skills to benefit others.

A pentester performing an authorised engagement.

Grey Hat

Use skills to benefit others, however, do not always follow the law or ethical standards.

Someone taking down a scamming website.

Black Hat

Criminals seeking to cause damage or gain financial benefit.

Ransomware authors.

The Rules of Engagement (ROE) is a document which is created in the initial stages of a pentest engagement. An example ROE can be seen . The document consists of three main stages:

  1. Permission: gives explicit permission for the engagement to be carried out. This permission is essential to protect individuals and organisations for activities they carry out.

  2. Test Scope: annotates specific targets which the engagement should apply to. For example, it may only apply to certain servers or applications.

  3. Rules: define the techniques permitted during the engagement. For example, it may say that phishing attacks are prohibited, but MITM (Man-in-the-Middle) attacks are ok.

Penetration Testing Methodologies

No pentest is the same as another, and there is no one-size-fits-all for how a pentest should be approached. The steps taken during an engagement are the methodology. A practical methodology is a smart one, where steps taken are relevant to the situation. For example, a web app methodology is not practical in a network security pentest. The general theme of a methodology is:

  1. Information Gathering: collect as much publicly accessible information as possible via OSINT and other research. This does not involve system scans.

  2. Enumeration/Scanning: discover apps and services running on systems, for example, finding a vulnerable web server.

  3. Exploitation: leverage vulnerabilities found on a system or application, this can involve use of public exploits or exploiting application logic.

  4. Privilege Escalation: once a foothold is made, attempt to expand access horizontally or vertically.

  5. Post-Exploitation: what other hosts can be targeted? What info can be gathered as a privileged user? Attempt to cover your tracks and report back.

Black Box, White Box and Grey Box Penetration Testing

  • Black Box Testing: the tester is given no information about the inner workings of an application or service. The tester acts like a normal user testing the functionality and interaction of the application or piece of software. No knowledge of programming or understanding of the program is required for this. This has a large amount of time spent on enumeration and information gathering to understand the targets attack surface.

  • Grey Box Testing: this is most popular for pentests. The tester has limited knowledge of the application or software, interaction will be like black box testing except time is saved on the enumeration stages. This is most often used against well-hardened targets.

  • White Box Testing: a low-level process normally done by a developer who knows programming and application logic. Tester has full knowledge of the app and expected behaviour and is much more time consuming than black box testing. The full knowledge guarantees that the entire attack surface can be validated.

is a detailed framework of testing strategies for systems, software, apps, communications and human cybersecurity. This includes methodologies for: telecommunications, wired networks and wireless communications. The main disadvantage to OSSTMM is that it is hard to understand, very detailed, and uses unique definitions.

framework is community driven and frequently updated, it is used solely to test the security of web applications and frameworks. The primary disadvantages to this are: it may be unclear what type of vulnerability a web app has, OWASP does not make suggestions to any specific software development life cycles and the framework holds no accreditations like CHECK.

is a popular framework which provides guidelines on security controls and benchmarks for success for organisations from critical infrastructure to commercial. The primary disadvantages to this framework are: NIST has many different iterations of the framework, so it might be hard to decide which to use, the NIST framework has weak auditing policies and the framework does not consider cloud computing.

is an extensive framework of 14 principles used to assess various cyber threats and an organisations defences against them. This applies to organisations considered to be performing "vitally important services and activities". The main disadvantages to CAF are that it is still relatively new, meaning organisations haven't had time to change to suit it and the framework itself is based on principles and ideas - it isn't as direct as other frameworks.

🦈
🖥️
here
The Open Source Security Testing Methodology Manual
The Open Web Application Security Project
The NIST Cybersecurity Framework
The Cyber Assessment Framework