Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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é.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-28318-check — Détecter en toute sécurité si un hôte SolarWinds Serv-U est vulnérable à CVE-2026-28318 | Kitploit
Outils/GitHubGitHub/bishopfox/cve-2026-28318-check
ReconnaissanceAnalyse des VulnérabilitésExploitationCollecte d'InformationsSécurité WebTests d'Intrusion
GitHubbishopfox/cve-2026-28318-check

CVE-2026-28318-check

Détecter en toute sécurité si un hôte SolarWinds Serv-U est vulnérable à CVE-2026-28318

Voir le dépôt
22il y a 2 moisPas 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

SolarWinds Serv-U DoS non authentifié : Script de détection sécurisé

Un détecteur sûr, non destructif pour CVE-2026-28318, un déni de service non authentifié dans SolarWinds Serv-U <= 15.5.4.108. Une seule POST qui transporte Content-Encoding: deflate et un corps alimente ce corps à un décompresseur deflate en mémoire (CZLibCompression) dont la gestion de tampon effectue un free() invalide, interrompant le processus du service Serv-U. (CVSS 7.5, AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, CWE-763.)

Ce script ne fait pas planter la cible. Il répond à une question par hôte : le correctif 15.5.4 HF1 est-il manquant ? C'est un proxy exact pour savoir si le serveur est vulnérable à CVE-2026-28318.

Est-ce sûr à exécuter ?

Oui. C'est tout l'intérêt de l'outil, et il est sûr à exécuter contre la production :

  • Il n'envoie jamais deflate. deflate est la seule valeur de Content-Encoding qui démarre le décompresseur vulnérable. Le script envoie une seule POST avec un Content-Encoding: identity bénin et un corps court, qui n'atteint jamais le chemin de code plantant.
  • C'est une vérification différentielle, pas une exploitation. Le correctif HF1 (build 15.5.4.125) rejette toute requête qui a un corps et un Content-Encoding non vide avec 415 Unsupported Media Type. Les builds vulnérables n'ont pas de telle porte et traitent normalement la sonde identity. Ainsi le verdict repose uniquement sur le code de statut, et le service n'est jamais déstabilisé.
  • Il est pré-authentification et en lecture seule. Une requête, pas de connexion, aucun état cible changé.

Comment ça fonctionne

Le script envoie une POST sécurisée à la racine du site et lit le code de statut :

La cible est identifiée comme Serv-U grâce à l'en-tête Server de la réponse de la sonde, donc aucune requête d'identification séparée n'est nécessaire.

Cela prouve que le correctif est manquant ; cela ne fait pas planter le service pour confirmer. Un verdict VULNERABLE signifie que la porte de validation d'entrée du HF1 est absente, ce qui est un proxy exact pour cette CVE. Le script s'arrête délibérément là plutôt que d'envoyer la valeur deflate qui fait planter.

Prérequis

  • Python 3.7+, bibliothèque standard uniquement, sans paquets tiers.

Utilisation

root@kitploit:~
# single host (scheme defaults to https://)
./cve_2026_28318_check.py 10.0.0.5

# explicit URL / port
./cve_2026_28318_check.py https://10.0.0.5:443

# several hosts at once
./cve_2026_28318_check.py host-a:443 host-b https://host-c

# scan a list, one target per line ('#' comments allowed), compact output
./cve_2026_28318_check.py -f targets.txt --brief

# machine-readable output for pipelines
./cve_2026_28318_check.py -f targets.txt --json > results.json

Options

Exemples

Un serveur Serv-U vulnérable (le marqueur [!] et VULNERABLE s'affichent en rouge sur un TTY) :

root@kitploit:~
$ ./cve_2026_28318_check.py https://10.0.0.5
[!] https://10.0.0.5: VULNERABLE  [missing-415-gate]
      Serv-U returned 401 (not 415) to the identity probe, so the HF1 415 gate is ABSENT (build <= 15.5.4.108) and CVE-2026-28318 is unpatched. This proves the fix is missing; it does NOT crash the service. Apply 15.5.4 HF1 (build 15.5.4.125+).

Un serveur corrigé renvoie PATCHED (la porte 415 du HF1 a répondu à la sonde identity) :

root@kitploit:~
$ ./cve_2026_28318_check.py https://10.0.0.6
[+] https://10.0.0.6: PATCHED  [hf1-415-gate]
      Serv-U returned 415 to the identity probe, so the 15.5.4 HF1 input-validation gate is present (build >= 15.5.4.125). Not vulnerable to CVE-2026-28318.

Scanner une liste, une ligne alignée par hôte (--brief). Le code de sortie est 1 si un hôte est VULNERABLE, sinon 0, ce qui est pratique dans les scripts :

root@kitploit:~
$ ./cve_2026_28318_check.py -f targets.txt --brief; echo "exit: $?"
VULNERABLE  https://10.0.0.5                 missing-415-gate
PATCHED     https://10.0.0.6                 hf1-415-gate
NOT-SERV-U  https://10.0.0.7                 not-servu
ERROR       https://10.0.0.8                 no-response
exit: 1

Sortie lisible par machine pour les pipelines (--json) :

root@kitploit:~
$ ./cve_2026_28318_check.py https://10.0.0.5 --json
[
  {
    "target": "https://10.0.0.5",
    "verdict": "VULNERABLE",
    "reason": "missing-415-gate",
    "detail": "Serv-U returned 401 (not 415) to the identity probe, so the HF1 415 gate is ABSENT (build <= 15.5.4.108) and CVE-2026-28318 is unpatched. This proves the fix is missing; it does NOT crash the service. Apply 15.5.4 HF1 (build 15.5.4.125+)."
  }
]

Verdicts

Codes de sortie

CodeSignification
0Aucune cible n'était VULNERABLE
1Au moins une cible est VULNERABLE
2Erreur d'utilisation (mauvais arguments / fichier de cibles illisible)

Limitations

  • Proxy / terminaison TLS. Un proxy inverse ou un répartiteur de charge devant Serv-U peut supprimer l'en-tête Server (signalé comme NOT-SERV-U) ou répondre avec son propre 415 (un possible faux PATCHED). Pointez l'outil directement sur l'interface de gestion Serv-U lorsque vous le pouvez.
  • Pas un test de plantage. Un verdict VULNERABLE prouve que le correctif de validation d'entrée du HF1 est absent ; il ne démontre pas le plantage (par conception). Cette porte est un proxy exact pour cette CVE.
  • TLS n'est pas vérifié. Les interfaces de gestion Serv-U sont généralement auto-signées, donc le script ne valide pas les certificats. Il confirme l'accessibilité et lit le statut, rien de plus.
  • Accessibilité uniquement. Un résultat reflète ce que le serveur renvoie depuis la position réseau depuis laquelle vous l'exécutez.

Remédiation

Mettre à niveau vers SolarWinds Serv-U 15.5.4 Hotfix 1 (build 15.5.4.125) ou ultérieur, qui ajoute la porte de validation d'entrée qui rejette une requête transportant à la fois un corps et un Content-Encoding non vide. En attendant de pouvoir corriger, restreignez l'accès réseau au service Serv-U aux sources de confiance.

Licence

Ce code est distribué sous une licence MIT.

Avertissement légal

L'utilisation de cet outil pour attaquer des cibles sans consentement mutuel préalable est illégale. Il est de la responsabilité de l'utilisateur final de respecter toutes les lois locales, étatiques et fédérales applicables. Les développeurs n'assument aucune responsabilité et ne sont pas responsables de tout usage abusif ou dommage causé par ce programme.

Voir aussi

  • NVD: CVE-2026-28318
  • MITRE: CVE-2026-28318
Télécharger l’outil
Réponse de la sonde identityVerdictSignification
En-tête Serveur Serv-U, statut ≠ 415 (ex. 401 / 404 / 200 / 302)VULNERABLE [missing-415-gate]La porte 415 du HF1 est absente, donc build <= 15.5.4.108, CVE-2026-28318 non corrigé.
En-tête Serveur Serv-U, statut = 415PATCHED [hf1-415-gate]La porte de validation d'entrée du HF1 est présente, donc build >= 15.5.4.125. Non vulnérable.
Réponse, mais pas d'en-tête Serveur Serv-UNOT-SERV-U [not-servu]Pas un serveur Serv-U, ou un proxy a supprimé l'en-tête.
Aucune réponse utilisable / échec de connexionERROR [no-response]Aucun service HTTP accessible, filtré, erreur TLS ou délai d'attente.
FlagDescription
targetsUn ou plusieurs HOST[:PORT] ou URL (le schéma par défaut est https://)
-t, --target TARGETAjouter une cible (répétable)
-f, --file FILELire les cibles depuis un fichier (une par ligne ; commentaires #)
-b, --briefUne ligne alignée par cible, idéal pour scanner de nombreux hôtes
--jsonÉmettre des résultats JSON structurés
--no-colorDésactiver la sortie colorée (respecte aussi NO_COLOR et non-TTY)
--timeout SECSDélai d'attente par sonde (par défaut : 10)
-v, --verboseAfficher la sonde envoyée et les en-têtes de réponse bruts
VerdictÉtiquette de raisonSignification
VULNERABLEmissing-415-gateServeur Serv-U sans porte 415 du HF1, donc build <= 15.5.4.108, CVE-2026-28318 non corrigé. Corriger immédiatement.
PATCHEDhf1-415-gateServeur Serv-U qui répond à la sonde identity avec 415, donc le correctif HF1 est présent (build >= 15.5.4.125).
NOT-SERV-Unot-servuA répondu, mais pas d'en-tête Serveur Serv-U ; pas un Serv-U, ou un proxy l'a supprimé.
ERRORno-responseAucune réponse HTTP utilisable (aucun service sur ce port, filtré, erreur TLS ou délai d'attente).
ERRORbad-targetL'argument cible n'a pas pu être analysé.