SploitScan est un outil puissant et convivial conçu pour rationaliser le processus d'identification des exploits pour les vulnérabilités connues et leur probabilité d'exploitation respective. Donner aux professionnels de la cybersécurité la capacité d’identifier et d’appliquer rapidement les exploits connus et testés. Il est particulièrement utile pour les professionnels cherchant à améliorer leurs mesures de sécurité ou à développer des stratégies de détection robustes contre les menaces émergentes.
Description
Caractéristiques
Bases de données d'exploit prises en charge
Importation du scanner de vulnérabilités prise en charge
Installation
Usage
Évaluation des risques basée sur l'IA
Système de priorité aux correctifs
Contribuer
Auteur
Journal des modifications
Références
Récupération d'informations CVE : récupère les détails CVE de la base de données nationale sur les vulnérabilités.
Intégration EPSS : comprend les données du système de notation de prédiction d'exploit (EPSS), offrant un score de probabilité pour la probabilité d'exploitation de CVE, facilitant ainsi la priorisation.
Agrégation d’exploits publics : rassemble les exploits accessibles au public, améliorant ainsi la compréhension des vulnérabilités.
CISA KEV : indique si le CVE a été répertorié dans les vulnérabilités exploitées connues (KEV) de CISA.
Évaluation des risques basée sur l'IA : exploite OpenAI pour fournir des évaluations détaillées des risques, des scénarios d'attaque potentiels, des recommandations d'atténuation et des résumés.
Rapports HackerOne : indique si le CVE a été utilisé dans les programmes HackerOne Bug Bounty, y compris leur classement global et la répartition de leur gravité.
Système de priorité des correctifs : évalue et attribue une note de priorité pour les correctifs en fonction de divers facteurs, notamment la disponibilité publique des exploits.
Prise en charge multi-CVE et options d'exportation : prend en charge plusieurs CVE en une seule exécution et permet d'exporter les résultats aux formats HTML, JSON et CSV.
Importation de scanner de vulnérabilités : importez des analyses de vulnérabilité à partir de scanners de vulnérabilités populaires et recherchez directement les exploits connus.
Sélection de méthode granulaire : uniquement des méthodes spécifiques (par exemple, cisa
, epss
, hackerone
, ai
, etc.), vous permettant de contrôler les données que vous souhaitez récupérer.
Interface conviviale : facile à utiliser, fournissant des informations claires et concises.
Outil de sécurité complet : idéal pour des évaluations de sécurité rapides et rester informé des vulnérabilités récentes.
GitHub
ExploiterDB
VulnCheck (nécessite une clé API VulnCheck gratuite )
Tempête de paquets
Noyaux
Nessus (.nessus)
Nexposer (.xml)
OpenVAS (.xml)
Docker (.json)
git clone https://github.com/xaitax/SploitScan.gitcd sploitscan pip install -r exigences.txt
pip install --user sploitscan
apt installer sploitscan
VulnCheck : Créez un compte gratuit sur VulnCheck pour obtenir votre clé API.
OpenAI : Créez un compte et obtenez une clé API chez OpenAI.
Remarque : Les clés API OpenAI et VulnCheck sont facultatives. La clé API OpenAI est utilisée pour l'évaluation des risques basée sur l'IA, et la clé API VulnCheck est utilisée pour la récupération des données VulnCheck. Si vous n'avez pas l'intention d'utiliser ces fonctionnalités, vous pouvez omettre le fichier de configuration ou laisser les champs de la clé API vides.
Créez un fichier config.json
dans l'un des emplacements suivants avec vos clés API :
Répertoire actuel
~/.sploitscan/
~/.config/sploitscan/
/etc/sploitscan/
~/Library/Application Support/sploitscan/
(macOS)
%APPDATA%/sploitscan/
(Windows)
Vous pouvez également spécifier un chemin de fichier de configuration personnalisé à l'aide de l'argument de ligne de commande --config
ou -c
.
{ "vulncheck_api_key": "votre_vulncheck_api_key", "openai_api_key": "votre_openai_api_key"}
$ sploitscan.py -h ███████╗██████╗ ██╗ ██████╗ ██╗████████╗██ █████╗ █████ █╗ █████╗ ███╗ ██╗ ██╔════╝██╔══██╗██║ ██╔═══██╗██║╚══██╔══╝ ██╔════╝██ ╔════╝██╔══██╗████╗ ██║ ███████╗██████╔╝██║ ██║ ██║██║ ██║ ███████╗ ██║ ███████║ ██╔██╗ ██║ ╚════██║██╔═══╝ ██║ ██║ ██║██║ ██║ ╚════██║█ █║ ██╔══██║█ █║╚██╗██║ ███████║██║ ███████╗╚██████╔╝██║ ██║ █████ ██║╚██████╗ ██║ ██║██║ ╚████║ ╚══════╝╚═╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝ ╚══════ ╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═══╝ v0.11.0 / Alexandre Hagenah / @xaitax / [email protected] utilisation : sploitscan.py [-h] [-e {json,JSON,csv,CSV,html,HTML}] [-t {nessus,nexpose,openvas,docker}] [-m METHODES] [-i IMPORT_FILE] [ -c CONFIG] [-d] [cve_ids ...] SploitScan : récupérez et affichez les données de vulnérabilité ainsi que les exploits publics pour les ID CVE donnés. arguments de position : cve_ids Saisissez un ou plusieurs identifiants CVE pour récupérer les données. Séparez plusieurs ID CVE par des espaces. Format pour chaque ID : CVE-YYYY-NNNNN. Cet argument est facultatif si un fichier d'importation est fourni en utilisant l'option -i. choix : -h, --help afficher ce message d'aide et quitter -e {json,JSON,csv,CSV,html,HTML}, --export {json,JSON,csv,CSV,html,HTML} Facultatif : Exportez les résultats vers un fichier JSON, CSV ou HTML. Spécifiez le format : "json", "csv" ou "html". -t {nessus,nexpose,openvas,docker}, --type {nessus,nexpose,openvas,docker} Spécifiez le type du fichier d'importation : 'nessus', 'nexpose', 'openvas' ou 'docker'. -m MÉTHODES, --méthodes MÉTHODES Spécifiez les méthodes à exécuter, séparées par des virgules. Options : 'cisa', 'epss', 'hackerone', 'ai', 'prio', 'references', etc. -i IMPORT_FILE, --import-file IMPORT_FILE Chemin d'accès à un fichier d'importation à partir d'un scanner de vulnérabilités. S'ils sont utilisés, les ID CVE peuvent être omis des arguments de ligne de commande. -c CONFIGURATION, --config CONFIGURATION Chemin d'accès à un fichier de configuration personnalisé. -d, --debug Active la sortie de débogage.
sploitscan CVE-2024-1709
sploitscan CVE-2024-1709 CVE-2024-21413
Spécifiez le type : "nessus", "nexpose", "openvas" ou "docker" et fournissez le chemin du fichier.
sploitscan --import-file chemin/vers/votrefichier.nessus --type nessus
Pour exécuter uniquement des méthodes de récupération de données spécifiques (par exemple, CISA, EPSS, évaluation des risques IA), utilisez l'argument -m
:
sploitscan CVE-2024-1709 -m cisa,epss
Spécifiez le format d'exportation : "json", "csv" ou "html".
sploitscan CVE-2024-1709 -e html
Assurez-vous que Docker est installé. Pour les instructions d'installation, consultez le guide d'installation officiel de Docker.
Pour créer et exécuter SploitScan dans Docker :
docker build -t sploitscan .docker run --rm sploitscan CVE-2024-1709
Avec un volume monté depuis le répertoire courant
docker run -v ${PWD}:/app --rm sploitscan CVE-2024-1709 -e JSON
docker run -v $(pwd):/app --rm sploitscan CVE-2024-1709 -e JSON
SploitScan s'intègre à OpenAI pour fournir une évaluation complète des risques basée sur l'IA pour chaque CVE. Cette fonctionnalité comprend :
Évaluation détaillée des risques : comprenez la nature de la vulnérabilité et son impact sur l'entreprise.
Scénarios d'attaque potentiels : obtenez des descriptions de scénarios d'attaque potentiels exploitant la vulnérabilité.
Recommandations d'atténuation : recevez des recommandations spécifiques et exploitables pour atténuer le risque.
Résumé analytique : un résumé concis accessible aux parties prenantes non techniques, mettant en évidence l'impact commercial et l'urgence.
$ sploitscan.py CVE-2024-21413
[...]
┌───[ ? AI-Powered Risk Assessment ]
|
| 1. Risk Assessment
| -------------------
| The vulnerability identified by CVE-2024-21413 is a critical remote code execution flaw in
| Microsoft Outlook with a CVSS score of 9.8. The impact on business operations can be severe due to
| its high potential to be exploited over a network without any user interactions or elevated
| privileges. This unvalidated input vulnerability (CWE-20) could allow an attacker to execute
| arbitrary code on the target system, thereby compromising the confidentiality, integrity, and
| availability of critical business data and systems. Given its critical rating and the existence of
| multiple exploits on public repositories like GitHub, the likelihood of exploitation is very high.
| This necessitates immediate attention from the security teams to mitigate the risks associated.
|
| 2. Potential Attack Scenarios
| ------------------------------
| An attacker could exploit this vulnerability by sending a specially crafted email to a victim
| using Microsoft Outlook. Once the email is opened or previewed, the malicious payload would
| execute, allowing the attacker to gain control over the victim's system. The process involves: 1.
| Crafting a malicious email leveraging the specific flaw in email handling within Microsoft
| Outlook. 2. Sending the email to the intended victim. 3. Upon opening or previewing the email, the
| victim’s system executes the malicious code. The potential outcomes of this attack include theft
| of sensitive information, installation of malware or ransomware, and compromising other systems
| within the same network due to lateral movement capabilities.
|
| 3. Mitigation Recommendations
| ------------------------------
| Immediate mitigation recommendation includes: 1. Applying the latest security patches provided by
| Microsoft. Reference: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2024-21413 2.
| Implementing network-level protections such as email filtering and network segmentation to limit
| the spread of potential infections. 3. Conducting regular security awareness training for users to
| recognize phishing and malicious emails. 4. Monitoring network and system activity for signs of
| suspicious behavior and unauthorized execution. 5. Regularly backing up critical data and ensuring
| the integrity of backups.
|
| 4. Executive Summary
| ---------------------
| CVE-2024-21413, a critical remote code execution vulnerability in Microsoft Outlook, poses a
| significant risk to businesses due to its potential to be exploited without user interaction.
| Multiple exploit proofs are publicly available, increasing the likelihood of attacks.
| Organizations must act swiftly by applying the necessary patches from Microsoft, enhancing their
| email security protocols, and educating their staff to identify potential phishing attempts.
| Mitigating this vulnerability is essential to protect sensitive information, maintain business
| integrity, and ensure system availability, thus preventing potential financial and reputational
| damage. Immediate action is crucial to safeguard the organization against this severe threat.
|
└────────────────────────────────────────
Le système de priorisation des correctifs de SploitScan fournit une approche stratégique pour hiérarchiser les correctifs de sécurité en fonction de la gravité et de l'exploitabilité des vulnérabilités. Il est influencé par le modèle de CVE Prioritizer, avec des améliorations pour la gestion des exploits accessibles au public. Voici comment cela fonctionne :
Priorité A+ : attribuée aux CVE répertoriés dans le KEV de CISA ou à ceux dont les exploits sont accessibles au public. Cela reflète le risque et l’urgence les plus élevés pour l’application de correctifs.
Priorité A à D : basée sur une combinaison de scores CVSS et de pourcentages de probabilité EPSS. La matrice de décision est la suivante :
A : score CVSS >= 6,0 et score EPSS >= 0,2. Gravité élevée avec une probabilité significative d'exploitation.
B : score CVSS >= 6,0 mais score EPSS < 0,2. Gravité élevée mais probabilité d’exploitation plus faible.
C : score CVSS < 6,0 et score EPSS >= 0,2. Gravité moindre mais probabilité d’exploitation plus élevée.
D : score CVSS < 6,0 et score EPSS < 0,2. Gravité moindre et probabilité d’exploitation moindre.
Ce système aide les utilisateurs à prendre des décisions éclairées sur les vulnérabilités à corriger en premier, en tenant compte à la fois de leur impact potentiel et de la probabilité d'exploitation. Les seuils peuvent être modifiés en fonction des besoins de votre entreprise.
Les contributions sont les bienvenues ! Qu'il s'agisse de corriger des bugs, d'ajouter de nouvelles fonctionnalités ou d'améliorer la documentation, n'hésitez pas à bifurquer le référentiel et à soumettre une pull request. Vous pouvez également signaler des problèmes ou suggérer des améliorations via le suivi des problèmes GitHub.
Un merci spécial à :
Nilsonfsilva pour son support sur l'empaquetage Debian.
bcoles pour les corrections de bugs.
Javier Álvarez pour les corrections de bugs.
Romullo pour des idées et des suggestions.
davidfortytwo pour les améliorations (récupération CVE mise à jour et ajout de PacketStorm).
con-f-use pour le support et les correctifs avec setuptools/PyPi.
Martijn Russchen pour ses commentaires et ses idées sur HackerOne GraphQL.
URL
Gazouillement
Pour une liste détaillée des mises à jour, des correctifs et des nouvelles fonctionnalités, consultez le journal des modifications.
Catalogue des vulnérabilités exploitées connues de CISA
Programme CVE
ExploiterDB
PREMIER EPSS
HackerOne
API nomi-sec PoC-in-GitHub
OpenAI
Tempête de paquets
Noyaux de découverte du projet
VulnCheck