Crest
Crest
Solanki Ravikumar
https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Index
Appendix A: Soft Skills and Assessment Management ................................................................................. 4
A1 Engagement Lifecycle .......................................................................................................................... 4
A2 Law & Compliance ............................................................................................................................... 6
A3 Scoping................................................................................................................................................. 7
A4 Understanding Explaining and Managing Risk .................................................................................... 9
A5 Record Keeping, Interim Reporting & Final Results........................................................................... 11
Appendix B: Core Technical Skills................................................................................................................ 13
B1 IP Protocols ........................................................................................................................................ 13
B2 Network Architectures....................................................................................................................... 14
B4 Network Mapping & Target Identification......................................................................................... 17
B5 Interpreting Tool Output ................................................................................................................... 19
B6 Filtering Avoidance Techniques ......................................................................................................... 22
B7: Missing from the official CREST CPSA syllabus document ................................................................ 24
B8 OS Fingerprinting ............................................................................................................................... 24
B9 Application Fingerprinting and Evaluating Unknown Services .......................................................... 25
B10 Network Access Control Analysis..................................................................................................... 26
B11 Cryptography ................................................................................................................................... 28
B12 Applications of Cryptography .......................................................................................................... 30
B13 File System Permissions ................................................................................................................... 31
B14 Audit Techniques ............................................................................................................................. 33
Appendix C: Background Information Gathering and Open Source ........................................................... 35
C1 Registration Records .......................................................................................................................... 35
C2 Domain Name Server (DNS) ............................................................................................................... 38
C3 Customer Web Site Analysis .............................................................................................................. 40
C4 Google Hacking and Web Enumeration ............................................................................................. 42
C5 NNTP Newsgroups and Mailing Lists ................................................................................................. 44
C6 Information Leakage from Mail & News Headers ............................................................................. 46
Appendix D: Networking Equipment .......................................................................................................... 48
D1 Management Protocols ..................................................................................................................... 48
D2 Network Traffic Analysis .................................................................................................................... 49
D3 Networking Protocols ........................................................................................................................ 50
D4 IPSec .................................................................................................................................................. 52
D5 VoIP.................................................................................................................................................... 53
D6 Wireless ............................................................................................................................................. 54
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
A1 Engagement Lifecycle
Benefits and utility of penetration testing to the client. Structure of penetration testing, including the
relevant processes and procedures. Concepts of infrastructure testing and application testing, including
black box and white box formats. Project closure and debrief.
Penetration testing (pen testing) is a proactive security testing approach that simulates cyberattacks to
identify vulnerabilities in a system or network before malicious actors can exploit them. The benefits
and utility of penetration testing to the client are numerous, including:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
5. Maintaining Access:
• Test the ability to maintain unauthorized access.
• Mimic advanced persistent threats (APTs).
6. Analysis:
• Evaluate the impact of successful exploits.
• Provide recommendations for remediation.
7. Reporting:
• Document findings, including vulnerabilities and their severity.
• Provide a clear and actionable report to the client.
Concepts of Infrastructure Testing and Application Testing:
1. Infrastructure Testing:
• Black Box Testing: Testers have no prior knowledge of the internal workings of the
system. This simulates an external attacker's perspective.
• White Box Testing: Testers have full knowledge of the internal workings of the system.
This simulates an insider threat or a highly informed external attacker.
2. Application Testing:
• Black Box Testing: Evaluates the security of an application without knowledge of its
internal code or logic.
• White Box Testing: Involves a deep understanding of the application's internal code,
logic, and architecture.
Project Closure and Debrief:
1. Project Closure:
• Summarize key findings and vulnerabilities.
• Verify that identified vulnerabilities have been addressed.
• Obtain final approval and sign-off from the client.
2. Debrief:
• Hold a meeting with key stakeholders to discuss the results.
• Review the overall effectiveness of security controls.
• Discuss recommendations for improving security posture.
• Provide guidance on implementing remediation measures.
• Document lessons learned for future testing.
In conclusion, penetration testing is a crucial component of a comprehensive cybersecurity strategy,
providing organizations with insights into their security vulnerabilities and helping them strengthen their
defenses against potential cyber threats.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Knowledge of pertinent UK legal issues: • Computer Misuse Act 1990 • Human Rights Act 1998 • Data
Protection Act 1998 • Police and Justice Act 2006 Impact of this legislation on penetration testing
activities. Awareness of sector-specific regulatory issues.
Understanding UK legal issues is crucial for conducting penetration testing activities ethically and within
the boundaries of the law. Here's an overview of some pertinent UK legislation and its impact on
penetration testing:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• Financial Sector: Financial organizations may have specific regulations regarding the testing of
systems that handle sensitive financial data. Compliance with regulations such as the Financial
Conduct Authority (FCA) requirements is essential.
• Healthcare Sector: Healthcare organizations must adhere to regulations like the General Data
Protection Regulation (GDPR) and the Health and Social Care Act. Penetration testers should be
aware of the specific challenges and considerations in healthcare settings.
• Critical Infrastructure: Organizations operating critical infrastructure, such as energy or
transportation, may have sector-specific regulations and standards. Penetration testers should
understand and comply with these regulations to ensure the security and resilience of critical
systems.
In summary, compliance with UK legal frameworks, including the Computer Misuse Act, Human Rights
Act, Data Protection Act, and Police and Justice Act, is essential for conducting penetration testing
activities ethically and legally. Additionally, awareness of sector-specific regulatory issues ensures that
penetration testers address industry-specific challenges and comply with relevant standards.
A3 Scoping
Understanding client requirements. Scoping project to fulfil client requirements. Accurate timescale
scoping. Resource planning.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• Present the proposed scope to the client for validation and approval. Ensure that the scope
aligns with their expectations and security goals.
3. Accurate Timescale Scoping:
a. Project Timeline:
• Develop a realistic project timeline considering the complexity of the environment, the depth of
testing, and the availability of resources.
• Break down the timeline into key phases, such as planning, reconnaissance, testing, analysis,
and reporting.
b. Testing Phases:
• Allocate time for each testing phase based on the scope and objectives. Consider factors like the
size of the infrastructure, the number of applications, and the intricacy of the environment.
c. Client Availability:
• Coordinate with the client to schedule testing activities during periods of minimal impact on
their operations. Ensure that key stakeholders are available for discussions and feedback.
4. Resource Planning:
a. Skillset Identification:
• Identify the specific skillsets required for the penetration testing engagement, considering
expertise in network security, application security, and any industry-specific knowledge.
b. Team Formation:
• Assemble a qualified and experienced team of penetration testers. Ensure that team members
hold relevant certifications and have a track record of successful testing.
c. Tool and Technology Requirements:
• Assess and procure the necessary tools and technologies required for testing. Ensure that these
tools align with the client's environment and testing objectives.
d. Logistics Planning:
• Plan for any physical or logistical requirements, especially if on-site testing is involved. Ensure
that all necessary arrangements are made well in advance.
Considerations:
• Communication:
• Maintain clear and open communication with the client throughout the scoping process.
Address any questions or concerns promptly.
• Flexibility:
• Be prepared to adapt the scope, timeline, or resources as needed. Flexibility is essential
to accommodate unexpected challenges or changes in client requirements.
• Documentation:
• Document all aspects of the scoping process thoroughly. This documentation serves as a
reference point throughout the project and can be crucial for accountability.
By effectively addressing each of these elements, you can establish a well-defined and realistic scope for
the penetration testing project, ensuring that it aligns with client expectations and can be executed
successfully within the specified timeframe and resource constraints.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Knowledge of additional risks that penetration testing can present. Levels of risk relating to penetration
testing, the usual outcomes of such risks materialising and how to mitigate the risks. Effective planning
for potential DoS conditions.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
e. Communication:
• Maintain transparent communication with stakeholders, including clients and relevant teams, to
keep them informed of testing activities and potential risks.
f. Regular Updates:
• Keep testing tools and methodologies up to date to minimize the risk of exploiting vulnerabilities
that have already been patched.
4. Planning for DoS Conditions:
a. Traffic Analysis:
• Analyze network traffic patterns to detect abnormal behavior that may indicate a DoS attack.
Implement intrusion detection and prevention systems.
b. Scalability Planning:
• Design systems to scale and absorb sudden increases in traffic. Implement load balancing and
redundant systems to distribute and manage loads effectively.
c. Rate Limiting:
• Implement rate limiting to control the number of requests from a single source, mitigating the
impact of potential DoS attacks.
d. DDoS Mitigation Services:
• Consider using Distributed Denial of Service (DDoS) mitigation services to filter and divert
malicious traffic away from the network.
e. Incident Response Plan:
• Develop a robust incident response plan that includes specific procedures for addressing and
mitigating DoS conditions promptly.
f. Regular Testing:
• Regularly test the resilience of systems against DoS attacks to identify and address
vulnerabilities proactively.
By understanding, explaining, and effectively managing risks in penetration testing, organizations can
ensure that the testing process remains a valuable and secure means of identifying and mitigating
vulnerabilities without introducing undue harm to the systems or data being tested.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
B1 IP Protocols
IP (Internet Protocol) is a fundamental communication protocol that facilitates the transmission of data
across networks. There are two main versions of IP: IPv4 (Internet Protocol version 4) and IPv6 (Internet
Protocol version 6). Additionally, within the suite of Internet Protocols, there are transport layer
protocols such as TCP (Transmission Control Protocol), UDP (User Datagram Protocol), and ICMP
(Internet Control Message Protocol). It's important to note that other IP protocols exist within the suite,
but IPv4, IPv6, TCP, UDP, and ICMP are among the most commonly encountered.
1. IPv4 (Internet Protocol version 4): This is the fourth version of the Internet Protocol and is the
most widely used. IPv4 addresses are 32-bit numerical labels, and they are expressed in dotted-
decimal notation (e.g., 192.168.0.1).
2. IPv6 (Internet Protocol version 6): IPv6 was developed as a successor to IPv4 due to the
exhaustion of IPv4 addresses. IPv6 uses a 128-bit address format, providing a vastly larger
address space. IPv6 addresses are expressed in hexadecimal notation (e.g.,
2001:0db8:85a3:0000:0000:8a2e:0370:7334).
3. TCP (Transmission Control Protocol): TCP is a connection-oriented protocol that provides
reliable, ordered, and error-checked delivery of data between applications on devices in a
network. It establishes a connection before data is exchanged and ensures that the data is
delivered accurately and in the correct order.
4. UDP (User Datagram Protocol): UDP is a connectionless protocol that provides a faster, but less
reliable, way of delivering data. It doesn't establish a connection before sending data and does
not guarantee the delivery or order of packets. UDP is commonly used in scenarios where low
latency and real-time communication are more critical than reliability, such as in streaming or
online gaming applications.
5. ICMP (Internet Control Message Protocol): ICMP is used for network-related communications,
diagnostics, and error reporting. It is often used by network devices to send error messages
indicating issues with network connectivity or to diagnose problems such as unreachable hosts.
Ping is an example of a tool that uses ICMP to check if a host is reachable.
Other IP protocols include protocols like IGMP (Internet Group Management Protocol) for managing
multicast group memberships, OSPF (Open Shortest Path First) for routing, and more. The Internet
Protocol suite is extensive, covering a range of protocols that operate at different layers of the
networking stack to enable communication and data transfer across networks.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
B2 Network Architectures
1. CAT 5 / Fiber:
• Security Implications:
• Physical Security: Both CAT 5 (copper) and fiber optic cables require attention to
physical security. Unauthorized access to cables can lead to eavesdropping or
tampering.
• Cable Interception: Copper cables are susceptible to electromagnetic interference,
which could potentially be exploited for cable interception. Fiber optics are less
susceptible to such interference but may be vulnerable to tapping if not adequately
protected.
2. 10/100/1000baseT:
• Security Implications:
• Speed and Bandwidth: Higher-speed networks (1000baseT) may facilitate quicker data
exfiltration in the event of a breach.
• Advanced Threats: Faster networks may require more advanced security measures,
including intrusion detection and prevention systems capable of handling the increased
data flow.
3. Token Ring:
• Security Implications:
• Token Passing Security: Security testing should include an understanding of the token
passing mechanism. Unauthorized acquisition of the token could lead to unauthorized
access.
• Configuration Vulnerabilities: Misconfigurations in token ring networks can introduce
security vulnerabilities that may be exploited.
4. Wireless (802.11):
• Security Implications:
• Encryption Strength: The security of wireless networks relies heavily on the strength of
encryption. Weak encryption can be exploited for unauthorized access.
• Access Point Security: Unauthorized or poorly secured access points can lead to
unauthorized access. Penetration tests should check for rogue access points.
Security Implications of Network Media and Configurations:
1. Shared Media:
• Implications:
• Eavesdropping: Shared media environments, like traditional Ethernet, make it easier for
attackers to eavesdrop on network traffic. Sniffing tools can capture packets not
intended for a particular host.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• ARP Spoofing: Protocols like ARP can be exploited for attacks like ARP spoofing, allowing
attackers to redirect traffic.
ARP spoofing, also known as ARP poisoning or ARP cache poisoning, is a technique used by attackers to
manipulate the Address Resolution Protocol (ARP) in a network. The goal of ARP spoofing is to associate
the attacker's MAC address with the IP address of a legitimate network entity (such as a router or
another computer) in order to intercept or modify network traffic. Here's a breakdown of how ARP
spoofing works and some preventive measures:
In a local network, devices use ARP to map IP addresses to MAC addresses. When a device needs to
communicate with another device on the same network, it sends out an ARP request to discover the
MAC address associated with a particular IP address.
ARP Spoofing Attack Steps:
Step 1: Discovery
The attacker sends forged ARP responses to devices on the network, associating the attacker's MAC
address with the IP address of a legitimate entity (e.g., the router).
Step 3: Traffic Diversion
With the ARP cache poisoned, traffic meant for the legitimate entity is redirected through the attacker's
machine.
Step 4: Eavesdropping or Modification
The attacker can intercept and inspect the traffic or modify it before forwarding it to the intended
recipient.
2. Switched Media:
• Implications:
• MAC Address Spoofing: Security testing should assess the effectiveness of switch
configurations, including the potential for MAC address spoofing.
• MAC address spoofing is a technique in which an attacker changes the Media Access
Control (MAC) address of their network interface card (NIC) to mimic a different MAC
address. This can be done for various malicious purposes, such as bypassing access
controls, impersonating other devices, or conducting man-in-the-middle attacks. Here's
an overview of MAC address spoofing and some preventive measures:
• How MAC Address Spoofing Works:
• MAC Address Basics:
• A MAC address is a unique identifier assigned to a network interface for communication
on the physical network.
• Changing MAC Address:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• An attacker uses software tools or manually configures their device to use a different
MAC address than the one assigned by the manufacturer.
• Impersonation:
• By spoofing a legitimate MAC address, the attacker can impersonate another device on
the network.
• Bypassing MAC Filtering:
• Some networks use MAC address filtering as a security measure. Spoofing allows
attackers to bypass this protection by appearing as an authorized device.
• Man-in-the-Middle Attacks:
• MAC address spoofing can be part of man-in-the-middle attacks where the attacker
intercepts and potentially alters communication between two parties.
VLAN hopping often involves sending frames with double VLAN tags. The attacker adds
an extra VLAN tag to the Ethernet frame, making it appear as if the frame belongs to a
different VLAN.
Trunk Ports Exploitation:
Trunk ports are used to carry traffic for multiple VLANs. In a misconfigured or insecure
environment, an attacker may gain access to a trunk port and exploit it to send double-
tagged frames.
Native VLAN Exploitation:
Some networks have a native VLAN for untagged traffic on a trunk. Attackers may send
frames with double tags, exploiting the native VLAN to access frames of a different
VLAN.
In a penetration test, understanding these security implications helps identify potential vulnerabilities
and weaknesses in the network architecture. It's essential to conduct thorough testing across different
layers and components of the network to ensure a comprehensive evaluation of security posture.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Analysis of output from tools used to map the route between the engagement point and a number of
targets.
Network sweeping techniques to prioritise a target list and the potential for false negatives.
Network mapping and target identification are critical steps in a penetration test. They involve
discovering and analyzing the network topology, identifying active hosts, and prioritizing potential
targets for further assessment. Here's an overview of these processes and considerations for network
sweeping techniques:
Network Mapping and Target Identification:
1. Tools for Network Mapping:
• Nmap: Nmap (Network Mapper) is a powerful open-source tool for network discovery
and security auditing. It can be used to identify hosts, services, and their characteristics
on a network.
• Wireshark: Wireshark is a network protocol analyzer that captures and inspects the
data traveling back and forth on a network in real-time.
• Automated Scanners: There are various automated vulnerability scanners that include
network mapping as part of their functionality, such as Nessus, OpenVAS, and Nexpose.
2. Analysis of Output:
• Output from tools like Nmap provides information about active hosts, open ports, and
services running on those ports.
• Understanding the network topology, identifying key assets, and determining potential
points of entry are crucial.
• Analyzing the output helps in creating a target list for further penetration testing.
Network Sweeping Techniques:
1. Ping Sweeps:
• Technique: Using tools like Nmap to send ICMP Echo Requests to a range of IP
addresses to identify live hosts.
• Consideration: Firewalls or host-based intrusion prevention systems (HIPS) may block
ICMP traffic, leading to potential false negatives.
2. TCP/UDP Scans:
• Technique: Scanning for open TCP and UDP ports on live hosts to identify active
services.
• Consideration: Some hosts may be configured to respond to specific probes while
ignoring others. Custom port configurations may result in false negatives.
3. Service Identification:
• Technique: Identifying the specific services running on open ports to understand
potential vulnerabilities.
• Consideration: Some services may be configured to hide their identity, making accurate
service identification challenging.
Prioritizing Target List:
1. Critical Assets:
• Identify critical assets such as servers hosting sensitive data, domain controllers, or
other key infrastructure components.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
2. Common Vulnerabilities:
• Prioritize targets based on known vulnerabilities associated with the identified services
and software.
3. Network Architecture:
• Consider the network architecture and potential pivot points for lateral movement.
Targets with a higher potential impact should be prioritized.
4. Business Impact:
• Assess the potential business impact of compromising specific targets to prioritize those
that could have severe consequences.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Interpreting output from port scanners, network sniffers and other network enumeration tools.
Interpreting output from network enumeration tools is a critical skill in penetration testing and network
security assessments. Below are examples of tool output from common network enumeration tools and
guidance on interpreting the results.
Port Count
65,536 (2^16) Ports
This applies to TCP AND UDP
NMap : Scan EVERY Port
TCP: nmap -p- <IP>
UDP: nmap -sU -p- <IP>
Command:
Output:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
nslookup example.com
Output:
Non-authoritative answer:
Name: example.com Addresses: 93.184.216.34
2606:2800:220:1:248:1893:25c8:1946
Interpretation:
• The DNS query for example.com returns two IP addresses (IPv4 and IPv6).
• These IP addresses may represent different servers or services associated with the domain.
Output:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Interpretation:
• The -sV flag enables version detection for open ports.
• The SSH service is identified as OpenSSH version 7.2p2 on an Ubuntu system.
• The HTTP service is identified as Apache HTTP Server version 2.4.18 on Ubuntu.
nbtscan 192.168.1.0/24
Output:
192.168.1.1 WORKGROUP <Server Name>
192.168.1.2 WORKGROUP <Server Name>
Interpretation:
• nbtscan is used to enumerate NetBIOS information on hosts in the specified IP range.
• The output displays IP addresses, workgroup names, and server names.
6. SMTP Enumeration (Using Telnet):
Command:
telnet mail.example.com 25
EHLO example.com
Output:
250-mail.example.com
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-STARTTLS
250-AUTH LOGIN PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME 250 DSN
Interpretation:
• Telnet is used to connect to the SMTP (mail) server on port 25.
• The EHLO command is used to identify supported features.
• The server supports features like STARTTLS, authentication (LOGIN, PLAIN), and others.
Important Considerations:
• False Positives/Negatives: Understand that tool outputs may have false positives or negatives.
Verify findings manually when possible.
• Documentation: Document all findings comprehensively, including IP addresses, open ports,
service versions, and potential vulnerabilities.
• Reporting: Use the information gathered to create a detailed and clear report, including the
impact and remediation recommendations for identified vulnerabilities.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Remember that ethical and responsible use of network enumeration tools is crucial, and penetration
testing should only be conducted on systems where you have explicit permission. Unauthorized testing
is illegal and unethical. Always adhere to the rules of engagement and applicable laws and regulations.
The importance of egress and ingress filtering, including the risks associated with outbound connections.
Egress and ingress filtering play crucial roles in network security, preventing unauthorized access and
controlling the flow of traffic both into and out of a network. Let's explore the risks associated with
outbound connections and some example tools that can be used for filtering avoidance techniques.
Risks Associated with Outbound Connections:
1. Data Leakage:
• Risk: Sensitive information leaving the network without authorization.
• Example Tool: Data exfiltration tools or techniques like file transfer over non-standard
ports.
2. Botnet Communication:
• Risk: Malware-infected systems establishing connections with command-and-control
servers.
• Example Tool: Malicious software utilizing covert communication channels or
techniques like DNS tunneling.
3. Communication with Malicious Entities:
• Risk: Outbound connections to malicious websites or servers.
• Example Tool: Web-based attack tools that establish connections to attacker-controlled
servers.
Example Tools for Filtering Avoidance Techniques:
1. DNS Tunneling Tools:
• Example: Dns2tcp, Iodine, Dnscat2
• Functionality: These tools encode data within DNS queries and responses, allowing for
covert communication that might bypass traditional filtering.
2. Proxy Tools:
• Example: Proxychains, TOR
• Functionality: Proxies can be used to redirect outbound traffic through intermediary
servers, potentially bypassing egress filtering.
3. Covert Channels:
• Example: Hping, Netcat
• Functionality: Covert channels involve sending information over protocols or channels
not typically monitored, making it harder for traditional filters to detect.
4. Encrypted Tunnels:
• Example: OpenVPN, SSH Tunneling
• Functionality: Encrypted tunnels can be used to encapsulate traffic, making it more
challenging for filters to inspect the content.
5. Steganography Tools:
• Example: OpenStego, Steghide
• Functionality: Steganography conceals data within other files or media, potentially
allowing sensitive information to be embedded in outbound traffic.
Importance of Egress and Ingress Filtering:
1. Egress Filtering:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
B8 OS Fingerprinting
OS Fingerprinting:
OS (Operating System) fingerprinting is a technique used to determine the operating system running on
a remote host. It is a valuable phase in the information-gathering process during network
reconnaissance. Fingerprinting helps attackers understand the target environment, enabling them to
tailor subsequent attacks more effectively. OS fingerprinting can be performed using both active and
passive techniques.
Active OS Fingerprinting:
1. Nmap:
Command:
nmap -O target_ip
• Description: Nmap uses a series of probes and analyzes the responses to determine the target's
operating system. It sends packets and observes how the target responds.
2. Xprobe2:
• Command:
p0f -i eth0
• Description: P0f is a passive OS fingerprinting tool that monitors network traffic to identify the
operating system based on characteristics of TCP/IP packets. It analyzes the patterns of packets
to make educated guesses about the OS.
2. Satori:
• Command:
satori -i eth0
• Description: Satori is another passive OS fingerprinting tool. It analyzes network traffic to
determine the operating system based on characteristics such as TTL (Time To Live) values and
TCP window sizes.
Example Output:
Nmap Active OS Fingerprinting:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Determining server types and network application versions from application banners.
Evaluation of responsive but unknown network applications.
Application Fingerprinting:
Application fingerprinting involves identifying server types and network application versions by
analyzing application banners in network traffic. Tools like Nmap, BannerGrab, and other specialized
scanners are commonly used for this purpose.
Tool: Nmap
Command for Version Detection:
Example Output:
Interpretation:
• The version detection option (-sV) in Nmap reveals the software and version running on open
ports.
• In this example, SSH, HTTP, and HTTPS services are identified along with their respective
versions.
Evaluation of Responsive but Unknown Network Applications:
When you encounter responsive but unknown network applications, it's crucial to identify their nature
and purpose. Tools like Wireshark, Netcat, and specialized application scanners can assist in this process.
Tool: Wireshark
Scenario:
Observing traffic between a client and an unknown server.
• Analyzing packets in Wireshark may reveal communication patterns, protocols, and potentially
provide clues about the nature of the unknown application.
Tool: Netcat (nc)
Scenario:
Attempting to communicate with the unknown service using Netcat.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Example Command:
nc target_ip target_port
• Manually interacting with the service using Netcat can provide insights into its behavior and
responses.
Tool: Automated Scanning (e.g., Nessus)
Scenario:
Using an automated scanner to perform a comprehensive evaluation of an unknown service.
• Automated scanners can identify vulnerabilities, enumerate services, and provide detailed
reports on the unknown application.
B10 Network Access Control Analysis
Reviewing firewall rule bases and network access control lists (ACLs) is a critical aspect of network
security management. Various tools can assist in analyzing these configurations to ensure they align
with security policies and best practices. Let's discuss a few tools and provide examples of how they can
be used for this purpose.
1. Firewall Rule Analysis with Tufin SecureTrack:
Tufin SecureTrack is a tool designed for analyzing and managing firewall rule bases. It provides visibility
into rule usage, highlights potential security risks, and helps ensure compliance.
Example Scenario:
1. Installation:
• Install Tufin SecureTrack and connect it to your firewall devices.
2. Rule Usage Analysis:
• Tufin provides reports and visualizations that help analyze the usage of firewall rules.
For example, you can identify rules that are rarely or never used.
3. Security Policy Compliance:
• Tufin can assess your firewall rule base against security policies and industry best
practices, highlighting non-compliance.
2. Firewall Rule Review with AlgoSec:
AlgoSec is another solution for firewall policy and network security management. It assists in optimizing
rule sets, ensuring compliance, and identifying potential risks.
Example Scenario:
1. Installation:
• Install AlgoSec and connect it to your firewall infrastructure.
2. Policy Optimization:
• AlgoSec can analyze your firewall rule base and recommend optimizations, such as
removing redundant rules or reordering rules for better efficiency.
3. Risk Analysis:
• The tool can assess rule sets for security risks, ensuring that rules adhere to security
best practices and compliance standards.
3. ACL Analysis with Cisco ACL Analyzer:
Cisco ACL Analyzer is a tool specifically designed for analyzing Cisco Access Control Lists (ACLs).
Example Scenario:
1. Usage:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• Use the Cisco ACL Analyzer to import and analyze your Cisco ACL configurations.
2. Analysis Reports:
• The tool provides reports on the potential impact of ACL changes, identifies shadowed
rules, and helps ensure proper ACL functionality.
4. Manual Analysis with Text Editors and Scripts:
For a more hands-on approach, you can use text editors and scripting to analyze firewall rules and ACLs
directly.
Example Scenario (Using Text Editor and Scripting):
1. Export Configuration:
• Export the firewall rule base or ACL configuration to a text file.
2. Text Editor Analysis:
• Use a text editor to manually review and analyze rules, looking for inconsistencies,
redundant rules, or potential security risks.
3. Scripting (Optional):
• Write scripts to parse and analyze rule configurations automatically. For example, you
could use Python or PowerShell to identify specific patterns or characteristics in the rule
set.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
B11 Cryptography
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Hash Functions:
1. SHA-1 (Secure Hash Algorithm 1):
• Output Size: 160 bits.
• Status: Deprecated due to vulnerabilities; not recommended for cryptographic security.
2. MD5 (Message Digest Algorithm 5):
• Output Size: 128 bits.
• Status: Deprecated due to vulnerabilities; not recommended for cryptographic security.
Message Integrity Codes (HMAC):
HMAC (Hash-Based Message Authentication Code):
• Purpose: Ensures data integrity and authenticity using a combination of a secret key and a hash
function.
• Process:
1. Applies a hash function (e.g., SHA-256) to the data.
2. Combines the hash output with a secret key.
3. Applies the hash function again to the combined value.
• Example (Python):
import hashlib
import hmac
key = b'secret_key'
data = b'message_to_protect'
# Calculate
HMAC using SHA-256 hmac_sha256 = hmac.new(key, data,
hashlib.sha256).hexdigest()
print("HMAC-SHA256:", hmac_sha256)
HMAC ensures that even if an attacker can modify the message, they cannot create a valid HMAC
without knowledge of the secret key. It provides a way to verify the integrity and authenticity of a
message.
Here's a table that provides examples of hash types, their sizes in bits and bytes, and how to identify
them:
Size Size
Hash Type (Bits) (Bytes) Example
MD5 128 16 d41d8cd98f00b204e9800998ecf8427e (empty string)
SHA-1 160 20 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8 (password "password")
SHA-256 256 32 5d41402abc4b2a76b9719d911017c592 (password "password")
5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8
SHA-512 512 64 (password "password")
MySQL (pre-
4.1) - - 1a1dc91c907325c69271ddf0c944bc72 (password "password")
MySQL (5+) - - *2470c0c06de6e42ee429b42a45fe2b70 (password "password")
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Size Size
Hash Type (Bits) (Bytes) Example
MD5
(WordPress) 128 16 $P$B7Sq6L.FCSqmR7orrsDVLePcLjS2yw0 (password "password")
MD5 (phpBB3) 128 16 $H$9bDSB/6Rt1r5DQi6mIb/L.ZQ2NLeW01 (password "password")
LM Hash aad3b435b51404eeaad3b435b51404ee:8846f7eaee8fb117ad06bdd830b7586c
(Windows) 128 16 (password "password")
Identifying Hash Types:
1. MD5:
• Usually represented as a 32-character hexadecimal string.
2. SHA-1, SHA-256, SHA-512:
• SHA-1: 40-character hexadecimal string.
• SHA-256: 64-character hexadecimal string.
• SHA-512: 128-character hexadecimal string.
3. MySQL (Pre-4.1 and 5+):
• Represented as a 32-character hexadecimal string for MySQL (pre-4.1).
• Represented with a prefix, such as *, for MySQL (5+).
4. MD5 (WordPress, phpBB3):
• WordPress MD5 hashes start with $P$.
• phpBB3 MD5 hashes start with $H$.
5. LM Hash (Windows):
• Represented as two 16-character hexadecimal strings, each corresponding to the upper
and lower halves of the LM hash.
Applications of Cryptography:
1. SSL/TLS (Secure Sockets Layer/Transport Layer Security):
• Purpose: Securing communication over the internet, especially in web browsers.
• Usage: Encrypts data during transit, ensuring confidentiality and integrity.
• Examples: HTTPS for secure web browsing, securing online transactions.
2. IPsec (Internet Protocol Security):
• Purpose: Securing communication at the IP layer.
• Usage: Provides encryption, integrity, and authentication for IP packets.
• Examples: VPN (Virtual Private Network) connections, ensuring secure communication
over the internet.
3. SSH (Secure Shell):
• Purpose: Providing secure remote access to systems.
• Usage: Encrypts data during remote login sessions and file transfers.
• Examples: Securely accessing servers, transferring files using SFTP or SCP.
4. PGP (Pretty Good Privacy):
• Purpose: Securing emails and files.
• Usage: Provides end-to-end encryption and digital signatures for emails and files.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
File permission attributes within Unix and Windows file systems and their security implications.
Analysing registry ACLs
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Example:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Audit Techniques:
Linux/macOS:
• Command:
netstat -tulpn
• Explanation:
• Lists all listening and established connections along with the associated processes.
Windows:
• Command:
•
Get-NetTCPConnection Select-Object LocalAddress, LocalPort, RemoteAddress,
RemotePort, OwningProcess
• Explanation:
• Retrieves information about active TCP connections, including the associated processes.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• Explanation:
• Lists available package upgrades on Debian-based systems.
Windows:
• Command:
Get-HotFix
• Explanation:
• Displays a list of installed hotfixes and updates on a Windows system.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
C1 Registration Records
whois example.com
• Windows (using PowerShell):
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• Numerous websites provide online WHOIS lookup services where you can enter a
domain and retrieve registration details.
Considerations:
1. Privacy Concerns:
• Some registrants use privacy services to mask their personal information in WHOIS
records.
2. Domain Ownership Changes:
• WHOIS records can reflect changes in ownership or contact information over time.
3. IP Address WHOIS:
• Similar information is available for IP addresses, indicating the organization or entity
that owns the IP range.
4. Abuse Contacts:
• WHOIS records often include abuse contacts for reporting malicious activity related to a
domain.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Always consider the privacy laws and regulations associated with the region of the registrant, as they
may affect the visibility of certain information in WHOIS records.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
example.com IN A 192.168.0.1
5. NS (Name Server) Record:
• Purpose:
• Specifies authoritative DNS servers for the domain.
• Example:
example.com IN NS ns1.example.com
6. PTR (Pointer) Record:
• Purpose:
• Used in reverse DNS lookups to map an IP address to a domain.
• Example:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Analysis of information from a target web site, both from displayed content and from within the HTML
source.
<title>Example Website</title>
• Explanation:
• Assess the title tag for an accurate and descriptive title that reflects the
website's content.
• Links and References:
• Example:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• Explanation:
• Review internal and external links to understand the site's structure and
external references.
• Scripts and External Dependencies:
• Example:
<script src="analytics.js"></script>
• Explanation:
• Identify scripts and external dependencies, ensuring they are secure and
necessary for functionality.
• Forms:
• Example:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Effective use of search engines and other public data sources to gain information about a target.
filetype:pdf site:example.com
• Explanation:
• Searches for PDF files on the specified website.
• Site Operator:
• Example:
site:example.com
• Explanation:
• Limits the search to a specific domain.
• Intitle Operator:
• Example:
inurl:admin filetype:php
• Explanation:
• Searches for pages with "admin" in the URL and having a PHP extension.
2. Google Dorks:
• Example:
site:example.com -www
• Explanation:
• Retrieves subdomains and other DNS-related information.
• Subdomain Enumeration:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• Example:
site:*.example.com
• Explanation:
• Identifies subdomains associated with the target domain.
• IP Enumeration:
• Example:
ip:192.168.1.1
• Explanation:
• Provides information related to the specified IP address.
4. Social Media Enumeration:
• Example:
site:linkedin.com inurl:john-doe
• Explanation:
• Searches for profiles of "John Doe" on LinkedIn.
5. Filetype Enumeration:
• Example:
site:example.com filetype:doc
• Explanation:
• Retrieves Word documents on the specified site.
6. Sensitive Information Search:
• Example:
site:example.com ext:sql
• Explanation:
• Looks for SQL files on the specified site.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• Explanation:
• Searches for mailing lists discussing a "specific topic."
4. Search Within a Specific Mailing List:
• Example:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Analysing news group and e mail headers to identify internal system information.
Path: example.com!news.example.net!news-server!example.org!user
From: [email protected] (John Doe)
Newsgroups: alt.test
Date: Tue, 23 Nov 2023 12:00:00 GMT
Organization: Example Organization
Lines: 20
Message-ID: <[email protected]>
• Analysis:
• Path:
• The "Path" header shows the route the message took through the network of
news servers.
• Sender's Email:
• The "From" header reveals the email address of the sender
([email protected]) and their display name.
• Newsgroups:
• Specifies the newsgroups to which the message belongs (alt.test).
• Date:
• Indicates the date and time when the message was posted.
• Organization:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
1. Telnet:
• Attack 1: Packet Sniffing
• Details: Capture and analyze Telnet packets to extract sensitive information
transmitted in plain text.
• Attack 2: Man-in-the-Middle (MitM)
• Details: Intercept Telnet communication between a client and server to
eavesdrop or manipulate data.
2. Web-based Protocols (HTTP/HTTPS):
• Attack 1: SQL Injection
• Details: Inject malicious SQL queries into web application input fields to
compromise the underlying database.
• Attack 2: Cross-Site Scripting (XSS)
• Details: Inject malicious scripts into web pages, potentially compromising user
data or session information.
3. SSH (Secure Shell):
• Attack 1: Brute Force
• Details: Repeatedly attempt to guess SSH passwords to gain unauthorized
access.
• Attack 2: Protocol Downgrade
• Details: Force the use of less secure SSH protocol versions to exploit
vulnerabilities.
4. SNMP (Simple Network Management Protocol):
• Attack 1: SNMP Enumeration
• Details: Query SNMP-enabled devices to gather information about the network,
potentially aiding in further attacks.
• Attack 2: Unauthorized Access
• Details: Exploit weak community strings or misconfigurations to gain
unauthorized access to SNMP-enabled devices.
5. TFTP (Trivial File Transfer Protocol):
• Attack 1: Man-in-the-Middle (MitM)
• Details: Intercept TFTP transfers to modify transferred files or capture sensitive
data.
• Attack 2: Unauthorized Access
• Details: Exploit the lack of authentication in TFTP to gain unauthorized access.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
vlan.dat
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
IPSec (Internet Protocol Security) is a suite of protocols used to secure Internet Protocol (IP)
communication by authenticating and encrypting each IP packet involved in the communication. Devices
running IPSec services can be enumerated and fingerprinted to identify their presence and
configurations.
Conduct a network scan to identify devices that respond to IPSec-related protocols (such as ISAKMP/IKE
for key exchange).
Manual Observation:
Manually observe network traffic for IPSec-specific protocols. Tools like Wireshark can be helpful in
capturing and analyzing IPSec-related traffic.
ISAKMP/IKE Fingerprinting:
Identify the specific IPSec implementation by analyzing the ISAKMP/IKE negotiation messages. Different
implementations may have distinct characteristics.
ike-scan <target>
This tool can provide information about supported encryption algorithms, hashing algorithms, and
vendor-specific information.
Banner Grabbing:
Attempt to connect to IPSec services and gather banner information. This can reveal details about the
IPSec implementation and version.
nc -u <target> 500
Sending an ISAKMP/IKE packet and analyzing the response can provide information about the IPSec
implementation.
Protocol-Specific Enumeration:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
For specific IPSec protocols, such as ESP (Encapsulating Security Payload), analyze network traffic to
identify supported algorithms and parameters.
D5 VoIP
Enumerating and fingerprinting devices running VoIP (Voice over Internet Protocol) services involves
identifying and analyzing systems that support VoIP communication. SIP (Session Initiation Protocol) is a
key protocol used in VoIP for initiating and terminating communication sessions. Here are methods for
enumeration and fingerprinting of devices running VoIP services, with a focus on SIP:
Enumeration of VoIP Devices:
1. Network Scanning:
• Conduct a network scan to identify devices with open ports commonly associated with
VoIP services, such as SIP ports (5060-5061).
svmap -v -s <target>
This command uses svmap to scan for SIP devices with registered users/extensions.
3. SIP OPTIONS Enumeration:
• Use a tool like sipsak to send SIP OPTIONS requests to enumerate SIP devices and their
capabilities.
sipsak -s sip:<target>
The OPTIONS request can reveal information about the SIP server and supported features.
Fingerprinting of VoIP Devices:
1. SIP Banner Grabbing:
• Use tools like sipsak or sipp to connect to the SIP service and grab banner information,
revealing details about the SIP server software and version.
sipsak -s sip:<target>
2. SIP Protocol Analysis:
• Analyze SIP protocol messages using tools like Wireshark to understand the SIP
implementations and extract information about supported codecs and extensions.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
sipsak -s sip:<target>
4. SIP User Enumeration:
• Enumerate SIP users/extensions by attempting to register or make calls to discover valid
users/extensions on the VoIP system.
D6 Wireless
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Enumeration and fingerprinting of devices running wireless (802.11) services involve identifying and
analyzing wireless networks, their security mechanisms, and the devices connected to them. Here are
methods for enumeration and fingerprinting, along with an overview of various options for encryption
and authentication in wireless networks:
Wireless Standards
802.11b - 2.4 GHz 11 Mbps
802.11a - 5 GHz, 54 Mbps
802.11g - 2.4 GHz, 54 Mbps
802.11n - 5 GHz, 108 Mpbs
802.15 - Bluetooth 2.4 GHz
airodump-ng <interface>
2. Probe Requests and Responses:
• Analyze probe requests and responses to identify devices probing for known wireless
networks. Tools like airodump-ng can capture and display this information.
netstumbler
2. Wi-Fi Packet Analysis:
• Analyze captured packets using tools like Wireshark to understand the protocols,
encryption methods, and authentication mechanisms used by wireless devices.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Analyzing configuration files from Cisco equipment, including routers and switches, is a common task in
network management and security assessments. Cisco devices use a command-line interface (CLI) to
configure and manage various settings. Here's a general guide for analyzing configuration files from
Cisco routers and switches, as well as tips for interpreting configurations from other manufacturers'
devices.
Use the CLI or a management interface to access the device configuration. Common commands include:
Examine interface configurations for IP addresses, subnet masks, encapsulation settings, and line
protocols.
Review routing configurations, including routing protocols, static routes, and routing tables.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Check for security-related settings, such as access control lists (ACLs), NAT configurations, and firewall
settings.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
E1 Domain Reconnaissance
workgroups, domain memberships, key servers, internal browse lists, and accessible SMB (Server
Message Block) shares within a target network. This reconnaissance is part of the initial phase of ethical
hacking and security assessments to understand the structure and potential vulnerabilities of the
network.
Identifying Domains/Workgroups and Domain Membership:
1. Network Scanning:
• Utilize tools like Nmap to discover active hosts on the network and identify their open
ports.
nbtscan <target>
enum4linux -A <target>
3. DNS Zone Transfer:
• If DNS zone transfers are allowed, attempt to perform a zone transfer to gather
information about the domain.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
nbtscan <target>
enum4linux -A <target>
Identifying and Analyzing Accessible SMB Shares:
1. SMB Enumeration:
• Use tools like enum4linux or smbmap to identify accessible SMB shares on target
systems.
enum4linux -S <target>
smbmap -H <target>
2. Null Sessions:
• Attempt null sessions to gather additional information about accessible shares and
permissions.
smbclient -L //<target>
E2 User Enumeration
Identifying user accounts on target systems and domains using NetBIOS, SNMP and LDAP.
User enumeration is a common phase in penetration testing and security assessments where the goal is
to identify user accounts on target systems and domains. Various protocols, such as NetBIOS, SNMP,
and LDAP, can be leveraged for this purpose. It's important to note that user enumeration should only
be performed on systems where you have explicit authorization to do so.
1. NetBIOS User Enumeration:
NetBIOS (Network Basic Input/Output System) is an API that allows applications on separate computers
to communicate. It's often used to identify users and shares on Windows-based systems.
a. nbtscan:
• Use the nbtscan tool to perform NetBIOS enumeration and identify active hosts, users, and
shares.
nbtscan <target>
b. enum4linux:
• The enum4linux tool can be used to extract user and group information through NetBIOS.
enum4linux -U -G -o <target>
2. SNMP User Enumeration:
SNMP (Simple Network Management Protocol) is a protocol used for network management. SNMP
enumeration involves querying SNMP services on devices to extract information, including user
accounts.
a. SNMP Enumeration Tools:
• Use SNMP enumeration tools like onesixtyone or snmpwalk to query SNMP devices for user
information.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
E3 Active Directory
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• LDAP Queries: AD clients and services use LDAP queries to retrieve information from
the AD database.
Group Policy (Local Security Policy):
1. Group Policy:
• Group Policy in Active Directory is a set of rules that control the working environment of
user accounts and computer accounts. It allows administrators to manage settings
centrally.
• Key Aspects:
• Security Settings: Enforce security configurations across the domain.
• Software Installation: Deploy and manage software installations on client
machines.
• Script Execution: Run scripts on client machines for various purposes.
• Desktop Settings: Configure desktop environments and user preferences.
2. Local Security Policy:
• The Local Security Policy is a standalone tool on Windows machines that allows
administrators to configure security settings on an individual machine.
• Local Policies:
• Audit Policy: Configure audit settings for the local machine.
• User Rights Assignment: Define what actions users are allowed to perform on
the machine.
• Security Options: Configure various security-related options.
# CMD
net users %username% #Me
net users #All local users
net localgroup #Groups
net localgroup Administrators #Who is inside Administrators group
whoami /all #Check the privileges
# PS
Get-WmiObject -Class Win32_UserAccount
Get-LocalUser ft Name,Enabled,LastLogon
Get-ChildItem C:\Users -Force select Name
Get-LocalGroupMember Administrators ft Name, PrincipalSource
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
E4 Windows Passwords
LM Hash
Primary Windows LAN hash before Windows NT. 14 character limit.
Windows Passwords:
Password Policies:
1. Complexity Policies:
• Enforce the use of complex passwords containing a combination of uppercase and
lowercase letters, numbers, and special characters.
2. Lockout Policies:
• Define policies that lock out user accounts after a certain number of incorrect login
attempts. This helps prevent brute force attacks.
Account Brute Forcing:
1. Brute Force Attacks:
• Attackers attempt to gain unauthorized access by systematically trying all possible
combinations of passwords until the correct one is found.
• Mitigation: Account lockout policies, CAPTCHAs, and multi-factor authentication (MFA)
can help mitigate brute force attacks.
Hash Storage:
Merits of LANMAN, NTLMv1/v2:
1. LANMAN (Deprecated):
• LANMAN (LM) is an older, insecure password hashing algorithm used in older Windows
systems.
• Merits: None from a security standpoint; it's vulnerable to rainbow table attacks.
2. NTLMv1:
• NTLMv1 is an improvement over LANMAN but is still vulnerable to certain attacks.
• Merits: Stronger than LANMAN but susceptible to pass-the-hash attacks.
3. NTLMv2:
• NTLMv2 is a more secure version of NTLM and is resistant to pass-the-hash attacks.
• Merits: Provides stronger security compared to LANMAN and NTLMv1.
Offline Password Analysis:
Rainbow Tables / Hash Brute Forcing:
1. Rainbow Tables:
• Precomputed tables of hash values for all possible password combinations. Attackers
use these tables to quickly find the corresponding plaintext for a given hash.
• Mitigation: Salting passwords before hashing makes precomputed tables less effective.
2. Hash Brute Forcing:
• Attackers attempt to guess passwords by hashing potential passwords and comparing
the results with stored hash values.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• Mitigation: Strong password policies, account lockout mechanisms, and monitoring for
suspicious activities help mitigate hash brute force attacks.
3. Here's a table summarizing the information about NTLM versions, including hash
LAN Manager is an obsolete authentication protocol, with its final release in 1994.
NTLM is not recommended to be used by Microsoft since 2010, but it is still widely used and deployed,
especially in AD environments.
Famous attack is pass-the-hash attack, where once we have gotten the NTLM hash, we can use it to get
into authenticated places. Used in SMB, and lateral movements.
https://medium.com/@petergombos/lm-ntlm-net-ntlmv2-oh-my-a9b235c58ed4
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
admin::N46iSNekpT:08ca45b7d7ea58ee:88dcbe4446168966a153a0064958dac6:5c7830315
c7830310000000000000b45c67103d07d7b95acd12ffa11230e0000000052920b85f78d013c31
cdb3b92f5d765c783030
Source: Peter Gombos, 20 Feb 2018, "LM, NTLM, Net-NTLMv2, oh my!"
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
E5 Windows Vulnerabilities
Knowledge of remote windows vulnerabilities, particularly those for which robust exploit code exists in
the public domain.
Knowledge of local windows privilege escalation vulnerabilities and techniques.
Knowledge of common post exploitation activities:
obtain password hashes, both from the local SAM and cached credentials
obtaining locally stored clear text passwords
crack password hashes
check patch levels
derive list of missing security patches
reversion to previous state
Knowledge of remote windows vulnerabilities, particularly those for which robust exploit code exists in
the public domain.
Name Desc cve/ms
reuse of
Pass the hash NTLM Mimikatz
hash
reuse of
Silver/Golden
NTLM Mimikatz. Lateral movement.
Ticket
hash
Cached
- -
passwords
Session
- -
Highjacking
Token
- -
Manipulation
Unquoted service paths are not escaped, and windows will look
for the file name without spaces, before it looks for file names
Unquoted
- with spaces. If a service is called Image Viewer, we might be able
service paths
to execute a payload named "Image". Windows will try to run
Image first, before considering other file names with spaces.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Autorun - -
Bad write
- -
permissions
Knowledge of common post exploitation activities:
• obtain password hashes, both from the local SAM and cached credentials
• obtaining locally-stored clear-text passwords
• crack password hashes
• check patch levels
• derive list of missing security patches
• reversion to previous state
SAM credential dump
SAM = Security Accounts Manager (SAM) On windows victim machine
reg save hklm\system system
reg save hklm\sam sam
On Attacker Kali
samdump2 system sam
Hash Cracking
We can use hashcat. Hash.txt will have the hashes saved into it.
john --format=lm hash.txt
hashcat -m 3000 -a 3 hash.txt
Check patch levels
wmic qfe get Caption,Description,HotFixID,InstalledOn
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
SMS
SUS
WSUS
MBSA
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Benefits
Gives clear view of possible attack vectors.
Enumeration (Discovery)
General enumeration
Scan all ports. There may be more applications on other ports.
nmap -p- <target_ip>
Request Analysis
• Burpsuite
• OWASP ZAP. Do not use ZAP in OSCP exams.
• POSTMAN - Good for API development. Good to use for sending manual requests.
Mastery of Burpsuite is recommended.
Path/Directory discovery
• Dirbuster - https://tools.kali.org/web-applications/dirbuster
• Gobuster - https://github.com/OJ/gobuster
• WFUZZ - https://tools.kali.org/web-applications/wfuzz
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
H6 Input Validation
The importance of input validation as part of a defensive coding strategy. How input validation can be
implemented and the differences between white listing, black listing and data sanitisation.
Importance
Escaping HTML special characters will decrease risk of XSS and SQLinjection attacks. For file uploads, it is
important to only allow .jpg for example. If we allow any kind of files, attackers have an easy time
uploading malicious PHP files, or other code exuction payloads.
Black Listing
• Specify which file extensions are not allowed.
• Specify what symbols are not allowed in input field, usually done via regular expressions(Regex).
If we fail to specify, everything else is allowed. White listing is recommended.
White listing
• Specify which file extensions are allowed.
• Specify what symbols are allowed in input field, usually done via regular expressions(Regex).
Everything else is blocked by default.
Input sanitization
Author's Note: In this context of input validation, i believe Data sanitization refers to input sanitization.
Data sanitization deals with how we can securely erase
data. https://en.wikipedia.org/wiki/Data_sanitization
https://www.esecurityplanet.com/endpoint/prevent-web-attacks-using-input-sanitization/
Some parts to not of where we need to sanitize inputs:
• HTML output
• HTML attributes
• Javascript
• CSS
• SQL
• Cookies
• HTTP Headers
• URL GET parameters
• POST data
Depending on how the server processes data, even HTTP headers such as "User Agent" can be used for
SQL injection. More
reading: https://www.w3schools.com/php/php_form_validation.asp https://dev.to/mrkanthaliya/valida
ting-and-sanitizing-user-inputs-on-python-projects-rest-api-5a4 This
import bleach
bleach.clean('<script>alert("You have been hacked")</script> )
The above python code will prevent the XSS attack from running.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
H9 Cross-site Scripting(CSS)
Potential implications of a cross site scripting vulnerability. Ways in which the technique can be used to
benefit an attacker.
Types of XSS
https://portswigger.net/web-security/cross-site-scripting
1. Reflected
2. Stored
3. DOM-Based
Reflected XSS is the simplest variety of cross-site scripting. It arises when an application receives data in
an HTTP request and includes that data within the immediate response in an unsafe way.
Stored XSS (also known as persistent or second-order XSS) arises when an application receives data from
an untrusted source and includes that data within its later HTTP responses in an unsafe way.
DOM-based XSS (also known as DOM XSS) arises when an application contains some client-side
JavaScript that processes data from an untrusted source in an unsafe way, usually by writing the data
back to the DOM.
Source: Portswigger
See the Portswigger article for XSS prevention.
Implications
Attackers can use an innocent web app to launch attacks.
• In modern context, XSS attacks can cause users of the vulnerable webserver help attackers mine
bitcoin or other cryptocurrencies. This attack is
called Cryptojackinghttps://www.varonis.com/blog/cryptojacking/
• Defacement of website is possible.
• DoS attacks may be attempted by using users of the vulnerable web app
• Since attacked is launced by users of affected webapp, the real attacker's identity is hidden. Of
course, the web app can trace who placed the XSS payloads, but this may take time and effort.
•
H10 Use of Injection Attacks
Potential implications of injection vulnerabilities: • SQL injection • LDAP injection • Code injection • XML
injection
Ways in which these techniques can be used to benefit an attacker.
• Extraction of data, hence leaking data
• Credentials and other sensitive information may be leaked
• Code execution can be achieved.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• Once Code execution is achieved, it is possible to take over the server. Attackers may put in back
doors, use the server as a botnet zombie, or whatever else the attacker wants.
H11 Session Handling
Common pitfalls associated with the design and implementation of session handling mechanisms.
A session is the time where a user is using the
website. https://cheatsheetseries.owasp.org/cheatsheets/Session_Management_Cheat_Sheet.html
The session may manage temporary data, authentication and authorization data that the server can
process.
Session Hijacking
A session of an authenticated user and an unauthenticated user is different. An attacker will look to
obtain session cookie data of an authenticated user.
Once we have the authenticated session cookie, it may be possible to access restricted pages by
pretending to be the authenticated user.
Session Hijacking can be done through XSS as well, likely "stored XSS". A javascript code can read cookie
data and send it over the web.
H12 Encryption and encoding
Common techniques used for encrypting data in transit and data at rest, either on the client or server
side. Identification and exploitation of Encoded values (e.g. Base64) and Identification and exploitation
of Cryptographic values (e.g. MD5 hashes) Identification of common SSL vulnerabilities
Common Techniques
RSA for HTTPS. Data maybe transferred as Base64 encoding string
Identification of Base64
We may see an == at the back of the long string. This is due to Base64's block requirements. If there are
no empty blocks, there will not be the = symbols. An easy way to identify is just to run through
Cyberchef or Burpsuite decoder and see if the output makes sense.
Identification of MD5
MD5 hash has 33 characters.
We can use tools like hash-identifier to help guess the Hash types https://tools.kali.org/password-
attacks/hash-identifier
H13 Source Code Review
Common techniques for identifying and reviewing deficiencies in the areas of security.
Code review usually done by developers before pushing the code to production environment. This can
be done through the engineer, and automated tools.
Static Code analysis
https://owasp.org/www-community/Source_Code_Analysis_Tools
Many tools for code analysis.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
The discovery of valid usernames from network services like rusers, rwho, SMTP, and finger can be
considered as part of information gathering or enumeration during the reconnaissance phase of security
assessments. These services may reveal user-related information, which can be valuable for an attacker
trying to understand the target network.
1. rusers and rwho:
• rusers (Remote Users):
• This service provides a list of users who are currently logged into the remote system.
• Command: rusers
• rwho (Remote Who):
• Similar to rusers, it displays information about users currently logged into the remote
system.
• Command: rwho
2. SMTP (Simple Mail Transfer Protocol):
• SMTP Enumeration:
• Enumerating user accounts through SMTP involves querying the mail server for valid
user accounts.
• Techniques may include using the VRFY and EXPN commands:
• VRFY <username>: Verifies the existence of a user.
• EXPN <mailing list>: Expands a mailing list.
3. finger:
• Finger Daemon:
• The finger service allows users to query information about users on a remote system.
• Command: finger <username>@[host]
• Finger daemon retrieves information from the /etc/passwd file or a similar user
database.
• Abuse of Finger Daemon:
• Finger service, when misconfigured or overly permissive, can leak sensitive information
such as usernames, full names, and possibly other details.
• Attackers may use it for username enumeration by querying for existing usernames.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
F2 Unix vulnerabilities
Recent or commonly found Solaris vulnerabilities, and in particular those for which there is exploit code
in the public domain.
Use of remote exploit code and local exploit code to gain root access to target host
Common post exploitation activities:
Solaris Vulnerabilities
Author's Notes: Couldn't find any that is generic enough to put in here... :(
Linux Vulnerabilities
• Dirty Cow kernel exploit
Generally, if the kernel version is 3+, it is definitely vulnerable to some kernel exploits
Exfiltrate password hashes & crack
Linux password files.
/etc/passwd
/etc/shadow
Once we have these 2, it may be possible to do wordlist attacks, or bruteforce.
Check patch levels
uname -a
Derive list of missing security patches
Author's Notes: Each flavour or distribution have their own package managers. Each handle updating
differently.
For example, Debian or Ubuntu with APT package manager:
APT command description
apt list --upgradable grep "-security" List all updates that are security.
Taken from: learnsomemore, https://askubuntu.com/questions/774805/how-to-get-a-list-of-all-
pending-security-updates
reversion to previous state
Solaris reverting snapshots https://docs.oracle.com/cd/E36784_01/html/E36820/revertsnap.html
• svcadm restart manifest-import
• svcadm refresh
• svccfg refresh
Linux does not have a default "System Restore" function. There are packages that can help with this.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
FTP access control Anonymous access to FTP servers Risks of allowing write access to anonymous users.
Even if the ftpuser password is leaked, attackers cannot SSH in through the ftpuser.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
F4 Sendmail/ SMTP
Valid username discovery via EXPN and VRFY Awareness of recent Sendmail vulnerabilities; ability to
exploit them if possible Mail relaying
Banner Grabbing
nc -vn <target_ip> 25
Finding Information
HELO # or HELO x
VRFY root # will check if this user in system or not.
EXPN root # will check user and may reveal email address
Auto enumeration
nmap --script smtp-enum-users <target_ip>
Recent vulnerabilities
Mail Relaying
Often used in the cloud to help businesses send mass emails, overcoming SMTP limits set by providers
etc. https://blog.mailchannels.com/what-is-an-smtp-relay-service
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Enumerating shares
showmount -e <target_ip>
Launching attack
CASE: A file has the following read permissions: UID=1103
When we mount it, we need similar permissions to access it. We can add a new user into our attacker
machine with the UID of 1103
Add a user.
sudo useradd -u 1103 tempuser
Change the user's password
sudo passwd tempuser
Change user of the terminal to tempuser
su tempuser
Try and access the file.
If a file needs root, we can change to our own root user to access it. The same process goes for GID.
Root Squashing
Root squash is a special mapping of the remote superuser (root) identity when using identity
authentication (local user is the same as remote user). Under root squash, a client's uid 0 (root) is
mapped to 65534 (nobody). It is primarily a feature of NFS but may be available on other systems as
well.
Root squash is a technique to avoid privilege escalation on the client machine via suid executables
Setuid. Without root squash, an attacker can generate suid binaries on the server that are executed as
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
root on other client, even if the client user does not have superuser privileges. Hence it protects client
machines against other malicious clients.
F6 Berkeley R* Service (Berkeley r-commands)
https://en.wikipedia.org/wiki/Berkeley_r-commands
Berkeley r* service:
• access control (/etc/hosts.equiv and .rhosts)
• trust relationships Impact of poorly-configured trust relationships.
Berkeley r-commands is a suite created 1981 for sending remote commands from one Unix computer to
another. It is not in use today, however, we may still see some or its services, such as rlogin, running in
CTFs or labs.
Commands
• rlogin - remote login
• rsh - remote shell. This is a server, does not require login.
• rexec - remote execute. This is a server, requires login.
• rcp - remote copy
• rwho - remote who
• rstat - rstat returns performance statistics from the kernel.
• ruptime - shows how long it has been since last restart. If not response, computer marked as
down.
Those r-commands which involve user authentication (rcp, rexec, rlogin, and rsh) share several serious
security vulnerabilities:
• All information, including passwords, is transmitted unencrypted (making it vulnerable to
interception).
• The .rlogin (or .rhosts) file is easy to misuse. They are designed to allow logins without a
password, but their reliance on remote usernames, hostnames, and IP addresses is exploitable.
For this reason many corporate system administrators prohibit .rhosts files, and actively
scrutinize their networks for offenders.
• The protocol partly relies on the remote party's rlogin client to provide information honestly,
including source port and source host name. A corrupt client is thus able to forge this and gain
access, as the rlogin protocol has no means of authenticating other machines' identities, or
ensuring that the requesting client on a trusted machine is the real rlogin client.
• The common practice of mounting users' home directories via NFS exposes rlogin to attack by
means of fake .rhosts files - this means that any of NFS's security faults automatically plague
rlogin.
Due to these problems, the r-commands fell into relative disuse (with many Unix and Linux distributions
no longer including them by default). Many networks that formerly relied on rlogin and telnet have
replaced them with SSH and its rlogin-equivalent slogin.
Source: https://en.wikipedia.org/wiki/Berkeley_r-commands#Security
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
F9 Secure Shell(SSH)
Identify the types and versions of SSH software in use Securing SSH Versions 1 and 2 of the SSH protocol
Authentication mechanisms within SSH
Banner Grabbing
https://github.com/jtesta/ssh-audit nc -vn <target_IP> 22 ssh-audit.py [-1246pbcnjvlt]
<host>
Securing SSH
https://linux.die.net/man/5/sshd_config
Protection tools
https://www.sshguard.net/ https://www.fail2ban.org/wiki/index.php/Main_Page
These are log monitoring and response tools.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Virtual Hosting
Tradditionally, websites are hosted on computers within an office environment, where the office owns
the physical hardware connected to the internet, and is responsible of hardware maintenance and such.
Virtual Hosting is where We can "split" the computer in a way where we can host multiple websites or
subdomains. https://en.wikipedia.org/wiki/Virtual_hosting
We will likely see this in cheap shared hosting services such as GoDaddy.
Web Proxies
https://en.wikipedia.org/wiki/Proxy_server
Client -> Proxy Server -> web server
The Proxy server sits inbetween the client and the webserver. It can serve functions such as monitoring
and filtering, firewall, loadbalancing functions etc.
In pentesting, we may use proxy servers to simulate some behaviours of the machines to accurately
retrieve data.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Apache
On its own, Vulnerabilities in the servers are usually due to misconfigurations. e.g. HTTP PUT/COPY
methods.
APACHE is often packaged together with PHP. Most vulnerabilities will be found as application
vulnerabilities rather than Apache vulnerabilities.
Application Tier
Commonly using REST, RESTFUL or SOAP APIs, this is the back end where data processing occurs.
Database Tier
For storing and retrieving data.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
G4 Web Protocols
Web protocols: HTTP, HTTPS, SOAP. All HTTP web methods and response codes. HTTP Header Fields
relating to security features
https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol
Request-Response model. Browser sends requests -> Server responds with data -> Browser shows data
on screen for users
HTTP Requests
HTTP Request Header
Methods are a way for HTTP to send and receive data, and may have specific functions. Servers may
filter request using any of the information here.
HTTP METHODS
https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods Extract from Mozzila, Methods
HTTP defines a set of request methods to indicate the desired action to be performed for a given
resource. Although they can also be nouns, these request methods are sometimes referred to as HTTP
verbs. Each of them implements a different semantic, but some common features are shared by a group
of them: e.g. a request method can be safe, idempotent, or cacheable.
GET The GET method requests a representation of the specified resource. Requests using GET should
only retrieve data.
HEAD The HEAD method asks for a response identical to that of a GET request, but without the response
body.
POST The POST method is used to submit an entity to the specified resource, often causing a change in
state or side effects on the server.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
PUT The PUT method replaces all current representations of the target resource with the request
payload.
DELETE The DELETE method deletes the specified resource.
CONNECT The CONNECT method establishes a tunnel to the server identified by the target resource.
OPTIONS The OPTIONS method is used to describe the communication options for the target resource.
TRACE The TRACE method performs a message loop-back test along the path to the target resource.
PATCH The PATCH method is used to apply partial modifications to a resource.
Usage: GET - Static webpages. Just sends HTML data or API data over. Data transmitted over URL
parameters POST - Usually used with forms. Data is send in Request BODY.
There are other methods like COPY.
Dangerous Methods: PUT/COPY - If we can put files, we achieve file upload. And if it is unrestricted file
upload, it can be an entrypoint into the server.
SSL/TLS
Latest secure TLS uses TLS1.3.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
xmlns:m="http://www.example.org">
<soap:Header>
</soap:Header>
<soap:Body>
<m:GetStockPrice>
<m:StockName>T</m:StockName>
</m:GetStockPrice>
</soap:Body>
</soap:Envelope>
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Referrer-Policy: origin-when-cross-origin
Cache-Control: no-store
Clear-Site-Data: "*"
Feature-Policy: microphone 'none'; camera 'none'
Refer here for more details https://www.netsparker.com/blog/web-security/http-security-
headers/ https://infosec.mozilla.org/guidelines/web_security#web-security-cheat-sheet
Active Server Pages(ASP) Common in Microsoft .NET frameworks and IIS. .asp,.aspx
PHP: Hypertext Commonly used language. Wordpress blog framework uses php.
Preprocessor .php
Common Gateway A set of protocols to communicate with HTTP server. Has Python,
Interface(CGI) Perl based CGI.
Rust rocket.rs
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
https://owasp.org/www-pdf-
archive/OWASP_NL_Top_Ten_Web_Application_Vulnerabilities_in_J2EE.pdf. Not
J2EE
many known vulnerabilties as found in ExploitDB. SAP NetWeaver J2EE Engine 7.40
- SQL Injection
Ruby on
Has remote code exucution, file disclosures etc.
Rails
There isn't a web server called AJAX, but it is for asynchronous communications
AJAX
with backend servers.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
G8 Web APIs
Web APIs (Application Programming Interfaces) play a crucial role in enabling communication and
interaction between different software applications. They allow developers to access and use the
functionality of a web service, application, or server. Here, I'll provide an overview of three types of
application interfaces: CGI, ISAPI filters, and Apache modules.
1. CGI (Common Gateway Interface):
• Description:
• CGI is one of the earliest and simplest methods for creating dynamic content on the
web.
• It defines a standard for communication between web servers and external programs,
called CGI scripts.
• How it Works:
• When a CGI script is requested, the web server executes the script, passing user input to
it through environment variables and collecting the script's output to send back to the
client.
• Use Cases:
• CGI is often used for simple web applications and scripts written in languages like Perl,
Python, or shell scripts.
2. ISAPI (Internet Server Application Programming Interface) Filters:
• Description:
• ISAPI is a Microsoft technology used in Windows-based web servers, particularly
Internet Information Services (IIS).
• ISAPI filters are DLLs (Dynamic Link Libraries) that can be loaded into the IIS process to
modify or enhance the behavior of the server.
• How it Works:
• ISAPI filters intercept and process HTTP requests and responses before they reach the
web application. They can perform tasks such as authentication, logging, or content
modification.
• Use Cases:
• ISAPI filters are often used for extending the functionality of IIS servers, implementing
custom security measures, or integrating with third-party services.
3. Apache Modules:
• Description:
• Apache modules are similar to ISAPI filters but are used in the context of the Apache
HTTP Server, an open-source web server software.
• How it Works:
• Apache modules are dynamically loaded into the server process and can modify various
aspects of the server's behavior, such as handling specific types of requests or
implementing custom authentication.
• Use Cases:
• Apache modules are widely used for extending the functionality of the Apache server.
They can range from security modules to those supporting specific web application
frameworks.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
G9 Web Subcomponents
Web architecture sub-components: Thin/Thick web clients, servlets and applets, Active X. Flash
Application Testing .Net Thick Clients Java Applets Decompilation of client-side code
Servlets
A servlet is a small Java program that runs within a Web server.
Execution of Servlets basically involves six basic steps:
The clients send the request to the webserver. The web server receives the request. The web server
passes the request to the corresponding servlet. The servlet processes the request and generates the
response in the form of output. The servlet sends the response back to the webserver. The web server
sends the response back to the client and the client browser displays it on the screen.
Source: https://www.geeksforgeeks.org/introduction-java-servlets/
Applets
An applet is a program written in the Java programming language that can be included in an HTML page,
much in the same way an image is included in a page.
Applet vs Servlet
https://www.geeksforgeeks.org/difference-between-applets-and-servlets/
Applet Servlet
ActiveX
https://en.wikipedia.org/wiki/ActiveX Created by Microsoft for Internet Explorer. Still available in
Internet Explorer 11, but not in the new Microssft Edge.
Provides frontend media interactions and functionalities, like plugins.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
I6 Parameter Manipulation
Parameter Manipulation Techniques:
• Client-Side Proxies:
• Description: Intercepting and modifying requests and responses between the client and
server.
• Tools: Burp Suite, OWASP ZAP.
• Techniques: Altering parameter values, testing for security flaws.
Cookies
Form Fields
URL Query Strings
HTTP Headers
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Appendix J: Databases
J1 Microsoft SQL Server
Knowledge of Common Attack Vectors:
• SQL Injection:
• Example Payload:
J2 Oracle RDBMS
Derivation of Version and Patch Information:
• Command to Retrieve Version:
Server=myServerAddress;Database=myDatabase;User
Id=myUsername;Password=myPassword;
• Details: Configuring a connection string for a .NET application.
• Oracle:
• Example Connection String:
jdbc:oracle:thin:@//myhost:1521/mydb
• Details: Configuring a JDBC connection string for a Java application.
• MySQL:
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
jdbc:mysql://localhost:3306/mydatabase?user=myuser&password=mypassword
• Details: Configuring a JDBC connection string for a MySQL database.
• Access (Microsoft Access):
• Example Connection String:
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myfolder\mydatabase.accdb;
• Details: Configuring an OLEDB connection string for an Access database.
MS-SQL
MS-SQL : DB Version
SELECT @@version
EXEC xp_msver
(detailed version info)
SELECT name FROM syscolumns WHERE id=(SELECT id FROM sysobjections WHERE name='mytable'); :
List columns
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Postgres
SELECT commands
SELECT version(); : DB Version
MySQL
Oracle
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
SELECT Commands
SELECT * FROM v$version; : DB Version
(SELECT version FROM v$instance;)
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
IMP: Note
Ports
Port Short Name Full Form of Port Protocol TCP/UDP
7 Echo Echo UDP
9 Discard Discard UDP
13 Daytime Daytime UDP
17 QotD Quote of the Day UDP
19 Chargen Character Generator UDP
20 FTP (Data) File Transfer Protocol (Data) TCP
21 FTP (Control) File Transfer Protocol (Control) TCP
22 SSH Secure Shell TCP
23 Telnet Telnet TCP
25 SMTP Simple Mail Transfer Protocol TCP
43 Whois Whois UDP
49 TACACS+ Terminal Access Controller Access Control UDP
System Plus
53 DNS Domain Name System UDP
67 DHCP (Client) Dynamic Host Configuration Protocol UDP
68 DHCP (Server) Dynamic Host Configuration Protocol UDP
69 TFTP Trivial File Transfer Protocol UDP
70 Gopher Gopher UDP
79 Finger Finger UDP
80 HTTP Hypertext Transfer Protocol TCP
88 Kerberos Kerberos UDP
110 POP3 Post Office Protocol 3 TCP
111 Sun RPC Sun Remote Procedure Call UDP
112 VRRP Virtual Router Redundancy Protocol UDP
113 Ident Identification Protocol TCP
119 NNTP Network News Transfer Protocol TCP
123 NTP Network Time Protocol UDP
135 DCOM Distributed Component Object Model TCP
137 NetBIOS (Name NetBIOS Name Service UDP
Service)
138 NetBIOS (Datagram) NetBIOS Datagram Service UDP
139 NetBIOS (Session) NetBIOS Session Service UDP
143 IMAP Internet Message Access Protocol TCP
161 SNMP Simple Network Management Protocol UDP
194 IRC (Official) Internet Relay Chat (Official) TCP
443 HTTPS Hypertext Transfer Protocol Secure TCP
465 SMTPS SMTP Secure TCP
513 rlogin Remote Login TCP
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Berkeley R Commands
Protocol Port Client Daemon
Windows
Commonly Associated
Protocol Port Service
OS/remarks
TCP 23 Telnet -
TCP 25 SMTP -
TCP/UDP 53 DNS -
TCP/UDP 88 Kerberos -
UDP 67 DHCP -
UDP 69 TFTP -
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Commonly Associated
Protocol Port Service
OS/remarks
Terminal Services/Remote
TCP 3389 -
Desktop Protocol
TTL Fingerprinting
------------------- -----------
Windows 128
Linux 64
Network 255
Solaris 255
IP Protocols(Internet Protocol)
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Full Form
MAC: Media Access Control Address
UDP: User Datagram Protocol
FHRP: First Hop Redundancy Protocol
TCP (Transmission Control Protocol)
UDP (User Datagram Protocol)
ICMP (Internet Control Message Protocol)
IGMP (Internet Group Management Protocol)
OSPF (Open Shortest Path First)
STP: Spanning Tree Protocol
CDP: Cisco Discovery Protocol
DTP: Dynamic Trunking Protocol
HSRP: Hot Standby Router Protocol
VTP: VLAN Trunking Protocol
NIC: Network Interface Card
NAT: Network Address Translation
IETF: Internet Engineering Task Force
IANA: Internet Assigned Numbers Authority
ARP: Address Resolution Protocol
IGMP: Internet Group Management Protocol
FQDN: Fully Qualified Domain Name
IOC: Indications of Compromise
POC: Point of Contact,Proof of Concept
SIEM: Security Information and Event Management
MBSA: Microsoft Baseline Security Analyzer
EGP: Exterior Gateway Protocol
EAP: Extensible Authentication Protocol
LEAP: Lightweight Extensible Authentication Protocol
PEAP: Protected Extensible Authentication Protocol
FSMO: Flexible Single Master Operations
NTLM: New Technology LAN Manager
SOAP: Simple Object Access Protocol
OSSTMM: Open Source Security Testing Methodology Manual
ISECOM: Institute for Security and Open Methodologies
OWASP: Open Web Application Security Project
PTES: Pen Testing Execution Standard
CPNI: Centre for the Protection of National Infrastructure (UK best practices)
HIPAA: Health Insurance Portability and Accountability Act
FISMA: Federal Information Security Management Act
GLBA: Gramm-Leach-Bliley Act
GDPR: General Data Protection Regulation
FERPA: Family Educational Rights and Privacy Act
PCI DSS: Payment Card Industry Data Security Standard
TTL: Time to Live
CSMA/CA: Carrier Sense Multiple Access with Collision Avoidance
CDMA: Code Division Multiple Access (GSM competitor)
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Shared Media:
ARP Spoofing: In a local network, devices use ARP to map IP addresses to MAC addresses. When a
device needs to communicate with
another device on the same network, it sends out an ARP request to discover the MAC address
associated with a particular IP address.
Switched Media:
MAC Address Spoofing: Security testing should assess the effectiveness of switch configurations,
including the potential for
MAC address spoofing.
VLAN Hopping: Weaknesses in VLAN implementations can lead to VLAN hopping, allowing unauthorized
access to different segments
of the network.
Active OS Fingerprinting:
Nmap Command: nmap -O target_ip
Xprobe2 Command: xprobe2 -T1 target_ip
Active OS Fingerprinting
Sends specially crafted packets to the remote OS and analyzes the received response.
Passive OS Fingerprinting:
P0f: p0f -i eth0
satori Command: satori -i eth0
Passive OS fingerprinting
Observing host behavior and packets (DHCP, TCP, etc) to determine OS
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Port Count
65,536 (2^16) Ports
Hashes
MD5
SHA1
MySQL < 4.1
MySQL5
MD5 (WP)
MD5 (phpBB3)
LM / NTLM
LM Hash
Primary Windows LAN hash before Windows NT. 14 character limit
Hash Lengths
MD5 : 16 Bytes 128 bits.
SHA-1 : 20 bytes 160 bits.
SHA-256 : 32 Bytes 256 bits.
SHA-512 : 64 Bytes 512 bits.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
• Asymmetric Encryption
• Rivest-Shamir-Adleman (RSA): 1024 to 4096 bits
• Elliptic Curve Cryptography (ECC): 160 to 521 bits
• Diffie-Hellman Key Exchange: Depends on specific group parameters chosen (e.g., 1024,
2048, 3072 bits)
• ElGamal: Depends on specific group parameters chosen (e.g., 1024, 2048, 3072 bits)
• DSA (Digital Signature Algorithm): 1024 to 3072 bits
• PGP (Pretty Good Privacy): Depends on the specific algorithms used in the key pairs
(e.g., RSA, DSA, ElGamal)
• RSA (OAEP): 1024 to 4096 bits
• ECC Eliptic Curve
• Paillier
• Merkle-Helman
• Cramer-Shoup
Cisco Password Encryption
secret 4 : Crappy SHA256
secret 5 : Salted MD5
secret 7: Crappy Cisco encryption to prevent cleartext in the config
secret 8 : PBKDF2 (Password-Based Key Derivation Function 2) bruteforce target
secret 9 : scrypt (BINGO)
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
A / AAAA Record
IP Address
DNS Queries
A Record Query:
• Resolves a domain name to an IPv4 address.
Example: nslookup example.com
AAAA Record Query:
• Resolves a domain name to an IPv6 address.
Example: nslookup -type=AAAA example.com
MX Record Query:
• Retrieves mail exchange (MX) records for a domain.
Example: nslookup -type=MX example.com
NS Record Query:
• Retrieves name server (NS) records for a domain.
Example: nslookup -type=NS example.com
PTR Record Query:
• Performs reverse DNS lookup to find the domain associated with an IP address.
Example: nslookup 8.8.8.8
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Email Headers
Example Email Header:
Analysis:
Source IP Address:
The "Received" header shows the originating IP address (192.168.1.100) of the sending mail
server (mail.example.com).
Mail Server Software:
The "by" and "with" fields indicate the mail server software (Postfix) and its version.
Message ID:
The "id" field (ABC123) may contain a unique identifier for the email.
Timestamp:
The timestamp provides information about when the email was sent.
News Headers (NNTP)
Path: example.com!news.example.net!news-server!example.org!user
From: [email protected] (John Doe)
Newsgroups: alt.test
Date: Tue, 23 Nov 2023 12:00:00 GMT
Organization: Example Organization
Lines: 20
Message-ID: <[email protected]>
Analysis:
Path:
The "Path" header shows the route the message took through the network of news servers.
Sender's Email:
The "From" header reveals the email address of the sender ([email protected]) and their
display name.
Newsgroups:
Specifies the newsgroups to which the message belongs (alt.test).
Date:
Indicates the date and time when the message was posted.
Organization:
The "Organization" header may reveal information about the organization associated with the
sender.
Message ID:
Similar to email headers, the "Message-ID" field contains a unique identifier for the news
message.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Yersinia
Layer 2 testing tool (STP, CDP, VLAN Trunking, etc)
SIP Requests
INVITE
ACK
BYE
CANCEL
OPTIONS
REGISTER
PRACK
SUBSCRIBE
NOTIFY
PUBLISH
INFO
REFER
MESSAGE
UPDATE
SNMP
Microsoft SNMP
1.3.6.1.2.1.25.1.6.0
System Processes
1.3.6.1.2.1.25.4.2.1.2
Running Programs
1.3.6.1.2.1.25.4.2.1.4
Processes Path
1.3.6.1.2.1.25.2.3.1.4
Storage Units
1.3.6.1.2.1.25.6.3.1.2
Software Name
1.3.6.1.2.1.77.1.2.25
User Accounts
1.3.6.1.2.1.6.13.1.3
TCP Local Ports
SNMP Requests
Get
GetNext
Set
GetBulk
Response
Trap
Inform
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
SMTP
SMTP Requests
MAIL
RCPT
DATA
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
IPv4 SUBNETTING
Range : 0.0.0.0-127.0.0.0
Default Subnet Mask : 255.0.0.0
CIDR Notation : /8
Range : 128.0.0.0-191.255.0.0
Default Subnet Mask : 255.255.0.0
CIDR Notation : /16
Range : 192.0.0.0-223.255.255.0
Default Subnet Mask : 255.255.255.0
CIDR Notation : /24
If the second bit is a "0", it's a class B address (Half of the remaining non-class-A addresses, or one
quarter of the total.)
If the third bit is a "0", it's a class C address (Half again of what's left, or one eighth of the total.)
If the fourth bit is a "0", it's a class D address. (Half the remainder, or one sixteenth of the address
space.) If it's a "1", it's a class E address. (The other half, one sixteenth.)
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Windows
Windows Commands Description
systeminfo: Display detailed configuration information about a computer
System Info and its operating system.
OS Version ver: Display the operating system version.
Services sc query state=all: Display information about all installed services.
Processes and Services tasklist /svc: Display a list of all running processes along with their services.
Current User echo %USERNAME%: Display the current username.
dir /a /s /b C:\*.pdf: Search for all PDF files on the C: drive and its
Find Files of Type subdirectories.
Add User, Make net user <user> <pass> /add<br>net localgroup "Administrators" <user>
Admin /add: Add a new user and make them an administrator.
View Network Info Linux: ifconfig<br>Windows: ipconfig /all: Display network information.
Active Directory C:\Windows\NTDS: Location of the NTDS.dit file, the physical storage file for
Default Location Active Directory.
Domain Common C:\Windows\SYSVOL: Contains Group Policies, Login Scripts, Staging Folders,
Folders etc.
IIS 1 Defaults :Windows NT Addon
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Netcat
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
VLAN
A switched network that is logically segmented by function, project team, or application, without regard
to the physical locations of the users.
vlan.dat
Configurations for VLAN IDs 1-1005
Server
IIS
Microsoft Web Server
Apache / Tomcat
Apache Web Servers
GWS
Google Web Server
Websphere
IBM Web Server
Litespeed
LiteSpeed Tech Web Server
MS-SQL
MS-SQL : DB Version
SELECT @@version
EXEC xp_msver
(detailed version info)
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
SELECT name FROM syscolumns WHERE id=(SELECT id FROM sysobjections WHERE name='mytable'); :
List columns
Postgres
SELECT commands
SELECT version(); : DB Version
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
MySQL
Oracle
SELECT Commands
SELECT * FROM v$version; : DB Version
(SELECT version FROM v$instance;)
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Allow any user from host with a matching local account to log in:
host
host +
host user
Allow all users with matching local accounts from host to log in except for baduser:
host -baduser
host
-host
Allow all users with matching local accounts on all hosts in a netgroup:
+@netgroup
-@netgroup
Allow all users in a netgroup to log in from host as any non-root user:
host +@netgroup
Allow all users with matching local accounts on all hosts in a netgroup except baduser:
+@netgroup -baduser
+@netgroup
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Language Vulns
OSI Model
"Please Dont Nag Tyrannosaurus, She'll Probably Attack"
1 : Physical (Bits)
2 : Data Link (Frames)
3 : Network (Packets)
4 : Transport (Segments)
5 : Session (Data)
6 : Presentation (Data)
7 : Application (Data)
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
TCP/IP Model
"Never Ingest Turian Almonds"
1 : Network Interface
2 : Internet Layer
3 : Transport Layer
4 : Application Layer
Wireless Standards
802.11b - 2.4 GHz 11 Mbps
802.11a - 5 GHz, 54 Mbps
802.11g - 2.4 GHz, 54 Mbps
802.11n - 5 GHz, 108 Mpbs
802.15 - Bluetooth 2.4 GHz
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Web
HTTP Web Methods
*Risky Methods are marked with a star
GET
HEAD (similar to GET)
POST
PUT*
DELETE*
CONNECT*
OPTIONS
TRACE*
PATCH
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Non-Persistent XSS
XSS that occurs when the attacker's script that is injected is not stored in the backend, and the Web-
browser client simply echoes back the results of the script execution. It can be over GET (QueryString) or
POST (Forms) methods.
Can be used to steal cookies, redirect to phishing sites, and force actions if targets click on crafted links
Persistent XSS
malicious code that remains on a website (for ex) until it is removed
Good for getting ahold of forms, tickets, submissions, etc
XML injection
An attack that injects XML tags and data into a database. Can change data, effect how data is processed,
etc.
LDAP Injection
An attack that allows for the construction of LDAP statements based on user input statements, which
can then be used to access the LDAP database or modify the database's information
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Wire-Wireless
Wireless Standards
802.11b - 2.4 GHz 11 Mbps
802.11a - 5 GHz, 54 Mbps
802.11g - 2.4 GHz, 54 Mbps
802.11n - 5 GHz, 108 Mpbs
802.15 - Bluetooth 2.4 GHz
10BaseT
LAN (Ethernet)
10 Mbps
100BaseT
"Fast Ethernet"
100 Mbps
1000BaseT
Gigabit Ethernet
1 GB
CAT5
type of cable that has the ability to transfer information from one computer to another
Ethernet
a system for connecting a number of computer systems to form a local area network, with protocols to
control the passing of information and to avoid simultaneous transmission by two or more systems.
Token Ring
A networking technology developed by IBM in the 1980s. It relies upon direct links between nodes and a
ring topology, using tokens to allow nodes to transmit data.
Wireless Network
Any type of computer network that is not connected by cables of any kind.
802.11
WEP
Wired Equivalent Privacy
WPA
Wireless Protected Access
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Definition
Kerberos
A computer network authentication protocol that works on the basis of tickets to allow nodes
communicating over a non-secure network to prove their identity to one another in a secure manner.
Postgres
An object-relational database management system with an emphasis on extensibility and standards
compliance.
X11
A windowing system for bitmap displays, common on Unix-like operating systems. Provides the basic
framework for a GUI environment: drawing and moving windows on the display device and interacting
with a mouse and keyboard.
IPTables
A user-space utility program that allows a system administrator to configure the tables provided by the
Linux kernel firewall and the chains and rules it stores.
pfSense
Open source firewall/router computer software distribution based on FreeBSD.
nslookup
A network administration command-line tool for querying the Domain Name System (DNS) to obtain
domain name or IP address mapping or for any other specific DNS record.
APIPA
Automatic Private Internet Protocol Addressing
MTU
maximum transmission unit - The largest data unit a network (for example, Ethernet or token ring) will
accept for transmission.
Unicast
a message that is sent from a single sender to a single recipient
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Multicast
a form of transmission in which a message is delivered to a group of hosts
Router Protocol
a protocol used between routers so that they can learn routes to add to their routing tables.
Hybrid Routing
Routing protocol that uses the attributes of both distance vector and link state
IPv6
A new protocol developed to replace IPv4, addressing the issue of IP address exhaustion.
No broadcast, has Anycast instead.
128-bit in Hexidecimal
MAC Address
A Media Access Control address is a hardware address that uniquely identifies each node on a network.
Traditional MAC addresses are 12-digit (6 bytes, or 48 bits) hexadecimal numbers.
Network Architectures
The design of a computer network; includes both physical and logical design.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Netcraft
Company that tracks web statistics, used to fingerprint web servers
WHOIS
a public Internet database that contains information about Internet domain names and the people or
organizations that registered the domains. It is a source of information that can be used to exploit
system vulnerabilities.
Egress filtering
Filtering outbound traffic
Ingress Filtering
Filtering inbound traffic
nbtstat
A Windows utility that is used to view and manage NetBIOS name cache information.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
Master Browser
Present on every subnet. Needed for a routed TCP/IP network
LANMAN hash
The original hash used to store Windows passwords, known as LM hash, based off the DES algorithm.
(Legacy)
NTLM Hash
Successor to the LM hash. A more advanced hash used to store Windows passwords, based off the RC4
algorithm.
NTLMv2
NTLMv2 was developed in response to attacks against the LM authentication protocol. The LM protocol,
as the name implies, was originally used in the old LAN Manager Network operating system in the mid-
1980s. It uses the MD5 password hash algorithm.
Static Routing
An type of routing used by a network
administrator to manually specify the mappings in the routing table.
Dynamic Routing
Allows a router to determine the best route between two nodes automatically and then store this
information in a routing table.
Base64 Encoding
An encoding scheme which represents any binary data using only printable ASCII characters. Usually
used for encoding email attachments over SMTP
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/
dsquery
Remote Server Administration Tools (RSAT) feature pack tool used to enumerate Windows Domain
nslookup
A network administration command-line tool for querying the Domain Name System (DNS) to obtain
domain name or IP address mapping or for any other specific DNS record.
CPSA_NOTE@Solanki_Ravikumar https://solankirv.github.io/ravisolanki/