Notes - MCS
Analysis and Exploration of Vulnerabilities
Notes - MCS
Analysis and Exploration of Vulnerabilities
  • Analysis and Exploration of Vulnerabilities
  • Vulnerabilities
    • Vulnerabilities
      • CIA Triad
      • Vulnerability Sources
    • Vulnerability Tracking
    • Vulnerability Disclosure
  • Vulnerability Assessment of Networked Systems
    • Vulnerability Research
    • Vulnerability Assessment
    • Penetration Test
      • Scope
    • Types of Assessments
    • Vulnerability Management Life Cycle
  • Enumeration and Information Leakage
    • Network access
    • Information leakage
    • Errors
    • Web Sources and Support Files
    • Cookies
    • Ports
    • Banners
    • OS Fingerprinting
  • Injection
    • CWE-74
    • How it works
    • Common Pitfalls
    • CWE-89 SQL Injection
    • Using SQL
    • Things to consider
    • The NULL plate
    • SQLi types
    • SQL Injection - Avoiding
    • CWE-78 OS Command Injection
    • Command Override
    • Argument Exploitation
    • GTFOBins and LOLBAS
    • Environmental Variables
    • Parameter Expansion
    • Code Injection - CWE-94
    • Avoiding OS Injection
  • Broken Authentication
    • OWASP A2
    • HTTP Basics
    • HTTP Communication
    • Authentication
    • Authentication Flow State
    • Referer Header
    • SESSION ID
    • Cookies (RFC 6265)
    • JWT - JSON Web Tokens
  • XSS Cross Site Scripting
    • Prevalence and Detectability
    • Reflected XSS
    • Stored XSS
    • DOM XSS
    • Cross Site Request Forgery
    • Avoiding XSS
    • Same Origin Policy
  • Concurrency
    • Concurrency
    • CWE-361 - 7PK - Time and State
    • Basic Time Related CWEs
      • CWE-362 – Race Condition
    • Serializability
    • Database ACID characteristic
    • State Related CWEs
    • Basic Side Effects Related CWEs (Covert Channel)
    • Covert Timing Channel
    • Meltdown Type
  • Buffers
    • Buffer Overflow
    • Popularity decline
    • Potentially Vulnerable Software
    • Dominant prevalence
    • Vulnerabilities in languages (mostly C/C++)
    • Why? Memory Structure 101
    • CWE-120 Classic Overflow
      • Practical Examples
    • Stack Based Vulnerabilities
    • Stack Smashing
    • Countermeasures
    • ROP
Powered by GitBook
On this page
  1. Enumeration and Information Leakage

OS Fingerprinting

Network stacks do not behave consistently, and there are specific behaviors.

  • Many RFCs contain optional behavior.

  • Some stacks have bugs.

  • Some stacks have optional behaviors.

  • Some stacks are not fully compliant (e.g., constrained devices).

Fingerprinting is possible by:

  • Sending a sequence of probes.

  • Observing response.

  • Matching behavior against a database.

The process lacks specificity.

  • Fingerprints may not be found for unknown systems.

  • A fingerprint may match multiple systems.

  • A combination of open/closed ports may not allow a full fingerprint.

Example: Nmap TCP Tests T2-T7.

  • TCP null (no flags set) pkt with the IP DF bit set and a window of 128 to an open port.

  • TCP pkt with SYN, FIN, URG, PSH flags set and a window of 256 to an open port. IP DF bit is 0.

  • TCP ACK pkt with IP DF and a window of 1024 to an open port.

  • TCP SYN pkt without IP DF and a window of 31337 to a closed port.

  • TCP ACK pkt with IP DF and a window of 32768 to a closed port.

  • TCP pkt with the FIN, PSH, URG flags set and a window of 65535 to a closed port. IP DF bit is 0.

Mitigation

Restrict the number of ports open.

  • Accurate fingerprinting relies on responses from open ports.

Detect scanning and enumeration with a firewall-specific rule.

  • Simple port maps and fingerprint attempts are easily recognized.

  • Advanced assessments, taking hours/days are not trivial to detect.

If supported, enable network obfuscation mechanisms.

  • OS may emulate the behavior of another system.

Last updated 1 year ago