Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
openlitespeed-dup-cookie-litespeed-role — OpenLiteSpeed 1.9.3 - Élevée - À distance - Privilège résiduel - Un Cookie dupliqué en HTTP/1 contourne le 403 de litespeed_role ; lsphp reçoit toujours HTTP_COOKIE | Kitploit
Outils/GitHubGitHub/abraxas/openlitespeed-dup-cookie-litespeed-role
Analyse des VulnérabilitésExploitationExploitation d'Applications WebCollecte d'InformationsSécurité WebTests d'IntrusionLabs et Pratique
GitHub
abraxas/openlitespeed-dup-cookie-litespeed-role

openlitespeed-dup-cookie-litespeed-role

OpenLiteSpeed 1.9.3 - Élevée - À distance - Privilège résiduel - Un Cookie dupliqué en HTTP/1 contourne le 403 de litespeed_role ; lsphp reçoit toujours HTTP_COOKIE

Voir le dépôt
13il y a 10 joursPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Abraxas Labs - openlitespeed-dup-cookie-litespeed-role

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  openlitespeed-dup-cookie-litespeed-role

openlitespeed-dup-cookie-litespeed-role

Classe : Reliquat de privilège Portée : Distante

OpenLiteSpeed 1.9.3 (edbe7f7db12577e905291955a6d416200942fb8b) renvoie toujours un 403 pour un seul Cookie: litespeed_role= (le bloc 1.8.2.1). Un Cookie dupliqué en HTTP/1 n'est pas un 400. Les doublons Host / Content-Length / Transfer-Encoding / Authorization le sont. La seconde ligne Cookie est rétrogradée en inconnue, le scan litespeed_role= ne s'exécute jamais, IS_BL_COOKIE reste non défini, et lsphp reçoit toujours HTTP_COOKIE. LSAPI applique le dernier gagnant : $_SERVER['HTTP_COOKIE'] en PHP correspond à la seconde ligne.

HTTP/2 scanne déjà chaque en-tête Cookie. Ce reliquat concerne HTTP/1.1. Le labo n'a pas peuplé $_COOKIE['litespeed_role']. Pas d'ATO WordPress. Pas de RCE.

IDpas encore de CVE
ClasseReliquat de privilège (contournement du 403 litespeed_role= de 1.8.2.1)
PortéeDistante (HTTP/1.1 non authentifié)
CWECWE-693, CWE-436
CVSSÉlevé : 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
ProduitOpenLiteSpeed
Affecté1.9.3 (edbe7f7) ; HTTP/1.1 plus lsphp
Authaucune
LicenceGNU Affero GPL v3.0
Labo127.0.0.1:18750 uniquement

Ce qu'un attaquant peut faire

Envoyer deux en-têtes Cookie dans une seule requête HTTP/1.1. Le premier est inoffensif. Le second porte litespeed_role=. OpenLiteSpeed renvoie un 403 pour ce nom sur un seul en-tête Cookie et sur chaque en-tête Cookie HTTP/2. Un Cookie HTTP/1 dupliqué contourne le 403. lsphp voit toujours le rôle dans HTTP_COOKIE.

Les applications qui analysent HTTP_COOKIE obtiennent la valeur que le contrôle 1.8.2.1 était censé garder hors du worker. Les applications qui ne lisent que $_COOKIE['litespeed_role'] ne l'ont pas vu dans ce labo.

Comment je l'ai trouvé

Vingt recherches dans le code source de la v1.9.3 après Caddy et lighttpd. Le bloc 1.8.2.1 est memmem(..., "litespeed_role=", 15) sur le premier Cookie commun. Un Cookie dupliqué ne figure pas dans la liste des 400.

Fausses pistes : croire qu'urllib pouvait envoyer deux en-têtes Cookie (il les fusionne) ; s'attendre à ce que le docker officiel écoute sur 8088 (l'image du Hub est sur 80) ; s'attendre à ce que $_COOKIE suive le dernier gagnant de HTTP_COOKIE (LSAPI a rempli la table des cookies à partir du premier en-tête).

Labo

cd lab
./run.sh

Image litespeedtech/openlitespeed:1.9.3-lsphp84. Oracle lab/www/cookie.php. Sockets HTTP/1.1 bruts. Bind sur loopback.

SUCCESS openlitespeed-dup-cookie-litespeed-role single-cookie=403 dummy=200 dup-cookie=200 php-sees-role=yes how=php-http-cookie OLS-DUP-COOKIE-LITESPEED-ROLE-WITNESS

Le correctif

Scanner chaque en-tête Cookie HTTP/1 comme le fait déjà HTTP/2, ou renvoyer un 400 pour un Cookie dupliqué comme Host renvoie un 400.

Références

  • github.com/litespeedtech/openlitespeed tag v1.9.3 (edbe7f7db12577e905291955a6d416200942fb8b)
  • src/http/httpreq.cpp en-têtes communs dupliqués, scan litespeed_role= sur le premier Cookie, 403 IS_BL_COOKIE
  • src/http/httpcgitool.cpp export d'en-tête inconnu en HTTP_COOKIE
  • bloc 1.8.2.1 cookie litespeed_role
Télécharger l’outil