Comment utiliser le syst�me NTFS de mani�re non conventionnelle ? Comment cacher des fichiers de toute nature (textes, ex�cutables, scripts) par l'ensemble des outils fournis par Microsoft ? Explication des possibilit�s magiques du NTFS. Les plates-formes Windows font l�gion aujourd'hui. On les trouve dans les entreprises, chez les particuliers sous plusieurs variantes : Windows NT 4, Windows XP, Windows 2000… Pourtant, bien que ces syst�mes soient omnipr�sents, il subsiste toujours des fonctionnalit�s qui ne s'�bruitent gu�re. Ces subtilit�s peuvent pourtant s'av�rer importantes, voire dangereuses. NTFS est l'abr�viation de New Technologie File System. C'est le syst�me de fichiers de Windows NT. La plupart des particuliers utilisent ce syst�me de fichiers ; c'est le cas �galement des administrateurs r�seaux. Les pr�c�dents syst�mes de fichiers pr�sentaient trop de d�savantages ; de plus la NTFS propose un niveau de s�curit� non pr�sent dans les syst�mes pr�c�dents. Il existe une fonctionnalit� de la NTFS qui peut surprendre : les ADS. Ce n'est gu�re �tonnant si peu de monde connaisse cette fonctionnalit� car elle sert � assurer une compatibilit� avec le syst�me HFS (Macintosh File System). Assurer une compatibilit� est un atout me direz-vous. Le probl�me est que Microsoft a impl�ment� cette fonctionnalit� au niveau du syst�me, mais pas au niveau de l'explorateur qui ne propose pas d'outils pour se servir ou d�tecter la pr�sence de tels fichiers. Bien que Windows ne propose pas d'outils pour se servir de mani�re "transparente" cette fonctionnalit�, il est tout � fait possible pour un utilisateur de cr�er et d'utiliser ce syst�me. De mani�re tr�s simple. Ouvrez une console DOS (ex�cutez/cmd.exe). Au niveau utilisateur, ADS est tr�s efficace pour cacher ses fichiers. Nous allons cr�er un r�pertoire pour faire l'ensemble des tests. Pour ce faire, faites : - Mkdir c: ests Ceci cr�era un r�pertoire tests � la racine du C:. Allez dans ce r�pertoire (cd c: ests). A l'int�rieur de celui-ci, nous allons cr�er un fichier. C'est dans ce fichier que l'on pourra cacher nos donn�es. Pour la cr�ation, il est possible d'utiliser la commande echo. Dans notre cas on utilise un fichier texte, mais cela pourrait �tre un fichier de n'importe quelle nature. Utilisez la commande 'dir' du syst�me et regardez la taille du fichier g�n�r�. Celui-ci p�se quelques octets. Notez quelque part la place disque disponible au total. Cela sera utile pour v�rifier l'un des probl�mes engendr� par cette fonctionnalit� de la NTFS. Maintenant, � l'int�rieur de ce fichier, nous allons cacher un texte qui ne sera pas visible par le syst�me. Pour acc�der � ADS, il suffit de mettre ':' apr�s le nom de fichier, le reste des commandes demeurant inchang�es. Avec la commande 'dir /a' regardez si le fichier appara�t et si l'espace disque n'a pas chang�. Tout laisse para�tre que le syst�me n'a pas cr�� de fichier. Comme ADS n'est pas r�ellement support� par les outils standards de Windows, lire le fichier est une t�che plus ardue car la commande 'type' renvoie une erreur de syntaxe lorsque l'on sp�cifie : dans la ligne de commandes. Pour lire le fichier, faites ceci : - Notepad fichier_visible.txt:cache.txt Le notepad s'ouvre et le contenu du fichier cach� appara�t. Avec ce syst�me, il est possible de cacher plusieurs fichiers dans un seul. Il est �galement possible de cacher des fichiers de grosse taille, la limite �tant la place disponible sur le disque. Mais je vous arr�te tout de suite : si vous cachez 3 gigas de fichiers et que Windows vous annonce un espace libre de 4 gigas, il ne vous reste en fait qu'un seul giga. D'o� le corollaire : si Windows me dit que je n'est pas assez d'espace disque durant une copie et que pourtant l'explorateur voit une place suffisante, des fichiers peuvent �tre cach�s sur votre syst�me ! Il est �galement possible de cr�er des ADS autres que sur des fichiers : par exemple sur des r�pertories. - Echo invisible :cache.txt ADS ne doit pas �tre consid�r� comme des donn�es textes. En fait, c'est tout simplement un fichier. Il est donc possible de cacher n'importe quel type de fichier : textes, binaires, ex�cutables, scripts windows. La faiblesse de ce syst�me r�side l�-dedans. Prenons l'exemple d'un ex�cutable en camouflant le solitaire de Windows dans un fichier. � Type c:windowssystem32sol.exe fichier_visible.txt :hidden.exe � Start fichier_visible.txt:hidden.exe � Sous certains syst�mes, faites comme ceci : start .fichier_visible.txt : hidden.txt Et le solitaire se lance. Comme ADS est un fichier, tous les fichiers ex�cutables par le syst�me peuvent �tre lanc�s, m�me les scripts en .wsh. Or, tout le monde sait que beaucoup de virus sont des scripts… De plus il est possible de faire ex�cuter un fichier ADS d�s le d�marrage de Windows, et ce, via la base de registres gr�ce � cette cl� : HKEY_LOCAL_MACHINESSoftwareMi crosoftWindowsCurrentVersionRun Pour ex�cuter un ADS d'une page web ou via le menu ex�cuter : -File:///c:/tests/fichier_visible. txt:hidden.exe Le fait que Microsoft ait impl�ment� cette fonctionnalit� �tait n�cessaire pour des raisons de compatibilit�. Le point noir est le manque de transparence face � cette technologie. Elle peut �tre mise en œuvre de mani�re simple � des fins malicieuses ou pour cacher des fichiers sensibles. Les API Windows de notification d'acc�s remontent un code pour tous les acc�s vers les ADS. Il est plus difficile par contre de traiter le fichier. Par exemple un anti-virus doit conna�tre ce syst�me pour pouvoir �tre efficace. S'il ne prend pas en compte cette fonctionnalit�, il d�tectera l'acc�s disque (donc analyser un fichier) mais ne trouvera pas le fichier � scanner. Enfin, cela pourrait �tre pire. Des petits malins auraient pu �crire un service serveur FTP g�rant cette fonctionnalit� de mani�re transparente pour les clients.