================================================================================
SIMULATED TLS/SSL AUDIT REPORT — FOR CTF / EDUCATIONAL USE ONLY
All domains, IPs, and certificates are fictional.
Report format modeled after SSLLabs / testssl.sh output.
================================================================================


========================================================================
SERVER 1: legacy-api.acmecorp.example.com (192.0.2.10:443)
Scan Date: 2026-04-07T14:32:00Z
========================================================================

Overall Grade: C
  Rating capped at C — TLS 1.0 and TLS 1.1 enabled
  Rating capped at C — weak cipher suites accepted

Certificate Information:
  Subject:        CN=legacy-api.acmecorp.example.com
  Issuer:         CN=DigiCert SHA2 Extended Validation Server CA
  Serial:         0A:1B:2C:3D:4E:5F:6A:7B:8C:9D:0E:1F:2A:3B:4C:5D
  Valid From:     2025-06-15 00:00:00 UTC
  Valid Until:    2026-06-15 23:59:59 UTC
  Signature Alg:  SHA256withRSA
  Key Type:       RSA 2048 bit
  Key Usage:      Digital Signature, Key Encipherment
  SAN:            legacy-api.acmecorp.example.com
  OCSP Stapling:  No
  Certificate Chain:
    [0] CN=legacy-api.acmecorp.example.com  (2048 bit RSA)
    [1] CN=DigiCert SHA2 Extended Validation Server CA (2048 bit RSA)
    [2] CN=DigiCert Global Root CA (4096 bit RSA)

Protocol Support:
  SSLv2     No
  SSLv3     No
  TLS 1.0   YES  [VULNERABLE — POODLE, BEAST possible]
  TLS 1.1   YES  [DEPRECATED since RFC 8996, March 2021]
  TLS 1.2   Yes
  TLS 1.3   No   [NOT SUPPORTED]

Cipher Suite Listing (in server preference order):
  TLS 1.2:
    TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384          256 bit   (OK)
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256          128 bit   (OK)
    TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384           256 bit   (WEAK — CBC mode)
    TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256           128 bit   (WEAK — CBC mode)
    TLS_RSA_WITH_AES_256_GCM_SHA384                 256 bit   (NO PFS)
    TLS_RSA_WITH_AES_128_GCM_SHA256                 128 bit   (NO PFS)
    TLS_RSA_WITH_AES_256_CBC_SHA256                 256 bit   (WEAK — no PFS, CBC)
    TLS_RSA_WITH_AES_128_CBC_SHA                    128 bit   (WEAK — no PFS, CBC, SHA-1 MAC)
    TLS_RSA_WITH_3DES_EDE_CBC_SHA                   112 bit   (VULNERABLE — Sweet32, no PFS)
    TLS_RSA_WITH_RC4_128_SHA                        128 bit   (VULNERABLE — RC4, no PFS)

  TLS 1.1:
    TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA              256 bit   (WEAK — CBC)
    TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA              128 bit   (WEAK — CBC)
    TLS_RSA_WITH_AES_256_CBC_SHA                    256 bit   (WEAK — no PFS, CBC)
    TLS_RSA_WITH_3DES_EDE_CBC_SHA                   112 bit   (VULNERABLE — Sweet32)
    TLS_RSA_WITH_RC4_128_SHA                        128 bit   (VULNERABLE — RC4)

  TLS 1.0:
    TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA              256 bit   (WEAK — CBC, BEAST)
    TLS_RSA_WITH_AES_256_CBC_SHA                    256 bit   (WEAK — no PFS, CBC, BEAST)
    TLS_RSA_WITH_3DES_EDE_CBC_SHA                   112 bit   (VULNERABLE — Sweet32, BEAST)
    TLS_RSA_WITH_RC4_128_SHA                        128 bit   (VULNERABLE — RC4)

HTTP Security Headers:
  Strict-Transport-Security:    NOT PRESENT  [MISSING HSTS]
  X-Content-Type-Options:       nosniff
  X-Frame-Options:              DENY

Vulnerabilities:
  BEAST (CVE-2011-3389):        VULNERABLE (TLS 1.0 + CBC)
  Sweet32 (CVE-2016-2183):      VULNERABLE (3DES cipher accepted)
  RC4 (CVE-2013-2566):          VULNERABLE (RC4 cipher accepted)
  POODLE TLS:                   Not vulnerable
  Heartbleed (CVE-2014-0160):   Not vulnerable
  ROBOT:                        Not vulnerable
  Downgrade Prevention:         No (TLS_FALLBACK_SCSV not supported)

ISSUES SUMMARY:
  [CRITICAL] RC4 cipher enabled — known broken, trivially exploitable
  [HIGH]     3DES cipher enabled — Sweet32 birthday attack
  [HIGH]     TLS 1.0 enabled — deprecated, multiple known vulnerabilities
  [HIGH]     TLS 1.1 enabled — deprecated per RFC 8996
  [MEDIUM]   CBC mode ciphers present — padding oracle risk
  [MEDIUM]   Static RSA key exchange — no forward secrecy
  [MEDIUM]   HSTS header missing — allows SSL stripping
  [LOW]      TLS 1.3 not supported — missing modern performance/security
  [LOW]      OCSP stapling not enabled


========================================================================
SERVER 2: portal.acmecorp.example.com (192.0.2.20:443)
Scan Date: 2026-04-07T14:35:00Z
========================================================================

Overall Grade: B
  Rating capped at B — certificate expired
  Rating capped at B — HSTS header missing

Certificate Information:
  Subject:        CN=portal.acmecorp.example.com
  Issuer:         CN=Let's Encrypt Authority X3
  Serial:         03:A1:B2:C3:D4:E5:F6:07:18:29
  Valid From:     2025-10-01 00:00:00 UTC
  Valid Until:    2025-12-30 23:59:59 UTC
  ** CERTIFICATE EXPIRED (99 days ago as of scan date) **
  Signature Alg:  SHA256withRSA
  Key Type:       ECDSA P-256
  Key Usage:      Digital Signature
  SAN:            portal.acmecorp.example.com, www.portal.acmecorp.example.com
  OCSP Stapling:  Yes
  Certificate Chain:
    [0] CN=portal.acmecorp.example.com  (256 bit ECDSA P-256)
    [1] CN=Let's Encrypt Authority X3 (2048 bit RSA)
    [2] CN=DST Root CA X3 (4096 bit RSA)
    ** WARNING: DST Root CA X3 expired Sept 30 2021 — some clients may reject **

Protocol Support:
  SSLv2     No
  SSLv3     No
  TLS 1.0   No
  TLS 1.1   No
  TLS 1.2   Yes
  TLS 1.3   Yes

Cipher Suite Listing (in server preference order):
  TLS 1.3:
    TLS_AES_256_GCM_SHA384                          256 bit   (OK)
    TLS_CHACHA20_POLY1305_SHA256                    256 bit   (OK)
    TLS_AES_128_GCM_SHA256                          128 bit   (OK)

  TLS 1.2:
    TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384        256 bit   (OK)
    TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256  256 bit   (OK)
    TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256        128 bit   (OK)
    TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384        256 bit   (WEAK — CBC mode)

HTTP Security Headers:
  Strict-Transport-Security:    NOT PRESENT  [MISSING HSTS]
  X-Content-Type-Options:       nosniff
  X-Frame-Options:              SAMEORIGIN
  Content-Security-Policy:      default-src 'self'

Vulnerabilities:
  BEAST:          Not vulnerable
  Sweet32:        Not vulnerable
  RC4:            Not vulnerable
  POODLE TLS:     Not vulnerable
  Heartbleed:     Not vulnerable
  ROBOT:          Not vulnerable
  Downgrade:      OK (TLS_FALLBACK_SCSV supported)

ISSUES SUMMARY:
  [CRITICAL] Certificate expired — browsers will show security warnings
  [HIGH]     Certificate chain includes expired root (DST Root CA X3)
  [MEDIUM]   HSTS header missing — allows SSL stripping attacks
  [MEDIUM]   One CBC mode cipher in TLS 1.2 list
  [LOW]      Let's Encrypt auto-renewal appears to have failed
  [INFO]     Consider certbot renew --force-renewal or check cron job


========================================================================
SERVER 3: api.acmecorp.example.com (192.0.2.30:443)
Scan Date: 2026-04-07T14:38:00Z
========================================================================

Overall Grade: A+
  No issues found — excellent configuration

Certificate Information:
  Subject:        CN=api.acmecorp.example.com
  Issuer:         CN=Let's Encrypt Authority R3
  Serial:         04:B2:C3:D4:E5:F6:07:18:29:3A
  Valid From:     2026-03-15 00:00:00 UTC
  Valid Until:    2026-06-13 23:59:59 UTC
  Signature Alg:  SHA256withRSA (ECDSA leaf)
  Key Type:       ECDSA P-384
  Key Usage:      Digital Signature
  SAN:            api.acmecorp.example.com
  OCSP Stapling:  Yes
  Certificate Transparency: Yes (2 SCTs)
  Certificate Chain:
    [0] CN=api.acmecorp.example.com  (384 bit ECDSA P-384)
    [1] CN=R3 (2048 bit RSA, cross-signed)
    [2] CN=ISRG Root X1 (4096 bit RSA)

Protocol Support:
  SSLv2     No
  SSLv3     No
  TLS 1.0   No
  TLS 1.1   No
  TLS 1.2   Yes
  TLS 1.3   Yes

Cipher Suite Listing (in server preference order):
  TLS 1.3:
    TLS_AES_256_GCM_SHA384                          256 bit   (OK)
    TLS_CHACHA20_POLY1305_SHA256                    256 bit   (OK)
    TLS_AES_128_GCM_SHA256                          128 bit   (OK)

  TLS 1.2:
    TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384        256 bit   (OK)
    TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256  256 bit   (OK)
    TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256        128 bit   (OK)

HTTP Security Headers:
  Strict-Transport-Security:    max-age=63072000; includeSubDomains; preload  [OK]
  X-Content-Type-Options:       nosniff
  X-Frame-Options:              DENY
  Content-Security-Policy:      default-src 'none'; script-src 'self'; connect-src 'self'
  Referrer-Policy:              strict-origin-when-cross-origin
  Permissions-Policy:           geolocation=(), camera=(), microphone=()

Vulnerabilities:
  BEAST:          Not vulnerable
  Sweet32:        Not vulnerable
  RC4:            Not vulnerable
  POODLE TLS:     Not vulnerable
  Heartbleed:     Not vulnerable
  ROBOT:          Not vulnerable
  Downgrade:      OK (TLS_FALLBACK_SCSV supported)

ISSUES SUMMARY:
  No issues found.

NOTES:
  - TLS 1.3 supported and preferred
  - Only AEAD cipher suites (GCM, ChaCha20-Poly1305)
  - All cipher suites provide forward secrecy (ECDHE)
  - HSTS with preload directive enabled
  - OCSP stapling active
  - Certificate Transparency SCTs present
  - ECDSA P-384 key provides strong authentication
  - Short-lived certificate (90-day) with automated renewal


================================================================================
CHALLENGE: For each server, identify all TLS/SSL configuration weaknesses,
explain the security impact, and provide specific remediation commands or
configuration changes to achieve an A+ rating.
================================================================================
