Skip to content

CVE-2025-9230 — OpenSSL Out-of-Bounds Read/Write / DoS

Key facts

CVE-2025-9230 is a High (7.5) vulnerability: OpenSSL Out-of-Bounds Read/Write / DoS. This entry ships a detection-only PoC.

CVE CVE-2025-9230
Severity High (7.5)
Detection / prevention —
PoC poc.py
Source 2025/CVE-2025-9230/

Details

CVSS Type

Overview

Attribute Value
CVE ID CVE-2025-9230
Severity High
CVSS Score 7.5
Affected Product OpenSSL
Vulnerability Type Out-of-Bounds Read/Write / DoS
CWE CWE-787

Description

Flaw in CMS decryption with password-based encryption (PWRI). Triggers out-of-bounds read/write, causing crashes or memory corruption that may enable code execution.

Affected Versions

  • OpenSSL 3.5.0-3.5.3, 3.4.0-3.4.2, 3.3.0-3.3.4, 3.2.0-3.2.5, 3.0.0-3.0.17

Verification Process

The PoC uses a multi-stage verification approach:

Step 1: Product/Version Detection (Passive)

[*] Query target endpoint
[*] Detect product signatures and extract version
[*] Check if version is in vulnerable range

Step 2: Active Vulnerability Testing

Method Description Detection
Error-based Inject payloads that trigger error messages Error indicators in response
Timing-based Inject delay commands and measure response Response time > baseline + delay
Response-based Check for expected patterns in response Pattern match in response body
Callback-based Trigger OOB request to attacker server HTTP request received

Verification Flow

┌─────────────────────────────────────────────────────────────┐
│                    Product Detection                         │
│  Query target → Detect product/version                      │
│  Check if version in vulnerable range                       │
└─────────────────────────────────────────────────────────────┘
                              ↓
┌─────────────────────────────────────────────────────────────┐
│               Active Vulnerability Testing                   │
│                                                              │
│  1. Error-based Test                                         │
│     └─ Send payload → Check for error indicators            │
│     └─ If error found → CONFIRMED VULNERABLE                │
│                                                              │
│  2. Timing-based Test                                        │
│     └─ Send delay payload → Measure response time           │
│     └─ If delayed → CONFIRMED VULNERABLE                    │
│                                                              │
│  3. Callback-based Test (if URL provided)                    │
│     └─ Send OOB payload → Check callback server             │
│     └─ If request received → CONFIRMED VULNERABLE           │
└─────────────────────────────────────────────────────────────┘

Usage

# Full vulnerability check (version + active testing)
python3 poc.py -t https://target.com -c

# Version-only check (passive, no payloads sent)
python3 poc.py -t https://target.com -c --version-only

# With OOB callback (most reliable)
python3 poc.py -t https://target.com -c --callback http://your-server.com

Mitigation

  1. Upgrade to the latest patched version
  2. Apply workarounds if patch unavailable
  3. Monitor for exploitation attempts
  4. Network segmentation to limit exposure

References

Frequently asked questions

What is CVE-2025-9230?

CVE-2025-9230 is a High (7.5) vulnerability: OpenSSL Out-of-Bounds Read/Write / DoS. This entry ships a detection-only PoC.

How do I detect CVE-2025-9230?

Run the detection-only PoC included with this entry against your Docker test lab to confirm whether a target is affected; pair it with your own IDS logging.

How do I block or mitigate CVE-2025-9230?

Upgrade to a fixed version per the vendor advisory; the NVD record lists the affected versions. Use the included PoC to verify your remediation.


For authorized security testing and research only. See the full source and NVD record.