-%!% N0 Way %!%- Volume I, Numéro 3, Partie 3.7 w____OO____w Playing hide 'n' seek in CyberSpace by ++NeurAlien /\/OO\/\ Hey, je recois a l'instant l'article tres kewl d'Arscene et je me dis "Helluvabitch... wud B kewl 2 make de zame dingz 4 yunixzz zyztemz !" (ce qui veut dire Mr Allg00d : "ta mere en Slip bleu devant le Prisu' chausse du 2 !" Ouhahaha ) Alors, voila, je vais vous montrer comment jouer au gros chien avec son admin de systeme Unix en lui cachant des trucs n'importe ou. Ceci est utilisable sans programme spéciaux ni quoi: vous avez juste a connaitre la métthode. Et ensuite je vais vous montrer comment vous amuser enormement avec les nerfs des admins de serveurs FTP sur le reseau Internet par le biais des Incomings directories. Ce N-Phile est dedicace tout specialement à Arscene qui s'applique toujours à nous fournir des articles qui relevent le niveau de N0 Way... (Ca va plaire, la distribution de NW 3 est assurée à grande échelle cette fois ci ! :)) Je tiens a remercier aussi les quelques personnes qui m'ont enseignées l'art du hacking sous Unix, le Department of Defense aux USA sans lequel je n'aurais jamais eu acces a l'Internet (ni vous d'ailleur), les chiens dans la rue pour m'avoir souvent permis de me défouler, les "experts en sécurité" pour m'avoir souvent fait rire et enfin la brasserie Valstar SA pour m'avoir souvent dépanné ;)) Ou est ce que je me planque en local? ==================================== Well... Sous Unix c'est pas comme sous DOS, les attributs Caches et systemes, hum, yen a pas trop. Par contre unix a un gros avantage: il accepte BEAUCOUP BEAUCOUP de caracteres dans ses noms de fichier. Par exemple, il accepte les espaces dans ses noms de fichier. Ainsi on peut facilement dissimuler créer des fichier qui seront difficilement accessibles. On peut créer un fichier "sale admin" par exemple mais bon, ca se remarque ! Exemple 1: ======> Script started on Thu Sep 15 02:16:15 1994 DaubeNet-tmp {101} ls -al total 2 drwx------ 2 fred emprunte 512 Sep 15 02:16 . drwx------ 11 fred emprunte 512 Sep 15 02:16 .. -rw------- 1 fred emprunte 0 Sep 15 02:16 ex1 DaubeNet-tmp {102} cat >"sale admin" Haha, gros nain, tu sais meme pas effacer un fichier pfff.... ^D DaubeNet-tmp {103} exit ======> Script done on Thu Sep 15 02:17:36 1994 Alors la, l'admin quand il se pointe il voie: ======> Script started on Thu Sep 15 02:19:04 1994 DaubeNet-tmp {101} ls -al total 3 drwx------ 2 fred emprunte 512 Sep 15 02:17 . drwx------ 12 fred emprunte 512 Sep 15 02:17 .. -rw------- 1 fred emprunte 62 Sep 15 02:17 sale admin DaubeNet-tmp {102} exit ======> Script done on Thu Sep 15 02:19:18 1994 Ehehe, voila... Et la l'admin il aura beau tenter: ======> Script started on Thu Sep 15 02:19:22 1994 root# ls -al total 3 drwx------ 2 fred emprunte 512 Sep 15 02:17 . drwx------ 12 fred emprunte 512 Sep 15 02:17 .. -rw------- 1 fred emprunte 62 Sep 15 02:17 sale admin root# rm sale admin rm: sale: No such file or directory. rm: admin: No such file or directory. root# echo ARghhhhhh ARghhhhhh root# exit ======> Script done on Thu Sep 15 02:19:45 1994 Bref, pour l'effacer, en fait tout ce qu'il suffit de faire c'est: ======> Script started on Thu Sep 15 02:20:57 1994 DaubeNet-tmp {101} ls -al total 3 drwx------ 2 fred emprunte 512 Sep 15 02:17 . drwx------ 12 fred emprunte 512 Sep 15 02:17 .. -rw------- 1 fred emprunte 62 Sep 15 02:17 sale admin DaubeNet-tmp {102} rm "sale admin" DaubeNet-tmp {103} ls -al total 2 drwx------ 2 fred emprunte 512 Sep 15 02:21 . drwx------ 12 fred emprunte 512 Sep 15 02:17 .. DaubeNet-tmp {104} exit ======> Script done on Thu Sep 15 02:21:11 1994 Ca c'est marrant pour faire un peu chier l'admin mais quand vous voulez reellement planquer des trucs, il faut la jouer plus fine. Si par exemple root.axs et milnet.dialup sont tres importants pour vous et que vous empruntez le login de quelqu'un, vous pouvez les cacher tres simplement. Exemple 2: ======> Script started on Thu Sep 15 02:25:11 1994 DaubeNet-fred {101} ls -al total 46 drwx------ 12 fred emprunte 512 Sep 15 02:24 . drwxrwxr-x 5 root wheel 512 Sep 9 12:03 .. -rwx------ 1 fred emprunte 655 Sep 3 1993 .Xmodmaprc -rwx------ 1 fred emprunte 8331 Sep 3 1993 .Xresources -rwx------ 1 fred emprunte 653 Jul 4 15:21 .cshrc drwx------ 2 fred emprunte 512 Jun 12 22:31 .elm -rw------- 1 fred emprunte 2229 Jul 4 17:45 .history -rwx------ 1 fred emprunte 207 Sep 3 1993 .login -rwx------ 1 fred emprunte 105 Sep 3 1993 .mailrc -rwx------ 1 fred emprunte 83 Sep 3 1993 .profile -rwx------ 1 fred emprunte 7908 Sep 3 1993 .twmrc -rwx------ 1 fred emprunte 866 Sep 3 1993 .xinitrc drwx------ 2 fred emprunte 512 Jun 12 22:31 Mail -rw------- 1 fred emprunte 260 Sep 15 02:24 milnet.dialup -rw------- 1 fred emprunte 1040 Sep 15 02:24 root.axs drwx------ 7 fred emprunte 512 Jun 20 01:40 src drwx------ 2 fred emprunte 512 Sep 15 02:21 tmp drwx------ 5 fred emprunte 512 Jul 4 14:45 tools [voici nos fichiers] DaubeNet-fred {102} ll milnet.dialup root.axs 1 -rw------- 1 fred emprunte 260 Sep 15 02:24 milnet.dialup 2 -rw------- 1 fred emprunte 1040 Sep 15 02:24 root.axs [On crée le directory fantome] DaubeNet-fred {103} mkdir ".. " [On met nos fichiers dedans] DaubeNet-fred {104} mv milnet.dialup root.axs ".. " [OOOooOOoOoOps, ca fait drole quand meme deux directory ".." !!!] DaubeNet-fred {105} ls -al total 44 drwx------ 13 fred emprunte 512 Sep 15 02:25 . drwxrwxr-x 5 root wheel 512 Sep 9 12:03 .. drwx------ 2 fred emprunte 512 Sep 15 02:25 .. -rwx------ 1 fred emprunte 655 Sep 3 1993 .Xmodmaprc -rwx------ 1 fred emprunte 8331 Sep 3 1993 .Xresources -rwx------ 1 fred emprunte 653 Jul 4 15:21 .cshrc drwx------ 2 fred emprunte 512 Jun 12 22:31 .elm -rw------- 1 fred emprunte 2229 Jul 4 17:45 .history -rwx------ 1 fred emprunte 207 Sep 3 1993 .login -rwx------ 1 fred emprunte 105 Sep 3 1993 .mailrc -rwx------ 1 fred emprunte 83 Sep 3 1993 .profile -rwx------ 1 fred emprunte 7908 Sep 3 1993 .twmrc -rwx------ 1 fred emprunte 866 Sep 3 1993 .xinitrc drwx------ 2 fred emprunte 512 Jun 12 22:31 Mail drwx------ 7 fred emprunte 512 Jun 20 01:40 src drwx------ 2 fred emprunte 512 Sep 15 02:21 tmp drwx------ 5 fred emprunte 512 Jul 4 14:45 tools DaubeNet-fred {106} cd ".. " DaubeNet-fred {107} ls -al total 5 drwx------ 2 fred emprunte 512 Sep 15 02:25 . drwx------ 13 fred emprunte 512 Sep 15 02:25 .. -rw------- 1 fred emprunte 260 Sep 15 02:24 milnet.dialup -rw------- 1 fred emprunte 1040 Sep 15 02:24 root.axs DaubeNet-fred {108} cd .. DaubeNet-fred {109} mv ".. \milnet.dialup" . DaubeNet-fred {110} ls -al total 45 drwx------ 13 fred emprunte 512 Sep 15 02:26 . drwxrwxr-x 5 root wheel 512 Sep 9 12:03 .. drwx------ 2 fred emprunte 512 Sep 15 02:26 .. -rwx------ 1 fred emprunte 655 Sep 3 1993 .Xmodmaprc -rwx------ 1 fred emprunte 8331 Sep 3 1993 .Xresources -rwx------ 1 fred emprunte 653 Jul 4 15:21 .cshrc drwx------ 2 fred emprunte 512 Jun 12 22:31 .elm -rw------- 1 fred emprunte 2229 Jul 4 17:45 .history -rwx------ 1 fred emprunte 207 Sep 3 1993 .login -rwx------ 1 fred emprunte 105 Sep 3 1993 .mailrc -rwx------ 1 fred emprunte 83 Sep 3 1993 .profile -rwx------ 1 fred emprunte 7908 Sep 3 1993 .twmrc -rwx------ 1 fred emprunte 866 Sep 3 1993 .xinitrc drwx------ 2 fred emprunte 512 Jun 12 22:31 Mail -rw------- 1 fred emprunte 260 Sep 15 02:24 milnet.dialup drwx------ 7 fred emprunte 512 Jun 20 01:40 src drwx------ 2 fred emprunte 512 Sep 15 02:21 tmp drwx------ 5 fred emprunte 512 Jul 4 14:45 tools DaubeNet-fred {111} mv ".. /milnet.dialup" . DaubeNet-fred {112} ls -al total 47 drwx------ 13 fred emprunte 512 Sep 15 02:26 . drwxrwxr-x 5 root wheel 512 Sep 9 12:03 .. drwx------ 2 fred emprunte 512 Sep 15 02:26 .. -rwx------ 1 fred emprunte 655 Sep 3 1993 .Xmodmaprc -rwx------ 1 fred emprunte 8331 Sep 3 1993 .Xresources -rwx------ 1 fred emprunte 653 Jul 4 15:21 .cshrc drwx------ 2 fred emprunte 512 Jun 12 22:31 .elm -rw------- 1 fred emprunte 2229 Jul 4 17:45 .history -rwx------ 1 fred emprunte 207 Sep 3 1993 .login -rwx------ 1 fred emprunte 105 Sep 3 1993 .mailrc -rwx------ 1 fred emprunte 83 Sep 3 1993 .profile -rwx------ 1 fred emprunte 7908 Sep 3 1993 .twmrc -rwx------ 1 fred emprunte 866 Sep 3 1993 .xinitrc drwx------ 2 fred emprunte 512 Jun 12 22:31 Mail -rw------- 1 fred emprunte 260 Sep 15 02:24 milnet.dialup -rw------- 1 fred emprunte 1040 Sep 15 02:24 root.axs drwx------ 7 fred emprunte 512 Jun 20 01:40 src drwx------ 2 fred emprunte 512 Sep 15 02:21 tmp drwx------ 5 fred emprunte 512 Jul 4 14:45 tools [Alors pour pas faire trop louche, on va creer un directory pour un utilitaire bien obscure et qui semble utile à l'admin. Pour le trouver, reflechissez un peu et pas la peine de mettre ".Xnewsrc " si votre systeme n'a pas les news ;] DaubeNet-fred {113} mkdir ".Xnewsrc " DaubeNet-fred {114} mv root.axs milnet.dialup ".Xnewsrc " DaubeNet-fred {115} cd ".Xnewsrc " DaubeNet-fred {116} ls milnet.dialup root.axs DaubeNet-fred {117} ll total 3 1 -rw------- 1 fred emprunte 260 Sep 15 02:24 milnet.dialup 2 -rw------- 1 fred emprunte 1040 Sep 15 02:24 root.axs DaubeNet-fred {118} ls -al total 5 drwx------ 2 fred emprunte 512 Sep 15 02:27 . drwx------ 14 fred emprunte 512 Sep 15 02:27 .. -rw------- 1 fred emprunte 260 Sep 15 02:24 milnet.dialup -rw------- 1 fred emprunte 1040 Sep 15 02:24 root.axs DaubeNet-fred {119} cd .. DaubeNet-fred {120} ll total 43 1 drwx------ 2 fred emprunte 512 Sep 15 02:26 .. 1 -rwx------ 1 fred emprunte 655 Sep 3 1993 .Xmodmaprc 1 drwx------ 2 fred emprunte 512 Sep 15 02:27 .Xnewsrc 9 -rwx------ 1 fred emprunte 8331 Sep 3 1993 .Xresources 1 -rwx------ 1 fred emprunte 653 Jul 4 15:21 .cshrc 1 drwx------ 2 fred emprunte 512 Jun 12 22:31 .elm 3 -rw------- 1 fred emprunte 2229 Jul 4 17:45 .history 1 -rwx------ 1 fred emprunte 207 Sep 3 1993 .login 1 -rwx------ 1 fred emprunte 105 Sep 3 1993 .mailrc 1 -rwx------ 1 fred emprunte 83 Sep 3 1993 .profile 8 -rwx------ 1 fred emprunte 7908 Sep 3 1993 .twmrc 1 -rwx------ 1 fred emprunte 866 Sep 3 1993 .xinitrc 1 drwx------ 2 fred emprunte 512 Jun 12 22:31 Mail 1 drwx------ 7 fred emprunte 512 Jun 20 01:40 src 1 drwx------ 2 fred emprunte 512 Sep 15 02:21 tmp 1 drwx------ 5 fred emprunte 512 Jul 4 14:45 tools [ c'est discret et ca apparait pas sans l'option "-a" de "ls"] DaubeNet-fred {121} ls -l total 12 drwx------ 2 fred emprunte 512 Jun 12 22:31 Mail drwx------ 7 fred emprunte 512 Jun 20 01:40 src drwx------ 2 fred emprunte 512 Sep 15 02:21 tmp drwx------ 5 fred emprunte 512 Jul 4 14:45 tools DaubeNet-fred {122} rm -fr ".Xnewsrc " DaubeNet-fred {123} ls -al total 44 drwx------ 13 fred emprunte 512 Sep 15 02:27 . drwxrwxr-x 5 root wheel 512 Sep 9 12:03 .. drwx------ 2 fred emprunte 512 Sep 15 02:26 .. -rwx------ 1 fred emprunte 655 Sep 3 1993 .Xmodmaprc -rwx------ 1 fred emprunte 8331 Sep 3 1993 .Xresources -rwx------ 1 fred emprunte 653 Jul 4 15:21 .cshrc drwx------ 2 fred emprunte 512 Jun 12 22:31 .elm -rw------- 1 fred emprunte 2229 Jul 4 17:45 .history -rwx------ 1 fred emprunte 207 Sep 3 1993 .login -rwx------ 1 fred emprunte 105 Sep 3 1993 .mailrc -rwx------ 1 fred emprunte 83 Sep 3 1993 .profile -rwx------ 1 fred emprunte 7908 Sep 3 1993 .twmrc -rwx------ 1 fred emprunte 866 Sep 3 1993 .xinitrc drwx------ 2 fred emprunte 512 Jun 12 22:31 Mail drwx------ 7 fred emprunte 512 Jun 20 01:40 src drwx------ 2 fred emprunte 512 Sep 15 02:21 tmp drwx------ 5 fred emprunte 512 Jul 4 14:45 tools DaubeNet-fred {124} exit ======> Script done on Thu Sep 15 02:28:05 1994 Interressant n'est ce pas? Comme ca on peut planquer des trucs sympa meme si il y a un petit "d" au tout debut de l'affichage, on peut quand meme les cacher la dedans car en général les admins sont trop flemmards pour aller fouiller la dedans. Le nombre d'espace a la fin du fichier peut varier, un seul espace c'est tout de suite ce que l'on teste, mais si vous en mettez 42, c'est beaucoup moins évident. L'intéret de créer des fichier commencant par "." est qu'ils ne sont pas listés à moins qu'on donne l'option "-a" a la commande "ls". Vous pouvez aussi inclure des caracteres de controles dans le nom de vos fichier comme ^X ou ^T mais je déconseille car ca attire plutot l'attention. Comment je planque mes images? ============================= Dans certaines ecoles, il y a des règles pas si conne que ca qui interdisent les images sur leur réseau et donc des moulinettes tournent tous les jours pour traquer les .gif, .jpg etc... Pour eviter de vous les faire detruire, vous pouvez les cacher dans des fichiers TAR. exemple: ======> Script started on Thu Sep 15 02:49:50 1994 DaubeNet-tmp {101} ls -al total 778 drwx------ 2 fred emprunte 512 Sep 15 02:49 . drwx------ 13 fred emprunte 512 Sep 15 02:27 .. -rw------- 1 fred emprunte 557056 Sep 15 02:49 hardfuck.gif -rw------- 1 fred emprunte 221184 Sep 15 02:48 susan.gif DaubeNet-tmp {102} tar cvf projet-math.tar hardfuck.gif susan.gif hardfuck.gif susan.gif tar: tar vol 1, 2 files, 0 bytes read, 788480 bytes written. DaubeNet-tmp {103} ll total 1560 552 -rw------- 1 fred emprunte 557056 Sep 15 02:49 hardfuck.gif 784 -rw------- 1 fred emprunte 788480 Sep 15 02:50 projet-math.tar 224 -rw------- 1 fred emprunte 221184 Sep 15 02:48 susan.gif DaubeNet-tmp {106} rm hardfuck.gif DaubeNet-tmp {107} rm susan.gif DaubeNet-tmp {108} ll total 784 784 -rw------- 1 fred emprunte 788480 Sep 15 02:50 projet-math.tar DaubeNet-tmp {109} compress projet-math.tar DaubeNet-tmp {110} ll total 5 5 -rw------- 1 fred emprunte 4169 Sep 15 02:50 projet-math.tar.Z DaubeNet-tmp {111} exit ======> Script done on Thu Sep 15 02:51:17 1994 Si le programme de l'admin est assez vicieux pour checker l'interieur des fichiers compresses et de le detarer ensuite, vous n'avez qu'a faire cela et ensuite UUENCODER votre "projet-math.tar.Z" en un "projet-math.dat" ainsi tout le monde (y compris le programme) pensera que c'est un fichier donnée. Crypter ses fichiers: ==================== Sous unix, il y a un petit utilitaire bien piegeur qui s'appelle crypt. Attention, si votre Admin n'est pas trop con, il aura un petit outil appelé gentiment CBW pour Crypt Breaker Workbench qui lui permettra de casser le code de crypt. Je vous déconseille donc d'utiliser crypt. (PS: cbw peut vous être utile, il est disponible en ftp anonymous un peu partout sur l'internet sous le nom: cbw.tar.Z). Par contre, un package genial c'est PGP: un produit qui permet d'ampliquer assez simplement le cryptage RSA (ou plutot IDEA) qui semble t'il est une combinaison de DES et de RSA. C'est vraiment un outil génial qui vaudrait un article de N0 Way a lui tout seul. Faire criser son admin: ====================== Vous savez certainnement que sous Unix, certains caracteres sont interpretés par le Shell avant d'executer la commande dans laquelle était le fameux caractere. Ce caractere c'est par exemple "*" qui va être remplacé par les noms de tous les fichiers du directory en question. Amusez vous a créer dans un directory hyper important de votre admin un fichier nommé "*". Exemple: ======> Script started on Thu Sep 15 03:11:09 1994 DaubeNet-/home/root {101} ls -al total 778 drwxrwxrwx 2 root wheel 512 Sep 15 03:11 . drwxr-xr-x 13 root wheel 512 Sep 15 02:27 .. -rw-r-xr-x 1 root wheel 557056 Sep 15 02:49 important.txt -rw-r-xr-x 1 root wheel 221184 Sep 15 02:48 whole-sources.c DaubeNet-/home/root {102} cat >\* ^D DaubeNet-/home/root {103} ll total 776 0 -rw-r-xr-x 1 fred emprunte 0 Sep 15 03:11 * 552 -rw-r-xr-x 1 root wheel 557056 Sep 15 02:49 important.txt 224 -rw-r-xr-x 1 root wheel 221184 Sep 15 02:48 whole-sources.c DaubeNet-/home/root {104} exit ======> Script done on Thu Sep 15 03:11:40 1994 L'admin (assez con pour laisser son directory en lecture / ecriture) a une jolie bombe a retardement qu'il va s'empresser d'allumer des qu'il se loggera. ======> Script started on Thu Sep 15 03:18:54 1994 DaubeNet-/home/root {101} ls -al total 778 -rw-r-xr-x 1 fred emprunte 0 Sep 15 03:11 * drwxrwxrwx 2 root wheel 512 Sep 15 03:11 . drwxr-xr-x 13 root wheel 512 Sep 15 02:27 .. -rw------- 1 root wheel 557056 Sep 15 02:49 important.txt -rw------- 1 root wheel 221184 Sep 15 02:48 whole-sources.c DaubeNet-/home/root {102} rm * DaubeNet-/home/root {103} ll DaubeNet-/home/root {104} ls -al total 2 drwxrwxrwx 2 root wheel 512 Sep 15 03:19 . drwxr-xr-x 13 root wheel 512 Sep 15 02:27 .. DaubeNet-/home/root {105} echo Arghhhhh Arghhhhh DaubeNet-/home/root {106} exit ======> Script done on Thu Sep 15 03:19:21 1994 VOila, c'est fini pour la partie locale... Maintenant, je vais vous expliquer comment vous servir des répertoires incomings et autres pour vous transferer des fichier. Le FTP anonyme: ============== Sur FTP Anonyme, vous avez souvent un directory "/incoming" qui vous permet de déposer des fichiers pour l'admin. Un site bien configuré aura mis comme mode pour ce dir: rwxrwxr-t qui veut dire: rwx : lecture/ecriture/traversee possible pour l'owner rwx : meme chose pour le groupe -wt : acces en ecriture avec traversée du directory possible mais sans possibilité d'effacer le fichier d'un autre. Un site mal configuré aura pour mode: rwxrwxrwx qui veut dire: lecture, ecriture et traversée pour tout le monde. Donc vous pourrez vous créer par un ftp> mkdir ".. " un fichier secret et ensuite déposer les dernieres versions d'Excel ou le dernier N0 Way pour vos amis qui viendront les recuperer plus tard et les effacer! Interressant n'est ce pas? Ainsi, hop, vous pouvez faire transiter anonymement des trucs sur Internet. I-node muncher: ============== Un admin vous a vraiment fait une crasse? Vous êtes vert et vous voulez un peu le faire chier... un "rm -fr /" ? C'est vraiment con car ca peut causer de sales problèmes à des personnes qui n'ont rien fait. Ce qui est mieux c'est de faire un peu chier l'admin en lui bouffant tous ses Inodes. Un inode c'est le numéro qui désigne un fichier dans le filesystem unix donc si vous les prenez tous, personne ne pourra plus creer de fichier même si il reste plein de place sur le disque. Alors voila le shell script nw.sh: $ cat >nw.sh <dontkill.sh < Non mais c'est dingue, Vous etes sourd ou quoi, je vous repete que c'est FINI! :)