Land Of The Free #2

1. Edito
2. Récupérer des documents sur un PC
3. Foutre la merde sur un site
4. Tutorial sur le cracking N°1
5. Petit truc avec telnet et Linux
6. Tutorial sur le cracking N°2
7. Texte de chanson
8. Conclusion

Edito

Ah !!! Le bonheur c'est simple comme un album de Rancid !! Ben ouais vous pensez quand même pas que j'écris des conneries dans le silence !! Rancid c'est du bon punk, là j'écoute leur album "...And out come the wolves", il est considéré par beaucoup comme leur meilleur et c'est vrai que franchement il est cool !!

Bon voici quelques nouvelles : mon PC a finit par guérir (si vous aviez lu le N°1) donc c'est cool. Sinon toujours pas touché à mon site... Va falloir que je m'y mette !! Sinon, petit problème : multimania s'est apparemment fait bouffé par lycos, et mon adresse email a apparemment muté en lotfree@lycos.fr malheureusement je ne peux pas y accéder (quelle bandes de nuls) et pareil pour l'adresse de mon site qui doit être www.members.lycos.fr/lotfree mais je pense que mon ancienne adresse (www.multimania.com/lotfree) existe toujours... enfin bon c'est le merdier pas possible. Sinon je me suis rendu compte que j'avais fait pas mal de fautes (d'orthographe et de frappe), en effet j'étais plutôt pressé de foutre mon mag en ligne une fois fait et j'ai pas fait gaffe aux fautes, dorénavant je ferrais gaffe. Si vous avez des questions ce sera donc à envoyer à niicolas@caramail.com.

Sinon comme je l'avais dit, ce numéro est principalement orienté cracking, et plus précisément pour les newbies. Sinon ya quelques articles sur des trucs que j'ai remarqué... Voilà je crois que j'ai tout dit ! Ah non !!! J'ai trouvé un moyen de distribuer mon mag étant donné que le webmaster de NewsHackers (l'adresse du site porte le même nom avec un com à la fin) a accepté de le mettre en ligne donc c'est super cool (merci à toi).

Sirius Black

Récupération de documents intéressants

Bon on suppose que vous êtes sur un PC qui est utilisé par plusieurs utilisateurs (ou que vous avez hacké). Ce qui serait intéressant c'est de récupérer des documents qui pourraient nous servir à des fins totalement personnelles et illégales ! On réfléchi deux secondes et puis on cherche où on peut trouver des docs intéressant... Des fichiers personnels donc... Dans le rep "Mes Documents" de Windows bien sûr, ainsi que dans les rep avec des noms tels que "perso", "sylvain" (si le mec s'appelle sylvain)... Récupérez tout ce qui vous semble intéressant, ce qu'on cherche c'est des infos concernant l'utilisateur, et plus précisément des trucs tel que numéro bancaires... Bon avec ça on obtient des trucs pas mal. Mais j'ai découvert un truc plus intéressant ya pas longtemps : quand vous surfez sur certains sites, ces dernier mettent des cookies sur votre disque dur afin de vous identifier, de connaître vos goûts, vos habitudes. Un bon exemple est le site de microsoft qui se modifie en fonction de l'attitude du visiteur (un truc de vrais pros quoi :). Enfin bon ce que j'ai découvert c'est que certains sites ne sécurisent pas leurs cookies. Je m'explique : quand vous allez sur certains sites où vous êtes enregistré, vous entrez votre login, votre mot de passe et boum vous êtes loggé, si vous y retournez plus tard, plus besoin de se reloggé parce que le site vous a identifié grâce au cookie de la dernière visite et dans lequel il y a le login et le password !!! Bien entendu beaucoup de sites cryptent leur cookies (n'espérez pas trouver des password caramail) mais certains ne le font pas. En effet je suis allé voir dans mes cookies et là j'ai vu en clair, sur une ligne, le nom d'un site sur lequel je vais, suivi de mon login et de mon password. Le pire c'est que c'est un site qui me permet de gagner du fric (quand on met une pub sur un site perso).

Plus tard j'ai fais pareil mais sur l'ordinateur de mon père, juste par curiosité évidemment, et là qu'est ce que je vois : l'adresse d'un site de bourse en ligne suivie de près par le login et plus loin le password. Bref là encore un site où on gagne du fric. Il m'aurait suffit de me connecter sur ce site avec le bon nom et le bon mot de passe, d' aller dans la section "mes infos" ou "mon profil" et de récupérer les infos intéressantes telles que le vrai nom de l'utilisateur, son adresse, son numéro de carte bleue avec la date de validité et hop !! A moi le shopping sur Internet et Minitel, et puis je commanderais bien une pizza aussi !!!

Sous Windows et avec Internet Explorer, les cookies se trouvent dans /windows/cookies/, ils sont en plusieurs fichiers. Sous Linux, avec Netscape, ils sont dans un seul fichier, dans /.netscape/, le fichier s'appelle cookies. Il parait même qu'il existe des logiciels qui permettent de se connecter avec les cookies, dans ce cas, même les cookies cryptés peuvent être utilisés, c'est fort non ? Fouillez les disques dur de votre bahut, de la salle de jeux en réseau du coin... Et éclatez vous !!

Foutre le bordel sur un site

/!\ Ceci n'est pas du hacking !!!

Pas de disclamer !! Ils avaient qu'a bien sécuriser leur sites !! En effet on va s'attaquer aux vulnérabilités du web et plus précisément aux forums, livre d'ors...

Comment ça marche : Les services de forums et livre d'or utilisent des scripts dans des langages évolués qui s'exécutent du côté serveur. C'est à dire que contrairement aux javascripts (que l'on a vu dans le premier numéro et qui sont côté client), ces derniers s'exécutent sur le site que vous visitez. En fait les langages en question peuvent être les cgi, le php, le perl ou encore l'asp. Bien souvent il est impossible de voir la source de ce langage, en effet, rappellez vous qu'un navigateur ne comprend que le html. Alors comment cela se fait que des fois on est sur des index.php ? Et bien en fait lorsque le visiteur se connecte au site, sa demande (on dit sa requête) dit au serveur "Eh !! J'aimerais visiter ton site", le serveur va donc lui envoyer sa page d'accueil. Si il s'agit d'un script php, le serveur va l'interpréter (c'est un script donc des commandes) et les transformer un une version html visible par le visiteur.

Pour qu'un script php (ou tout autre langage orienté serveur) marche, il faut donc un serveur, et même un serveur sur lequel est installé php. En effet si vous ouvrez un php de chez vous, cela n'aura aucun effet car il ne sera pas interprété (c'est comme un programme qui n'a pas été compilé, ça sert à rien).

Passons maintenant aux commandes des forums... Quand vous allez sur une page avec un de ces services, vous avez des boîtes de saisie dans lesquelles vous enregistrez votre message, votre email... Quand vous cliquez sur valider, ce que vous avez tapé se retrouve, grâce à un de ces script dans un fichier texte. Quand vous affichez le forum, un script va lire ce qu'il y a dans ce fichier texte et l'incorporer au html qu'il aura interprété.

Quand un de ce ces services est mal configuré, il affiche (le navigateur) mot pour mot ce qui se trouve dans le fichier. Et s'il s'agit de html alors le navigateur se charge de l'interpréter. Vous comprenez ? On utilise alors un des scripts que l'on a vu dans le numéro précédent. Pour tester vous entrez, par exemple dans le champ message d'un livre d'or, la phrase suivante :

<i>essai</i> ou encore <b>essai</b>

La première affiche essai et la seconde essai. Si en effet cela se passe ainsi (on ne voit donc pas les balises) c'est que aucune vérification n'est faite. Il ne vous reste donc plus qu'à mettre un script javascript. Le document.write('Hacked by Sirius Black'); est du meilleur effet. J'ai essayé ça sur un site et maintenant toute personne qui se connecte sur un certain livre d'or se retrouve avec un message d'erreur et des fenêtres microsoft à l'infini. Remarquez que cela n'est pas du hacking ! Surtout que cela ne modifie que la page contenant ce service mais avec de la chance vous trouverez une page d'accueil avec une vulnérabilité.

Donc pour foutre la merde vous allez par exemple sur free.fr, vous faites une recherche sur "livre or" dans leurs sites perso (pour avoir plus de chances), vous faites un essai et si ça marche vous attaquez !

Tutorial de cracking N°1

Bon nous allons voir en deux crackme (les programmes fournis avec le zine) comment cracker des logiciels. Evidemment, il s'agit là de 2 tutoriaux pour les débutants donc très facile. Attaquons le premier, je l'ai programmé en C++. Voici la source :

#include <iostream.h>
#include <stdlib.h>

int main()
{
char s[6];
cout<<"Entrez le password : ";
cin>>s;
if (strcmp(s,"crack")==0) cout<<"\nGood Guy";
else cout<<"\nBad Guy";
cout<<"\nVous avez entre : "<<s<<endl;;
system("PAUSE"); << Attention à cause de cette commande le prog ne fonctionne que sur Windows
return 0;
}

Donc si le mot de passe est 'pass' alors c'est bon sinon c'est pas bon (il affiche Bad Guy).

Voici le matos qu'il nous faut :

- un désassembleur (W32Dasm)

-un éditeur hexadécimal (HexWorkshop)

Vous trouverez ces progs sur //protools.cjb.net (si je me souviens bien).

Donc on ouvre le désassembleur (on va faire avec W32Dasm). On fait Disassembler > Open File to Disassemble et on choisi notre prog (crackme.exe). Là on voit le code source mais en assembleur (voire le tut de HexWorkshop pour comprendre tout ça). On regarde le bouton des String Data Ref, merde, on ne voit pas notre message d'erreur (ce qui est très pratique pour cracker un logiciel) !!!!

En effet ce programme n'est pas très évolué et ne fait pas appel aux API Windows, c'est pour cela que l'on ne voit pas touts les chaînes de caractères. C'est pas grave, cette leçon a justement comme objectif de faire sans. On clique alors sur Goto Program Entry Point (deuxième bouton avec la lampe de poche) et on tombe sur ces lignes :

//******************** Program Entry Point ********
:004011D4 55 push ebp

On clique sur la première ligne en assembleur du Program Entry Point et on regarde en bas.

On voit : Code Data @:004011D4 @Offset 000005D4h in File:crackme1.exe

Ce qui veux dire que dans W32Dasm l'offset 5D4 correspond à l'adresse 4011D4. On prend la calculatrice de windows en mode scientifique et on fait 4011D4 - 5D4 et on obtient 400C00, c'est le chiffre de conversion offset/adresse.

Il faut savoir à quoi ressemble un programme dans la mémoire : il est composé d'une partie appelée code, une autre appelée data et plus haut se trouve la pile (tout en haut en fait). On peut

représenter ça comme ça :

Stack
\/ /\
Data
Code

Top

Je sais que c'est pas très clair mais bon... c'est juste pour vous expliquer que le programme en lui même ne commence pas au tout début car au début on trouve la description du fichier : son type (exécutable), sa date de création, sa taille, son nom... Ca explique pourquoi les instructions commencent à 4011D4 et non à 00000000.

Bottom

On ferme et on va dans l'éditeur hexadécimal, on ouvre crackme.exe et on fait une recherche sur le message d'erreur (Bad Guy). Il faut savoir qu'en C une chaîne de N caractères est codée de la façon suivante : N octets sont utilisés correspondant donc à la chaîne ; un octet supplémentaire est utilisé pour signaler la fin de la chaîne ; ce dernier est l'octet 00. On trouve alors la chaîne à l'offset 636 (voir ici), elle correspond donc au code 0A42 6164 2047 7579 00 en hexadécimal. Maintenant on veux traduire l'offset en adresse alors avec la caltos windows on fait : 400C00 + 636 = 401236 (oubliez pas de cocher Hex pour les calcul :-).

On note cette adresse et on retourne dans W32Dasm. On fait Search > Find Text puis on entre "push 00401236", on tombe sur ces lignes là :

* Reference To: msvcrt.strcmp, Ord:0282h << Tiens notre fonction de comparaison !
|
:0040129C E803E00000 Call 0040F2A4
:004012A1 83C410 add esp, 00000010
:004012A4 89C0 mov eax, eax
:004012A6 85C0 test eax, eax << Ici la vérification du mot de passe !!!
:004012A8 7517 jne 004012C1 << Si eax est différent de 0 on saute en 4012C1 afin d'afficher Bad Guy
:004012AA 83C4F8 add esp, FFFFFFF8 Sinon on continue notre chemin
:004012AD 682C124000 push 0040122C <<Ici on affiche Good Guy

* Possible Indirect StringData Ref from Data Obj ->"d0A"
|
:004012B2 6828204100 push 00412028

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401242(C)
|
:004012B7 E8DC120000 call 00402598
:004012BC 83C410 add esp, 00000010
:004012BF EB15 jmp 004012D6 << Ici on se casse (on va pas afficher à la fois Bad Guy et Good Guy !!)

* Referenced by a (U)nconditional or (C)onditional Jump at Address: << On est venu ici par un jump conditionnel en 004012A8
|:004012A8(C)
|
:004012C1 83C4F8 add esp, FFFFFFF8
:004012C4 6836124000 push 00401236 << Ici on affiche Bad Guy

Bon il y a plusieurs façons de cracker ce truc mais un seul objectif : faire en sorte que le programme affiche "Good Guy". On pourrait faire croire au programme que eax est à 0 ainsi on éviterais le "Bad Guy". Pour cela c'est simple : plutôt que de mettre mov eax, eax (en004012A4) on pourrais mettre xor eax, eax ainsi eax prend la valeur 0. Cela marcherais car l'instruction fait le même nombre d'octets (2 octets). En effet mov eax, eax correspond à 89C0 et xor eax, eax correspond à 31C0. Mais on va faire un truc plus classique : on va modifier le saut conditionnel.

Ce dernier va aller afficher un message d'erreur si le pass est mauvais sinon il continue. On a donc 2 possibilités. On peut inverser la condition du jump ainsi si un mauvais pass est entré le prog affiche Good Guy mais en imaginant qu'un mec entre le bon le prog va l'insulter de "Bad Guy". L'autre possibilité (et celle que l'on va retenir) est d'annuler le jump ; on continue alors bêtement notre chemin et on affiche Good Guy.

La ligne à modifier est donc :

:004012A8 7517 jne 004012C1, la traduction hexa de cette instruction est 7517. Pour l'inverser (en un je) il suffirait de mettre 7417 à la place mais nous on utilise des nop qui ne font rien d'où leur utilité ;-). Un nop correspond à 90 donc un seul octet donc pour prendre la place nécessaire on fait 2 fois rien (9090). Toujours dans W32Dasm on clique sur la ligne du jump et on regarde en bas de la fenêtre : Offset 000006A8h. On note donc sur un papier : 6A8 et 7517 puis on va dans HexWorkshop et on ouvre le crackme.

Vous faites Edit > Goto, vous cochez Hex, From begining of the file, et vous entrez 6A8. Vous tombez juste devant le 7517 (enfin le curseur se met sur la traduction ascii à coté mais c sur la même ligne). Vous tapez donc 9090 par dessus et vous enregistrez, le prog vous propose de faire une sauvegarde, c'est plus prudent (si on se loupe le prog ne marche plus).

Moi ça marche donc si vous ça marche pas c que vous avez loupez un truc. Je lance le crackme, il me demande le password, je lui dit que je l'emmerde et il me dit que je suis un gentil garçon : Mission accomplie !

Petit truc avec linux et telnet

Pour faire chier des mecs (décidément on va croire que je fais que ça !!) vous pouvez leur envoyer un X sur leur écran, ceux qui ont linux avec une interface (j'ai essayé avec kde) comprendront. Première possibilité : un telnet sur le pc du mec suivi d'un x. Ou alors un rlogin puis un "startx -- :2". Attention !! Respectez les espaces sinon ça marche pas. Pour le fermer vous faites Ctrl + C puis vous vous délogez pour pas vous faire prendre en flag. Voilà ct tout !

Tutorial sur le cracking N°2

Il s'agit du tutorial sur comment cracker HexWorkshop, je l'avais fait ya pas mal de temps donc j'avais eu pas mal de difficultés. Maintenant je pense que ça irais plus rapidement, pour l'avoir il faut dézipper crakme2.zip et tout est expliqué dedans même des trucs plus généraux sur les protections logiciels et des trucs sur l'assembleur donc je vous conseille de le lire si vous n'avez pas compris le tut précédent.

Parole de chanson

Vous vous souvenez du mp3 fourni avec le numéro 1 de LOTFree ? C'était Bad Religion avec Supersonic. Et bien voici les paroles :

Supersonic
Well, am I making haste or could it be haste is making me what's time but a thing to kill or keep or buy or lose or live in I gotta go faster keep up the pace just to stay in the human race I could go supersonic, the condition's chronic …tell me does life exit beyond it ? when I need to sate, I just accelerate into oblivion into oblivion well here I go again, everything is alien how does it feel to be outstripped by the pace of cultural change my deeds are senseless and rendered meaningless when measured in that vein I won't lie, it's exciting when I try to decide things …I just want to live decently, meaningfully
I'm in misery
I could go supersonic, the problem's chronic …tell me life does exist beyond it ? when I need to state, I just accelerate into oblivion pace setters go getters rat racers forget hers researchers berserkers strategies to help the workers new time saving devices quick vices short splices brevity dependency chemical efficiency

Le mp3 : Randy, un groupe Suédois, plutôt extrême gauche, mais super cool, la chanson est délirante, vous n'avez qu'a regarder les paroles :

I Don't Need Love
I was broke so I sold my time
They got me working on the production line
Five days a week from 8 - 5
I had to struggle hard just to stay alive
I sold my time
I had no faith so I sold my soul
And all it left me was this big black hole
Now my souls is gone and I don't care
I never even noticed that it was there
I sold my soul
I even sold my family
Just to get prosperity
And a safe economy and I don't need no love
I don't need love
No I don't need no love
I felt alone so I sold my heart
I bought a friend and thought
Hey this might be a start
But he was too much so I sold him too
Now I'm alone and I don't know what to do
I sold my heart
I even sold my family
Just to get prosperity
And a safe economy and I don't need no love
I don't need love
No I don't need no love

L'album s'appelle The Human Atom Bomb.

Conclusion

Bon pour conclure, ce numéro est intéressant niveau cracking parce que en dehors de ça ya pas grand chose. Au fait un autre truc à faire quand vous êtes sur un pc et que quelqu'un est passé avant : vous ouvrez word et vous faites Edition > Coller (si c possible) et pareil pour windows sinon vous faites Démarrer > Documents et tous les trucs que le mec a fait s'affiche. D'ailleurs pour l'enlever vous cliquer sur la barre de démarrage (pas sur le bouton démarrer, sur la barre) avec le bouton droit, vous faites propriétés > Avancés et puis vous cliquez sur Effacer et puis pouf !! Vous étiez pas sur le pc ! Pour ce qui est du prochain numéro il risque de mettre du temps à venir, le temps que je trouve des idées. C'est pour ça que j'ai besoin de vos articles. Que ce soit sur la programmation, Internet, le hacking, cracking... ou des trucs intéressant, voire des gros délires, vous pouvez me les envoyer, je respecte les copyrights et tout et tout.

www.multimania.com/lotfree (si il marche toujours grrrmmmfff !!!)

Au fait j'ai découvert un challenge de crack de password internet, c'est sur www.try2hack.nl et c'est excellent. Je suis au level 7, si vous en arrivez là envoyez moi un mail car j'y suis bloqué. Ca vaut vraiment le coup, ça permet d'apprendre (sans vraiment s'en rendre compte) un tas de trucs cool !!!

A l'heure où j'écris ces lignes (12 mars 2002, ce mag a été écris sur 2 jours), le forum est inaccessible et il est très pratique pour trouver de l'aide. Donc quelque soit votre niveau venez essayer, et puis comme ça je serais pas le seul Français ;-)