La sécurité des systèmes SAP suscite une préoccupation croissante pour les entreprises. Les vulnérabilités dans ces systèmes peuvent avoir des conséquences dévastatrices sur la confidentialité, l'intégrité et la disponibilité des données de l'entreprise.
Certaines de ces vulnérabilités sont considérées comme critiques et nécessitent une attention particulière, comme les CVE (Common Vulnerabilities and Exposures). Dans cet article, nous allons nous pencher sur les vulnérabilités les plus couramment ciblées dans les environnements d'application SAP.
Vulnérabilités SAP non corrigées
Les éditeurs de logiciels, tels que SAP, publient régulièrement des mises à jour pour répondre aux nouvelles menaces et vulnérabilités dans leurs applications. SAP informe ses clients de ces mises à jour via des notes de sécurité, publiant 196 d'entre elles en 2022, un chiffre en constante augmentation.
Selon une étude d'Onapsis, de nombreuses vulnérabilités dans les systèmes SAP sont considérées comme critiques et permettent aux pirates informatiques d'accéder à l'application ou au système d'exploitation, d'élever leurs privilèges ou de compromettre les systèmes. Les vulnérabilités CVE-2020-6287 et CVE-2020-6207, identifiées par Onapsis et SAP, ont été exploitées par des pirates informatiques au cours des dernières années. De nombreux exploits pour ces vulnérabilités sont accessibles au public, certains disponibles sur GitHub. Parmi les vulnérabilités les plus critiques se trouvent CVE-2020-6287 et CVE-2022-22536.
Dans notre exemple nous allons utiliser la CVE-2020-6287, nous pouvons chercher sur GitHub un exploit
Bien que les technologies d'intelligence artificielle (IA) soient utiles pour détecter et prévenir les vulnérabilités dans les systèmes SAP, elles peuvent également être utilisées à des fins malveillantes. Les pirates informatiques peuvent exploiter des IA pour automatiser le processus de recherche de vulnérabilités dans les systèmes SAP, notamment en utilisant le traitement du langage naturel pour comprendre les descriptions des CVE et les documents techniques liés à ces vulnérabilités.
Exemple de requêtes avec ChatGPT
Nous pouvons récupérer le contenue de la requête HTTP malveillante directement au sein de GitHub
Pour rester informé des vulnérabilités liées à SAP, il est recommandé de lire régulièrement les notes de sécurité de SAP, ainsi que de suivre le catalogue des vulnérabilités exploitables connues de CISA. Actuellement, dix vulnérabilités affectant SAP sont répertoriées dans ce catalogue.
La table CWBNTMSG permet de vérifier si une note sécurité a été appliqué à un environnement SAP
Ici nous allons vérifier si la note sécurité 2986980 figure dans notre système
Aucune correspondance de cette note sécurité dans environnement alors que celle-ci est sortie en janvier 2021
La CVE-2021-21468 est liée à la note de sécurité mentionnée précédemment
La CVE-2021-21468 est une vulnérabilité qui permet d'appeler un module fonction sans effectuer de contrôle d'autorisation. Si cette vulnérabilité est exploitée avec succès, elle peut permettre à un attaquant de lire l'intégralité de la base de données. Pour exploiter cette faille, un attaquant peut invoquer la fonction à distance via le protocole RFC.
En effet celle-ci est accessible à distance.
Pour pouvoir exploiter le module fonction, il est nécessaire de lui fournir des valeurs correspondant aux informations que l'on recherche.
On va ici préciser les valeurs pour pouvoir récupérer les valeurs hachées des différents mots de passe
On obtient le mot de passe haché de chaque utilisateur SAP
La récupération de la valeur de hachage du mot de passe peut faciliter une attaque par dictionnaire pour récupérer le mot de passe en clair. Pour corriger cette vulnérabilité, il est crucial d'appliquer les mises à jour et correctifs de sécurité publiés par SAP. Il est également important de vérifier la configuration correcte du pont RFC entre les environnements SAP et de restreindre utilisateur distant afin qu’il ne puisse pas accéder à la transaction qui permet exploitation de cette vulnérabilité
Vulnérabilités dans le code SAP personnalisé
Les organisations personnalisent souvent leur code d'application SAP pour répondre à leurs besoins spécifiques, mais il est crucial de vérifier régulièrement ce code personnalisé pour détecter les failles potentielles.
Les vulnérabilités les plus critiques incluent les injections de commandes ABAP, de commandes du système d'exploitation et d'OSQL, car elles peuvent permettre une compromission totale du système. SAP a également signalé d'autres failles de développement de code, telles que la redirection d'URL et le manque de vérification de contenu lors des téléchargements HTTP, ainsi que l'accès en lecture et en écriture aux données sensibles dans les bases de données.
Les failles liées au code de développement SAP présentent un risque accru d'exploitation interne car elles peuvent être exploitées avec un utilisateur et un niveau d'accès approprié.
Encore une fois nous pouvons nous aider des Intelligence Artificielle pour la création de notre code.
Création de code en ABAP pour redirection URL grâce à ChatGPT
Pour prévenir les vulnérabilités liées au code personnalisé dans les applications SAP, il est recommandé d'utiliser des outils de sécurité comme ceux fournis par SAP - SAP Code Vulnerability Analyzer (CVA), le SAP Enterprise Threat Detection (ETD), SAP Security Scanner ou d’autres outils du marché.
Il est important de noter que ces outils ne garantissent pas une sécurité complète, car il est toujours possible que des vulnérabilités restent inconnues d’où l’importance d’assurer la bonne gouvernance des équipes et des pratiques de développement.
Sources;
https://securitybridge.com/sap-patchday/sap-security-patch-day-january-2021/
https://chat.openai.com/c/77bfa32c-b6c1-48ec-a0be-50484119132f
https://www.sap.com/france/index.html?url_id=auto_hp_redirect_france
https://onapsis.com/blog/sap-development-system-critical-entry-point-attacks