
Scanner basé sur Bash détectant les indicateurs de compromission liés à l'exploitation de CVE-2023-3519 sur les appareils Citrix ADC, prenant en charge l'analyse en direct et d'images forensiques.
Ce dépôt contient un utilitaire pour détecter les compromissions des appliances Citrix ADC liées à CVE-2023-3519. L’utilitaire, ainsi que ses ressources, encode les indicateurs de compromission collectés lors des investigations de Mandiant. Pour en savoir plus, veuillez lire le blog annonçant la publication de cet outil.
En résumé, l’utilitaire va :
Il ne va pas :
Avec les retours de la communauté, l’outil pourrait devenir plus complet dans sa détection. Veuillez ouvrir un ticket, ou soumettre une PR, si vous rencontrez des problèmes, avez des idées ou des retours.
Ce scanner peut identifier :
Le Scanner d’Indicateurs de Compromission (IoC) pour CVE-2023-3519 a été développé par Mandiant en collaboration avec Citrix sur la base des connaissances tirées des interventions liées à l’exploitation de CVE-2023-3519. L’objectif du scanner est d’analyser les sources de journaux disponibles et les artefacts forensiques système pour identifier les preuves d’une exploitation réussie de CVE-2023-3519. Il existe des limitations quant à ce que l’outil pourra accomplir, et par conséquent, l’exécution de l’outil ne doit pas être considérée comme une garantie qu’un système est exempt de compromission. Par exemple, les fichiers journaux du système contenant des preuves de compromission peuvent avoir été tronqués/écrasés, le système peut avoir été redémarré, un attaquant peut avoir altéré le système pour supprimer les preuves de compromission, et/ou installé un rootkit qui masque les preuves de compromission, etc.
Cet outil n’est pas garanti de trouver toutes les preuves de compromission, ni toutes les preuves de compromission liées à CVE-2023-3519. Si des indications de compromission sont identifiées sur les systèmes, les organisations devraient effectuer un examen forensique du système compromis pour déterminer la portée et l’étendue de l’incident. Ce logiciel est fourni tel quel, sans garantie ni représentation pour quelque usage ou objectif que ce soit.
Vous devez télécharger le script Bash autonome depuis l’ onglet Releases de ce dépôt. Copier le répertoire source sur une appliance Citrix ADC est déconseillé. Cela générera des faux positifs.
Le Scanner IoC peut être exécuté directement sur une appliance Citrix ADC.
Dans ce mode, l’outil analysera les fichiers, processus et ports à la recherche d’indicateurs connus.
L’outil écrit les messages de diagnostic sur le flux STDERR et les résultats sur le flux STDOUT.
En utilisation typique, vous devriez rediriger STDOUT vers un fichier pour examen.
L’outil doit être exécuté en tant que root en mode live sur une appliance Citrix ADC.
Pour accéder à root, connectez-vous à la CLI en tant que nsroot, puis exécutez shell depuis la CLI.
Par exemple :
$ bash ./scanner-CVE-2023-3519-v1.2.sh > "/tmp/results-$(date).txt"
L’outil est conçu pour être utilisé avec les produits suivants :
Le Scanner IoC peut également inspecter une image forensique montée.
Dans ce scénario, passez un argument en ligne de commande spécifiant le chemin du répertoire racine de l’image.
Remarque : Le chemin que vous passez pour l’analyse d’image forensique doit être la racine logique / de l’image.
L’outil utilise des chemins relatifs dans certains cas et vous pourriez recevoir des faux-positifs ou faux-négatifs si l’image n’est pas correctement montée.
Vous n’avez pas besoin d’être root pour exécuter en mode hors ligne.
Par exemple :
$ bash ./scanner-CVE-2023-3519-v1.1.sh /mnt/path/to/evidence/root/
Dans les deux modes, l’outil extraira le code de support dans un répertoire temporaire ; ce répertoire sera supprimé à la fin du script. L’outil n’apporte pas d’autres modifications au système, bien qu’il puisse générer des entrées de journal.
Comme pour toute analyse forensique, privilégiez l’analyse hors ligne d’une image dd plutôt qu’une réponse live.
Cela éliminera la probabilité que l’outil provoque l’écrasement de preuves pertinentes.
Les résultats du script sont divisés en trois sections principales.
Le résumé système affichera des informations de base sur l’appliance (si exécuté en mode live) et un oui/non si des preuves de compromission ont été détectées.
**********************************************************************
RÉSUMÉ :
Date : Sat Aug 12 22:46:26 UTC 2023
Nom d’hôte :
IP : 192.168.122.2
Version NS : 13.1-48.47
Version du scanner :
Mode d’exécution du scanner : Par défaut
Preuve de compromission trouvée : Oui
Preuve de scan trouvée : N/A - Script exécuté en mode par défaut
Preuve d’exploitation échouée trouvée : N/A - Script exécuté en mode par défaut
**********************************************************************
La section suivante affichera les détails sur les fichiers journaux qui ont été analysés, y compris la première et la dernière entrée de chaque fichier journal. C’est utile pour un enquêteur afin de déterminer la période de temps que le scanner a pu consulter dans les journaux et d’expliquer d’éventuels résultats manquants.
La dernière section détaillera les preuves de compromission identifiées, le cas échéant. Par exemple, le contenu de la liste noire trouvé dans les fichiers est présenté ci-dessous.
**********************************************************************
CORRESPONDANCE : contenu blacklisté 'blv_encode'
Preuve de compromission potentielle trouvée.
Vous devriez envisager de mener une enquête forensique du système.
**********************************************************************
correspondances pour 'blv_encode' :
/root/six.mal_
Si vous inventez d’autres moyens d’identifier une compromission, veuillez envisager de contribuer à ce Scanner IoC. Nous souhaitons fournir le scanner le plus complet et correct possible.
L’objectif principal est de rapporter des indicateurs de compromission à haute confiance. Étant donné que les utilisateurs peuvent se fier aux résultats de cet outil pour lancer des investigations supplémentaires, il est important de ne pas les envoyer sur une fausse piste. Par conséquent, des activités comme un simple scan ne doivent pas être rapportées en mode par défaut. Toute preuve qu’un acteur a eu accès au système, récupéré des informations ou créé du contenu doit toujours être rapportée.
Nous fournissons cet outil sous forme de script Bash car c’est un dénominateur commun sur les appliances Citrix ADC. Voici la matrice des fonctionnalités pour les versions Citrix ADC :
| Version NetScaler | OS | Langages disponibles |
|---|---|---|
| 13.1 | FreeBSD 8.4 | Bash, Perl, Python |
| 13.0 | FreeBSD 8.4 | Bash, Perl, Python |
| 12.1 | FreeBSD 8.4 | Bash, Perl, Python |
| 12.0 | FreeBSD 8.4 | Bash, Perl, Python |
Une fois que vous avez extrait le dépôt source, vous pouvez construire un script autonome à l’aide de l’outil ./build.sh.
Celui-ci regroupe le script principal et les ressources de support en un seul bundle.
Lors de l’exécution, il extrait dans un répertoire temporaire, s’exécute à partir de là, puis nettoie.
Ne construisez pas le script sur un netscaler. Cela entraînerait des faux positifs.
Pour construire :
$ bash ./build.sh > ioc-scanner-CVE-2023-3519-rev$(git rev-parse HEAD | cut -c 1-8).sh
Pour plus d’informations de Mandiant concernant CVE-2023-3519 et son exploitation dans la nature, veuillez consulter :