Flux RSS - La vie du site - Nouveautés et mises à jour
Assiste.com - Sécurité informatique - Vie privée sur le Web - Neutralité d'Internet Assiste.com - Sécurité informatique - Vie privée sur le Web - Neutralité d'Internet

ADS - Alternate Data Stream - Contre-mesures

Les fichiers sous Microsoft Windows et le système de fichiers NTFS, sont constitués de plusieurs flux dont zéro à plusieurs flux alternatifs totalement invisibles, pouvant contenir n'importe quoi, y compris du code exécutable.

24.11.2022 : Pierre Pinard.

Pour aller plus loin

  • Utilisateur de Windows Server (à partir de 2003 R2), exploitez la commande dirquota.exe.

  • Utilisateurs de serveurs IIS, analysez avec URLScan..

Pour comprendre

  • Les ADS ne sont pas toutes suspicieuses ! On ne peut donc pas toutes les supprimer les yeux fermés.

  • La destruction d'une ADS peut s'obtenir, théoriquement, simplement en détruisant l'objet parent (le fichier ou le répertoire) de rattachement.

  • Il faut envisager de copier le fichier sur un support non organisé en NTFS (un disque formaté en FAT ou une clé USB), détruire l'original et restaurer le fichier à partir de sa sauvegarde. Les ADS qui étaient attachées à ce fichier sont perdues.

  • Les ADS racine ne peuvent pas être détruites du tout (sauf à reformater le disque).

ADS - Alternate Data Stream - Contre-mesures - Détruire une ADS

Des outils spécialisés pour voir les ADS, certains pour les détruire, certains avec une liste blanche d'ADS à ne pas détruire.

  • ADS Spy (de Merijn Bellekom) - gratuit - énumération et destruction (ADS Spy est également disponible à l'intérieur de HijackThis du même auteur).

  • HijackThis (de Merijn Bellekom) - gratuit - contient ADS Spy. (Notons qu'outre cet usage particulier, HijackThis est totalement périmé et ne doit plus être utilisé).

  • ADS Locator (de Patrick Kolla - Spybot Search & Destroy - Safer Networking Limited).

  • TDS (de DiamondCS) - commercial - N'existe plus (abandonné par DiamondCS depuis le 21.07.2005.

  • Sfind (de Foundstone) - N'existe plus.

  • RootkitRevealer (de SysInternals) - Gratuit - énumération seule - liste blanche.

  • File Monitor (de SysInternals) - Gratuit - énumération seule.

  • More (Windows commentée par JC Bellamy) - gratuit - visualisation seule et abracadabrantesque - Mode console. Le site de JC Bellamy n'existe plus.



    de JC Bellamy

    Il existe très peu de moyens standards pour afficher le contenu d'un flux additionnels. Seule la commande more, avec redirection, permet de le faire :

    D:\>more < d:\Starswar.txt:Yoda
    May the Force be with You

    D:\>more < d:\Starswar.txt:Vador
    You don't know the power of the dark side

    On peut appliquer cette méthode aux flux relatifs au résumé, mais le résultat n'est guère utilisable, car les textes sont soit au milieu d'informations binaires, et parfois en UNICODE :

    D:\>more < d:\Starswar.txt:^ESummaryInformation
    (caractères non imprimables)
    Yoda et Vador
    (caractères non imprimables)
    StarsWar
    (caractères non imprimables)
    George Lucas
    (caractères non imprimables)
    ...

    De plus, il n'existe sous Windows (toujours en standard) AUCUNoutil capable de donner le nombre et les noms des flux contenus dans un fichier.

    La seule occasion où l'on peut prendre connaissance de l'existence de flux additionnels est lors d'une copie du fichier depuis l'explorateur vers une autre partition de type non NTFS (dans l'exemple ci-dessous, on a voulu effectuer un "drag-and-drop" vers la partition C:, de type FAT).

  • ShowStream (de JC Bellamy) - gratuit - énumération seule - Mode graphique - N'existe plus.

  • CmdStream (de JC Bellamy) - gratuit - énumération seule - Mode console - N'existe plus.

  • Streams (de SysInternals) - gratuit - énumération seule - Mode console.

  • StreamDir (de Texas Imperial Software) - Gratuit - énumération seule - Mode console - N'existe plus.

  • CrucialADS (de Crucial Security) - Gratuit - énumération seule - Mode graphique - N'existe plus.

  • LADS (de Frank Heyne Sofware) - Gratuit - énumération seule - Mode console - N'existe plus.

  • Phrozen ADS Revealer (de Phrozen) - Gratuit - visualisation - suppression - Mode graphique.

ADS - Alternate Data Stream - Contre-mesures - Des outils spécialisés pour voir et détruire les ADS

Windows Server (à partir de 2003 R2) ajoute une notion de quotas plus fine que précédemment puisqu'elle descend au niveau des répertoires et non plus seulement au niveau des volumes. Utilisez la commande dirquota.exe. Les ADS - Alternate Data Stream sont pris en compte donc la présence de données en flux ADS sera révélée par la taille anormale utilisée, mais les flux additionnels eux-mêmes ne seront pas révélés.

N'existe plus (archive).

ADS - Alternate Data Stream - Contre-mesures - Les Quotas de Windows Server

Un flux ADS - Alternate Data Stream caché peut contenir un site Web entier ! Caché sur un serveur il va exploiter la bande passante et toutes les ressources de celui-ci à l'insu de l'administrateur. Sous IIS, l'usage de URLScan permet de révéler la présence de tels sites squattant un serveur.

ADS - Alternate Data Stream - Contre-mesures - Les sites Web cachés

Cette dll de Microsoft a été publiée (dernier « time stamp » (horodatage)) le 04 février 2000 à 05h01, et n'a plus été mise à jour depuis. La page traitant de ce sujet sur le site de Microsoft annonce même que le produit a été retiré. Il s'agit d'une dll 16 bits pour Windows 98, Me, NT (Windows 2000 et Windows XP n'étaient pas encore sortis).

Des versions modifiées en 32 bits et 64 bits ont été développées, sur la base du produit d'origine de Microsoft, puisque, contrairement à toute attente de la part de Microsoft, le code source était disponible !
StrmExt.dll en version 16 bits peut encore être trouvée sur le site de Microsoft (vérification du 20.05.2013)
StrmExt.dll en version 32 bits
StrmExt.dll en version 64 bits

Version 16 bits d'origine Microsoft :
Copier cette dll dans votre répertoire système "system32" (probablement "c:\windows\system32"). Faites "Démarrer Exécuter" et tapez "regsvr32 StrmExt.dll". Vous devez voir apparaître ce message :

ADS - Alternate Data Stream - StrmExt.dll de Microsoft
ADS - Alternate Data Stream - StrmExt.dll de Microsoft

Vous avez, désormais, dans les propriétés des objets (dans l'explorateur de Windows), un nouvel onglet donnant la liste des noms des flux ADS attachés à l'objet et une petite fenêtre permet d'en voir le contenu.

ADS - Alternate Data Stream - StrmExt.dll de Microsoft
ADS - Alternate Data Stream - StrmExt.dll de Microsoft

Cet utilitaire permet de détruire un flux ADS :

ADS - Alternate Data Stream - StrmExt.dll de Microsoft
ADS - Alternate Data Stream - StrmExt.dll de Microsoft
ADS - Alternate Data Stream - Contre-mesures - StrmExt.dll de Microsoft # # # # # # # # # # # # # # # # # # # # # # #

Ressources NTFS


Ressources ADS


Ressources ADS