← Back to CVE Explorer

CVE-2026-74758

Full vulnerability record from the local CVENow database.

Description

A heap use-after-free in the RTMP protocol component of Apache bRPC (versions < 1.18.0) allows a remote attacker to crash a bRPC RTMP server by sending a crafted Abort control message. No authentication or application-level request is required. Root Cause: When an RTMP Abort control message names the chunk stream that is currently being parsed (the chunk stream carrying the message itself), RtmpChunkStream::OnAbortMessage calls RtmpContext::ClearChunkStream, which deletes the RtmpChunkStream while its Feed() is still running. After the message handler returns, Feed() continues to access members of the deleted object, resulting in a heap-use-after-free. Affected Scenarios: bRPC servers that enable RTMP support (ServerOptions.rtmp_service set) and accept connections from untrusted networks. How to Fix: 1. Upgrade bRPC to version 1.18.0, which fixes this issue. 2. Apply this patch:  https://github.com/apache/brpc/pull/3452 The fix skips clearing the chunk stream when the Abort message targets the chunk stream that is currently being parsed.

Severity
HIGH
CVSS score
7.5 (v3.1)
Vulnerability status
Deferred
Source identifier
Published
2026-10-21 12:17:22.863000
Last modified
2026-10-30 17:17:28.090000
View original CVE JSON
{
  "id": "CVE-2026-74758",
  "sourceIdentifier": "[email protected]",
  "published": "2026-10-21T12:17:22.863",
  "lastModified": "2026-10-30T17:17:28.090",
  "vulnStatus": "Deferred",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "A heap use-after-free in the RTMP protocol component of Apache bRPC (versions < 1.18.0) allows a remote attacker to crash a bRPC RTMP server by sending a crafted Abort control message. No authentication or application-level request is required.\n\nRoot Cause:\nWhen an RTMP Abort control message names the chunk stream that is currently being parsed (the chunk stream carrying the message itself), RtmpChunkStream::OnAbortMessage calls RtmpContext::ClearChunkStream, which deletes the RtmpChunkStream while its Feed() is still running. After the message handler returns, Feed() continues to access members of the deleted object, resulting in a heap-use-after-free.\n\nAffected Scenarios:\nbRPC servers that enable RTMP support (ServerOptions.rtmp_service set) and accept connections from untrusted networks.\n\nHow to Fix:\n1. Upgrade bRPC to version 1.18.0, which fixes this issue.\n2. Apply this patch:  https://github.com/apache/brpc/pull/3452 \n\nThe fix skips clearing the chunk stream when the Abort message targets the chunk stream that is currently being parsed."
    },
    {
      "lang": "es",
      "value": "Una vulnerabilidad de uso después de liberación en el heap en el componente del protocolo RTMP de Apache bRPC (versiones anteriores a la 1.18.0) permite a un atacante remoto provocar una caída de un servidor bRPC RTMP enviando un mensaje de control Abort manipulado. No se requiere autenticación ni solicitud a nivel de aplicación.\\n\\nCausa raíz:\\nCuando un mensaje de control Abort de RTMP nombra el flujo de fragmentos que se está analizando (el flujo de fragmentos que transporta el propio mensaje), RtmpChunkStream::OnAbortMessage llama a RtmpContext::ClearChunkStream, que elimina el RtmpChunkStream mientras su Feed() sigue en ejecución. Después de que el manejador del mensaje devuelve, Feed() continúa accediendo a miembros del objeto eliminado, lo que produce un uso después de liberación en el heap.\\n\\nEscenarios afectados:\\nServidores bRPC que habilitan el soporte RTMP (ServerOptions.rtmp_service configurado) y aceptan conexiones desde redes no confiables.\\n\\nCómo corregir:\\n1. Actualizar bRPC a la versión 1.18.0, que corrige este problema.  \\n2. Aplicar este parche: https://github.com/apache/brpc/pull/3452  \\n\\nLa corrección omite la limpieza del flujo de fragmentos cuando el mensaje Abort tiene como objetivo el flujo de fragmentos que se está analizando en ese momento."
    }
  ],
  "affected": [
    {
      "source": "[email protected]",
      "affectedData": [
        {
          "vendor": "Apache Software Foundation",
          "product": "Apache bRPC",
          "defaultStatus": "unaffected",
          "collectionURL": "https://github.com",
          "packageName": "apache/brpc",
          "packageURL": "pkg:github/apache/brpc",
          "versions": [
            {
              "version": "0",
              "lessThan": "1.18.0",
              "versionType": "semver",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "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: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
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-10-30T16:45:05.389186Z",
          "id": "CVE-2026-74758",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "yes"
            },
            {
              "technicalImpact": "partial"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Secondary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-416"
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://lists.apache.org/thread/2pf15ojj0vr7rtx95677kgtl1mx3gdgb",
      "source": "[email protected]"
    }
  ]
}