User Tools

Site Tools


hack:binary_planting

binary_planting

Description

“ Binary Planting ” est un terme général pour une attaque où l'attaquant place un fichier binaire contenant le code malicieux dans un fichier local ou distant pour une application vulnérable qui va le charger et l'exécuter.

Il peut y avoir différentes raisons pour qu'une application charge un code binaire malicieux :

  • Les permissions d'accès peu sécurisées sur un annuaire local permettent à un attaquant local d'implanter le code binaire malicieux dans un endroit précis. (Un exemple typique est un installateur d'application qui n'a pas les permissions d'accès correctes sur les répertoires d'application.).
  • Une application peut être utilisée pour implanter du code binaire malicieux dans un endroit ciblé d'une autre application. (Un exemple est Internet Explorer-Safari qui est sensible à cette vulnérabilité).
  • L'application cherche du code binaire dans des endroits non précis, même sur les fichiers distants (Un exemple typique est une application Windows qui charge un lien dynamique d'une librairie, depuis un répertoire de travail, après avoir été sur un répertoire partagée du réseau.)

Exemples

Permission d'accès non sécurisées – Attaque de base

  • Un installateur d'application Windows crée un répertoire à la racine (C:\Application) et y installe l'application, mais ne limite pas l'accès en écriture pour les utilisateurs non-privilégiés.
  • Supposons que l'application (C:\Application\App.exe) charge WININET.DLL. On s'attend à ce qu'il se trouve dans le répertoire Windows System32.
  • Un utilisateur local A implante un WININET.DLL malicieux dans le répertoire C:\Application.
  • Un utilisateur local B lance l'application, qui charge et exécute le WININET.DLL malicieux au lieu du légitime.

Répertoire de travail courant – Attaque de base

  • Supposons qu'une application Windows charge DWMAPI.DLL en l'appelant DWMAPI.DLL. Cette bibliothèque est attendue à être trouvée dans le répertoire Windows System32, mais qui n'existe que pour Windows Vista et Windows 7.
  • Supposons que l'application est associée à l'extension de fichier. .'bp'
    1. L'attaquant va sur un répertoire partagé d'un réseau et y place honeypot.bp et DWMAPI.DLL (il est possible que ce soient des fichiers cachés).
    2. L'attaquant invite un utilisateur Windows XP à valler sur le dossier partagé avec l'Explorateur Windows.
    3. Quand un utilisateur double-clics sur honeypot.bp, par l'Explorateur de Windows, il va sur le répertoire de travail distant et lance l'application pour ouvrir le fichier.
    4. L'application essaie de charger DWMAPI.DLL, mais ne le trouvant pas dans les répertoires système de Windows, il charge et exécute celui déposé par l'attaquant dans le réseau partagé.

References

  • CWE-114: Process Control
    • Elevation of Privilege Vulnerability in iTunes for Windows - example of Insecure Access Permissions-based Attack
    • Remote Binary Planting in Apple iTunes for Windows - example of Current Working Directroy-based Attack
hack/binary_planting.txt · Last modified: 2022/04/07 07:43 by 127.0.0.1