Aller au contenu

CVE-2026-85103 : débordement de tas dans le décodeur asn.1 des certificats VPN et exécution de code arbitraire dans Check Point gaia OS

HERMES

SCORE DE MENACE HERMES & SURFACE DU PLAN D'ADMINISTRATION ENTREPRISE

Cible : Check Point Security Gateway & Management Server (vpnd / cpm / fwm)
Confiance : 99%
96 / 100
CRITIQUE

Mesure la pertinence opérationnelle réelle, la militarisation de l'exploit et la posture de menace active.

Décomposition des dimensions
Exploitabilité 20 / 20
Activité de menace 19 / 20
Militarisation 19 / 20
Exposition 20 / 20
Prévalence 19 / 20
Impact 20 / 20
Maturité de l'exploit 18 / 20
Potentiel d'attaque en chaîne 20 / 20
⚖️ Divergence & Justification opérationnelle

Le score CVSS v3.1 évalue CVE-2026-85103 à 9.8 (CRITIQUE, CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H). Le score opérationnel Hermes s'établit à 96 (CRITIQUE) en raison du risque catastrophique de compromission des serveurs d'administration centrale (SMS) et de prise de contrôle de l'ensemble du parc de pare-feux.

🕸️ Graphe de connaissances connecté & Provenance

CVE-2026-85103: Check Point VPN Certificate ASN.1 Decoding Heap Buffer Overflow RCEVULNÉRABILITÉ

Nœuds connectés : 2
Relations sortantes actives
99% VERY_HIGH

Unified security operating system powering Check Point Quantum Security Gateways, Spark appliances, and cloud firewalls.

🔍 Pourquoi cette relation ? (Preuves & Provenance)

“Directly disclosed in Check Point advisory sk1000118 affecting Gateways and Security Management Servers.”

Preuves vérifiées associées :
→ affectsCOMPOSANTCheck Point Security Management
98% VERY_HIGH

Software platform affected by security vulnerabilities and agentic attack patterns.

🔍 Pourquoi cette relation ? (Preuves & Provenance)

“Confirmed security vulnerability in Check Point Security Management documented in Hermes dossier.”

Preuves vérifiées associées :

1. Contexte technique & matrice des versions affectées

Section intitulée « 1. Contexte technique & matrice des versions affectées »

La vulnérabilité se situe dans la bibliothèque commune de désérialisation ASN.1 employée par le service VPN (vpnd) sur les passerelles et par les moteurs d’administration (cpm, fwm) sur les serveurs de gestion.

ParamètreSpécification techniqueContexte threat intelligence
Identifiant CVECVE-2026-85103Bulletin officiel Check Point sk1000118
Produit affectécheckpoint:gaiaQuantum Security Gateway & Security Management Server
Composant vulnérableASN.1 Certificate Parser (vpnd / cpm / fwm)Routine de calcul de longueur X.509 BER / DER
Classe de faiblesseCWE-122: Heap-based Buffer OverflowSûreté mémoire / Troncature arithmétique signée
Score CVSS v3.19.8 (CRITIQUE / Score Hermes 96)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Versions corrigéesR82.20, R82.10 Take 44, R82 Take 126, R81.20 Take 166, LivePatch Take 24Mises à jour d’urgence et patch dynamique en mémoire
Techniques MITRE ATT&CKT1190 - Exploit Public-Facing Application, T1210 - Exploitation of Remote ServicesAccès initial / Déplacement latéral / Impact
Référence forensiqueAnalyse mémoire des processus et corruption de tas LinuxAnalyse des métadonnées ptmalloc et corruption de tas
  • Check Point gaia r82.10 : vulnérable (Corrigé dans Jumbo Hotfix Take 44 ou LivePatch Take 24)
  • Check Point gaia R82 : vulnérable (Corrigé dans Jumbo Hotfix Take 126 ou LivePatch Take 24)
  • Check Point gaia r81.20 : vulnérable (Corrigé dans Jumbo Hotfix Take 166 ou LivePatch Take 24)
  • Check Point gaia r81.10, R81, r80.40 (fin de support) : vulnérables (Aucun patch direct ; mise à niveau impérative)
  • Serveurs d’administration de sécurité (SMS) et multi-domain (MDS) : vulnérables sur toutes les branches actives
  • Check Point gaia r82.20 : Non affectée par conception.

2. Décomposition technique approfondie & cause racine

Section intitulée « 2. Décomposition technique approfondie & cause racine »

Les certificats X.509 reposent sur la notation ASN.1 encodée selon les règles DER sous forme de triplets Type-Longueur-Valeur (TLV).

Dans le décodeur ASN.1 de Check Point, le parsing des extensions de certificats manipule la mémoire dynamique via le gestionnaire de tas ptmalloc :

// Représentation décompilée du défaut de calcul de longueur ASN.1 dans libcpasn1
int asn1_decode_octet_string(asn1_stream_t *stream, unsigned char **out_buf, size_t *out_len) {
unsigned char tag = stream_read_byte(stream);
uint32_t declared_len = 0;
if (stream_read_length(stream, &declared_len) != 0) {
return ASN1_ERR_DECODE;
}
/* VULNÉRABILITÉ (sk1000118 / CWE-122) :
* declared_len est stocké sous forme d'entier non signé 32 bits, mais le calcul
* d'allocation interne subit une troncature signée 16 bits : (int16_t)declared_len + header.
* Pour une longueur forgée (ex: 0x00010040), le bloc alloué ne fait que 0x48 octets.
* La copie subséquente tente de copier la totalité des 65600 octets,
* écrasant de manière catastrophique le tas adjacent ! */
int16_t alloc_size = (int16_t)declared_len + sizeof(asn1_hdr_t);
unsigned char *chunk = (unsigned char *)malloc(alloc_size);
if (!chunk) {
return ASN1_ERR_NO_MEM;
}
// Écriture hors limites dans le tas écrasant les métadonnées ptmalloc et les pointeurs
memcpy(chunk + sizeof(asn1_hdr_t), stream->cursor, declared_len);
*out_buf = chunk;
*out_len = declared_len;
return ASN1_SUCCESS;
}

En contrôlant l’agencement du tas (heap grooming) via l’envoi préalable de sessions IKE ou TLS, un attaquant peut écraser des pointeurs de fonction ou des descripteurs de blocs mémoire et rediriger le pointeur d’instruction vers un shellcode exécuté avec les privilèges root.


3. Scénarios d’attaque & modélisation des menaces

Section intitulée « 3. Scénarios d’attaque & modélisation des menaces »
  1. Identification de la cible : l’attaquant cible le service VPN sur UDP 500/4500 ou les ports d’administration SmartConsole exposés (TCP 18190, 19009, 443).
  2. Grooming du tas : l’attaquant envoie une série de paquets IKE ou de requêtes TLS pour stabiliser la disposition des blocs mémoire dans vpnd ou cpm.
  3. Injection du certificat malformé : un certificat X.509 incorporant une extension ASN.1 avec une longueur supérieure à 65 535 octets et du shellcode est transmis.
  4. Déclenchement du débordement de tas : le décodeur alloue un tampon tronqué et réalise une copie mémoire non bornée, écrasant les structures adjacentes.
  5. Prise de contrôle : le pointeur d’exécution est détourné lors de la libération du bloc mémoire, offrant un shell root à l’attaquant.
  6. Compromission globale du parc : si l’attaque vise le serveur d’administration (SMS), l’attaquant s’empare des clés privées SIC et déploie des backdoors sur tous les pare-feux managés du réseau d’entreprise.

4. Détection forensique, artefacts & logs système

Section intitulée « 4. Détection forensique, artefacts & logs système »

Signatures de corruption mémoire

Inspectez /var/log/messages et le buffer noyau (dmesg) à la recherche de : malloc(): memory corruption, corrupted double-linked list ou general protection fault in cpm / vpnd.

Dépotoirs de crash (core dumps)

Vérifiez /var/log/dump/usermode/ pour identifier les fichiers : core.vpnd.* ou core.cpm.*. Analysez les registres au moment du crash avec gdb.

emerging_checkpoint_cve_2026_85103.rules
alert udp any any -> $EXTERNAL_NET [500,4500] (
msg:"HERMES INTEL - Check Point VPN Certificate ASN.1 Oversized Length Field (CVE-2026-85103)";
flow:to_server;
content:"|06|"; distance:16; within:1;
content:"|30 84 00 01|"; distance:0; within:10;
threshold:type limit, track by_src, count 1, seconds 300;
classtype:attempted-admin;
sid:202685103; rev:1;
)

5. Remédiation, durcissement & mesures d’atténuation

Section intitulée « 5. Remédiation, durcissement & mesures d’atténuation »
  1. Application immédiate de LivePatch take 24 : exécutez cplp apply ou déployez LivePatch Take 24 via SmartConsole CPUSE sur l’ensemble des passerelles et serveurs d’administration sans interruption de service.
  2. Installation du jumbo hotfix accumulator :
    • R82.10 : take 44 ou supérieur.
    • R82 : take 126 ou supérieur.
    • R81.20 : take 166 ou supérieur.
  3. Cloisonnement strict des interfaces d’administration : assurez-vous que les serveurs de gestion de sécurité (SMS) et les flux SmartConsole (TCP 18190, TCP 19009, TCP 443) sont strictement cantonnés à un réseau d’administration isolé (OOB). Ne jamais exposer ces interfaces sur l’Internet public.
  4. Référence forensique : pour maîtriser les protocoles de collecte mémoire et d’analyse de tas sous Linux et Gaia OS, consultez notre dossier sur l’Analyse mémoire des processus et corruption de tas Linux.