Que peut-il arriver (vecteurs d'attaque typiques)

Pour illustrer les problèmes typiques d’attaque et d’architecture, nous fournirons des exemples de solution SAP ERP, car elle est la plus répandue installée dans 85% des sociétés Fortune 2000.



Les risques d'une configuration non sécurisée des systèmes ERP et d'autres applications métier sont les suivants.


1. Attaques via des services vulnérables


La plupart des systèmes ERP ont des dizaines voire des centaines de services installés par défaut. Ils incluent des services typiques et basés sur le Web. Certains d'entre eux sont chargés de différentes fonctions administratives. Par exemple, SAP Management Console, ou SAPControl, permet un contrôle à distance sur les systèmes SAP. Ses fonctions principales sont le démarrage et l'arrêt à distance, pour effectuer ce qui nécessite de connaître le nom d'utilisateur et le mot de passe.


Néanmoins, certaines fonctions peuvent être utilisées à distance sans authentification. La plupart d'entre eux permettent de lire différents journaux et traces et parfois des paramètres système.


2. Escalade de privilèges par les initiés


Lorsque les utilisateurs se connectent au serveur via une application client telle que SAP GUI, ils peuvent exécuter différentes fonctions. S'ils veulent exécuter certaines fonctionnalités, par exemple, créer un ordre de paiement ou un nouvel utilisateur ou remplir un formulaire, ils doivent entrer le nom de la transaction particulière dans le menu SAP. Le système ouvrira une fenêtre de dialogue où un utilisateur peut spécifier différents paramètres. Par exemple, si les utilisateurs exécutent la transaction SU01 pour créer de nouveaux utilisateurs dans le système, ils verront un écran où ils doivent remplir tous les détails sur l'utilisateur nouvellement créé, puis cliquer sur le bouton «Créer». Si les données sont correctes, le nouvel utilisateur sera créé dans le système.


Cependant, la connexion via SAP GUI et l'exécution de transactions ne sont pas le seul moyen d'exécuter la fonctionnalité SAP. Les systèmes SAP sont complexes et une action peut être effectuée de plusieurs manières. Par exemple, les autres façons d'exécuter des fonctionnalités dans le système SAP incluent:


  • exécution d'un travail en arrière-plan à l'aide de RFC (comme RPC sous Windows);
  • appeler la même fonction via une interface SOAP - une interface Web pour exécuter des programmes RFC à distance;
  • exécution de l'application web dynpro. Web Dynpro est une interface Web pour le système SAP qui peut être utilisée si les employés n'ont pas d'application client et ne disposent que d'un navigateur Web.

Comme vous pouvez le voir, toutes ces méthodes nécessitent une approche différente pour la protection.


3. Développeurs malveillants


Les programmes écrits en langage ABAP (langage propriétaire SAP destiné à étendre les fonctionnalités des systèmes SAP) peuvent présenter des vulnérabilités et, ce qui est plus important, ce langage peut également être utilisé pour écrire des portes dérobées qui peuvent fournir des fonctionnalités malveillantes telles que l'envoi des détails de chaque transaction à un 3ème partie par e-mail ou même en les publiant sur Twitter.


Malheureusement, le développement au sein de l'entreprise est presque incontrôlé. Vous pouvez surveiller l'occurrence de nouveaux programmes dans le système et potentiellement trouver un développeur, mais vous ne pouvez pas détecter exactement ce que fait chaque nouveau programme, sauf si vous lisez chaque chaîne du code source. Ainsi, sans utiliser de solutions supplémentaires, personne ne sait exactement ce que les développeurs effectuent dans le système. Il n'y a aucune mesure de contrôle, ils peuvent développer un code non sécurisé, manquer d'ajouter des chèques de contrôle d'accès dans le programme, envoyer de l'argent sur leurs comptes bancaires et personne ne pourra le découvrir à moins de consulter leur code source. Ainsi, le manque de contrôle sur les développeurs en fait une sorte de dieu de SAP, et leurs actions doivent être analysées.


4. Connexions non sécurisées


Vous devez connecter différentes applications pour automatiser les processus métier. Par exemple, si vous souhaitez générer automatiquement une facture dans le système SAP et envoyer de l'argent à un compte bancaire particulier via le système bancaire, vous devez connecter l'ERP et le système bancaire. Les systèmes d'application métier sont connectés les uns aux autres comme une toile d'araignée. En réalité, il existe des dizaines de connexions similaires et toutes peuvent être critiques en termes de sécurité. Par exemple, ces connexions peuvent stocker des noms d'utilisateur et des mots de passe. De plus, les systèmes sont entrelacés non seulement à l'intérieur du réseau d'entreprise mais également avec des réseaux partenaires via Internet ou avec d'autres fournisseurs tels que des banques ou des compagnies d'assurance. Certains des systèmes sont connectés directement au réseau ICS / SCADA via des systèmes SAP particuliers tels que SAP xMII (Manufacturing Integration and Intelligence) ou SAP PCo (SAP Plant Connectivity).


Techniquement, ce processus est géré par RFC (Remote Function Call) et d'autres connexions entre les systèmes SAP, qui stockent généralement les informations d'identification pour accéder à un système satellite. Les connexions RFC sont développées par SAP pour transférer des données entre deux systèmes SAP. Les recherches d'ERPScan ont révélé que le nombre moyen de connexions dans un système SAP typique est d'environ 50, et 30% d'entre elles stockent généralement des informations d'identification. Une fois que les attaquants ont pénétré dans le module SAP le plus faible, ils peuvent facilement accéder aux systèmes connectés, entre eux et d'autres. Par conséquent, l'examen de toutes sortes de connexions entre les systèmes SAP est très important. Par exemple, il est possible d'accéder à l'infrastructure OT d'une société pétrolière et gazière et de voler du pétrole en utilisant une chaîne de vulnérabilités et des connexions entre des systèmes exploitant une vulnérabilité SAP comme point de départ.


Dans le prochain article, nous nous concentrerons sur la protection des systèmes ERP.

Source: https://habr.com/ru/post/fr468487/


All Articles