Tout ordinateur connecté à un réseau informatique est potentiellement vulnérable à une attaque.Sur Internet des attaques ont lieu en permanence, à raison de plusieurs attaques par minute sur chaque machine connectée. Ces attaques sont en réalité généralement lancées automatiquement à partir de machines infectées (virus, chevaux de Troie, vers, etc.), à l'insu de leur propriétaire et plus rarement par des pirates informatiques. C'est la raison pour laquelle il est absolument impératif d'installer un pare-feu afin de faire barrière entre l'ordinateur et le réseau.
On appelle « attaque réseau » l'exploitation d'une faille (du système d'exploitation, d'un logiciel communiquant par le réseau ou bien même de l'utilisateur) à des fins non connues par la victime et généralement préjudiciables.
Le but peut être de différentes sortes :
obtenir un accès au système
obtenir des informations personnelles sur l'utilisateur
récupérer des données bancaires
s'informer sur l'organisation (entreprise de l'utilisateur, etc.)
troubler le bon fonctionnement d'un service
utiliser le système de l'utilisateur comme « rebond » pour une attaque
utiliser le système de l'utilisateur comme serveur FTP, lorsque le réseau sur lequel il est situé possède une bande passante élevée
Types d'attaques :
Les hackers -bidouilleurs et curieux- n'ont qu'un seul but, faire évoluer leurs connaissances et celles des autresen utilisant plusieurs techniques d'attaques. Ces attaques peuvent être regroupées en trois famille différentes:
Les attaques directes: c'est l'attaque la plus simple, le hacker attaque directement sa victime à partir de son ordinateur, et ce en lui envoyant des paquets informatiques, mais les programmes de hack utilisées restent faiblement paramétrables.
si vous vous faites hacker de la sorte, il y a de grandes chances pour que vous puissiez remonter à l'origine de l'attaque, identifiant par la même occasion l'identité de l'attaquant.
Les attaques indirectes par rebond :cette attaque est la plus utilisée par les hackers. En effet, le rebond a deux avantages:
masquer l'identité (l'adresse IP) du pirate, et éventuellement, utiliser les ressources de l'ordinateur intermédiaire car il est plus puissant (CPU, Débit, Bande passante...) pour attaquer. Le principe en lui même est très simple: les paquets d'attaque sont envoyés à l'ordinateur intermédiaire qui les répercute vers la victime, d'ou le terme de rebond. l'attaque FTP bounce fait partie de cette famille d'attaque
Si vous êtes victime de ce genre d'attaque, il n'est pas facile de remonter à la source. Au plus simple vous remonter à l'ordinateur intermédiaire.
Les attaques indirectes par réponse : Cette attaque est un dérivé d l'attaque par rebond. Elle offre les mêmes avantages, du point de vue du hacker. Mais au lieu d'envoyer une attaque à l'ordinateur intermédiaire pour qu'il la répercute, l'attaquant va lui envoyer une requête, et c'est cette réponse à cette requête qui sera envoyée à l'ordinateur victime.
Enfin dans la majeure partie des cas le maillon faible est l'utilisateur lui-même ! En effet c'est souvent lui, par méconnaissance ou dupé par un interlocuteur malicieux, qui va exécuter un fichier vérolé, donner des informations personnelles ou bancaires, etc. Ainsi, aucun dispositif de protection ne peut protéger l'utilisateur contre les arnaques, seuls bon sens, raison et un peu d'information sur les différentes pratiques peuvent lui éviter de tomber dans le piège !
Exemples d'attaque... :
1-Avec un troyen: Vous installez un trojan (partie serveur ) sur la bécane de la victime, style NetBus ... et Vous lancez la partie client à partir de votre ordinateur, indiquez l'Ip de la victime et vous vous connectez. Vous êtes alors maître du pc distant. vous pouvez envoyer des fichiers en télécharger lancer des progs, le faire rebooter, le déconnecter, ...
Vous povez aussi instaler un serveur ftp invisible sur le pc de la victime, il ne vous restera plus qu'a vous connecter avec n'importe quel logiciel client sur la victime.
2- Au Hasard:
Vous lancez un scanner d'ip qui va vous récupérer quelques adresses de connectés
Vous choisissez une des adresses, lancez un scan de port sur l'ip de la machine, afin de trouver quels sont les ports ouverts.
Vous lancez la partie client d'un trojan sur votre bécane, indiquez l'IP que vous avez trouvé et le port ouvert puis vous vous connectez sur la bécane et faites ce que vous voulez .....
Il existe par ailleurs des scanners tels que SuperScan qui vont scanner une suite d'ip et vous dire lesquels sont inferctées et par quel troyen.
3- hack Netbios:C'est une méthode très connue, elle nécessite que la bécane cible ait ses ressources en accès partagés sans mot de pass. L' inconvénient est que si la bécane en face se déconnecte et se reconnecte vous devrez répéter la manoeuvre.
requis:Vous devez avoir installé "Client pour les réseaux Microsoft" et avoir activé le "Partage de fichiers et d'imprimantes ..." tout comme votre victime.
La connexion:Pour cet méthode on va prendre l'exemple d'un pc appelé Toto qui à comme IP 123.123.123.124
Vous devez obtenir l'Ip de la personne.
Lancez une session dos.
Vous tapez (sous Dos) nbtstat -A 123.123.123.124.
Si la cible est en reseau local NetBios, va s'afficher Toto<XX> UNIQUE Registered (xx est une suite de 2 numéros, lorsque XX est 20 cela signifie que les ressources sont partagées). Au contraire si cela ne marche pas, apparaitrat le message host not found.
Toujours dans la session dos, vous tapez edit lmhost et tapez dans la fenêtre apparue 123.123.123.124 Toto #PRE.
Vous enregistrez puis tapez dans la session Dos nbtstat -R . Le message Succesful purge and preload of the NBT remote Cache Name Table apparait.
Vous revenez sous windoze allez sur "Rechercher" puis "Ordinateur" et tapez Toto. si tout se passe bien le nom de la bécane distante apparait, vous cliquez dessus et voila vous étes connectés dessus et vous pouvez faire tout ce que vous voulez.voila c'est tout. amusez vous bien.
Voiçi un exemple:
C:\>nbtstat -A (ip victime)
NetBIOS Remote Machine Name Table
Name Type Status
---------------------------------------------
TOTO <20> UNIQUE Registered
FAMILLE <00> GROUP Registered
TOTO <03> UNIQUE Registered
MAC Adress = 00-00-00-00-00-00
Pour voir si vous êtes vous-même victimes d'une connection netbios sans le savoir tapez nbtstat -s l'ip de cette personne sera inscrite
4- Attaques évoluées : le Denial of service, le FTP bounce, ...Etc je suppose que vous êtes débutants comme moi et on se limite donc aux trojans.. pédagogie oblige!!
-SUJET : Introduction au Cracking - 1ère Partie
Désassembler un fichier pour le craquer
Conseils et Documentations
-EXEMPLE : ComSpeed 2.01
-OUTILS : W32Dasm6 (ou W32Dasm85) et une cervelle
Ce premier cours, destiné avant tout aux débutants, va vous donner quelques notions sur
le cracking. Si vous ne connaissez pas grand chose à l'Assembleur, ce n'est pas bien grave
puisque je ne vais pas trop vous faire de bourrage de crâne sur ce sujet (pas encore...:=)
mais je vous conseil de vous munir d'un livre (voir section "4/LIVRES" plus bas) sur
ce langage puisqu'il vous sera quand même nécessaire de connaitre la différence entre
un "Jmp", "Jz', "Jnz" et autres "Jae".
Mais rassurez-vous, nous allons surtout utiliser la logique et notre cervelle ce qui suffira
pour craquer environ la moitié des softs de votre disque dur.
Nous allons craquer ComSpeed 2.01 (53,750 Ko) pour Win 3.X et Win95.
ComSpeed est disponible entre autre sur la page web de son auteur:
(http://ourworld.compuserve.com/homepages/Cordes/). A l'heure ou je rédige ce cours,
on ne trouve plus cette version mais la version 2.11.
Ce n'est pas grave le schéma de protection est EXACTEMENT le même donc dès que vous
aurez bien assimilé ce cours vous n'aurez qu'a vous faire la main sur la dernière
version.
Après tout, vous êtes ici pour apprendre pas pour piquer les cracks des autres et y
mettre votre nom, hein?
ComSpeed est un petit programme qui vous montre les performances de votre modem.
Il a deux types de protections (en fait il en a 3 mais nous verrons cela plus loin..:-):
-Il est limité dans le temps à 120 jours d'utilisation.
-Il est protégé par un mot de passe qui permet son débridage.
Il existe 2 méthodes pour craquer un programme:
1/ -"Live Approach".
2/ -"Dead Listing".
1/ "Live Approach" consiste à deboguer le programme (l'exécuter pas à pas) avec un debugger
(comment ne pas nommer ici SoftIce 3.01) en posant des Breakpoints et en le traçant.
Cette méthode est tout particulièrement adaptée aux programmes nécessitants un mot
de passe (comme ComSpeed) ou ayant un "NagScreen".
2/ "Dead Listing" consiste a désassembler le programme et a chercher dans le listing
le schéma de protection pour le modifier à son gré. Cette méthode est assez formidable
pour peu que vous connaissiez un peu l'Assembleur. Vous pourrez modifier le programme,
lui faire faire ce que VOUS voulez! Cette méthode s'applique très bien aux programmes
nécessitants un mot de passe mais aussi et surtout aux "Démos" bridées qui ne vous
permettent pas de sauvegarder un fichier, de l'imprimer, ou bien limitées dans le temps
ou avec un "nagscreen"...
Cette méthode peut paraitre assez effrayante aux yeux des débutants en raison de la taille
importante du listing obtenu de certains programmes Windows (désassembler la démo de Quark
XPress donne un fichier de plus de 50 Mo que même Word6 n'arrivera pas a ouvrir:-).
Cependant, les schémas de protections sont souvent situés dans une toute petite zone
du programme presque toujours facilement localisable et n'en sortent que très rarement
en raison de la limitation des registres du CPU.
Bien sur, pour de meilleurs résultats, la combinaison de ces deux méthodes ne peut etre
que bénéfique.
Comme ComSpeed ne fait que 53 Ko, nous utiliserons le "Dead Listing". De plus, il n'existe
pratiquement pas de cours en Français sur cette technique.
Nous avons besoin pour ce crack de W32Dasm6 (ou W32Dasm85).
N'utilisez PAS W32Dasm7 ou W32Dasm8!!!!
J'utilise ici W32Dasm6 parce que suivant le programme que vous avez a désassembler (16bits
ou 32bits...), si vous utilisez differentes versions de W32Dasm vous n'obtiendrez JAMAIS
le même résultat.
Si vous désassemblez ComSpeed avec W32Dasm6 vous obtiendrez beaucoup de 'String Datas
References'(cf ci-dessous), tandis que vous n'en n'obtiendrez AUCUNES avec W32Dasm7 ou 8.
De plus W32Dasm n'est pas un très bon désassembleur et même son schéma de protection est
ridicule. Je vous expliquerai très prochainement comment le craquer.
Bon assez de bla-bla, place au boulot:
2/ EXECUTION DU CRACK
Lancez W32Dasm6 et ouvrez CompSpeed.
Nous allons rechercher le maximum d'infos. Ce sont essentiellements des chaines de
caractères (les 'String Datas References' dont je vous parlait ci-dessus) contenants
les mots du genre "Enter Your PassWord", "Wrong Password", "PassWord IS correct", "You are
using this program for xxxx days"....Trouver ces mots est avant tout l'essence même du
'Dead Listing'.
Appuyez dans la barre à outils sur le boutton 'string Datas References'.
On trouve, entre autres, dans la liste qui s'affiche:
CodeFalse_ CodeOk_
N'est-ce pas déjà merveilleux!
On a presque tout ici, la routine qui s'execute quand le mot de passe est correct (CodeOK_)
et celle du mauvais mot de passe.
Plus bas dans la liste on trouve aussi:
VIRUS_
(ça, nous verrons plus loin...:-).
On a assez d'informations pour commencer le crack.
Cliquez sur 'CodeOK_' et W32Dasm vous envoie directement à cette routine qui commence à
l'adresse 0011.0271. Juste après, on trouve la procédure CodeFalse_ en 0011.02A4.
Jettons un oeil sur "CodeOk_":
:0011.0262 9AFFFF0000 call 0012.02E5h
:0011.0267 08C0 or al , al
:0011.0269 7433 je 029E ;< Excellent :0011.026B FF76F0 push word ptr [bp+F0]
:0011.026E FF76EE push word ptr [bp+EE]
* Possible StringData Ref from Data Seg 017 ->"CODEOK_%s" ;< **ICI** :0011.0271 BFF104 mov di, 04F1
:0011.0274 1E push ds
On trouve un joli saut conditionnel (je 029E) qui nous enverra sur la procedure "CodeFALSE_"
si le mot de passe est incorrect.
On le change:
:0011.0269 7533 jne 029E
Maintenant le programme ira sur "CodeOK_" quand le mot de passe sera faux.
Lancez ComSpeed après cette modification faite avec un éditeur hexadécimal:
Le programme refuse de démarrer et vous dit:
"The .exe file has been modified! That can be a Virus...".
Vous vous souvenez de "VIRUS_" que nous avions trouvé dans la liste des 'String References
Datas'??
C'est un CheckSum. Le programme additionne les bytes et vérifie le résultat.
Facile a contourner:
Nous avons changé un 74 (je) par un 75 (jne) donc nous allons modifier le 33 qui le suit:
Nous avions:
:0011.0269 7533
On le change avec:
:0011.0269 7532
Au départ nous avions 74+33 et maintenant 75+32: ça donne le même résultat. On se fiche pas
mal de modifier l'adresse du saut puis le programme n'exécutera jamais ce saut (sauf si
vous entrez le bon mot de passe)
Après, on relance ComSpeed: Ca marche.
Essayez de vous enregistrer (Shareware/Enter Code...). Entrez votre nom et n'importe quel
mot de passe puis appuyez sur OK. Là encore, ça marche.
Maintenant quittez ComSpeed puis relancez-le: Il n'est plus enregistré.
En fait nous ne nous sommes débarassé que de la procédure de vérification du mot de passe
entré au clavier. Le progamme vérifie au démarrage le mot de passe (qu'il lit dans
ComSpeed.ini) avec le bon mot de passe.
Etait-ce donc nécessaire de craquer cette partie? Non, mais ça ne nous a pris que 5mn et
maintenant si vous ouvrez ComSpeed.ini, vous saurez de qu'elle manière le programme y
inscrit votre nom et mot de passe:
SwName=_Votre_Nom
SwCode=_Votre_Mot_De_Passe
Bon, maintenant c'est le moment de faire marcher sa cervelle.
On étant ses pieds sous le bureau, on remonte les manches, on s'allume une cigarette....et
on se concentre:
Regardez le menu de ComSpeed.
Il y a:
File / Com-Port() / Shareware / Help.
Vous avez peut-etre remarqué (n'est-ce pas?) que quand vous vous êtez enregistré il y a
quelques minutes celui-ci s'est tranformé en:
File / Com-Port() / Help.
Et oui, 'Shareware' disparait de la barre des menus quand le programme est enregistré.
Execellent!
On retourne dans W32Dasm6:
Appuyez dans la barre à outils sur le boutton 'Imports Functions'.
Une liste de toutes les fonctions de Windows (les API) qui sont utilisées par ComSpeed
s'y trouve. Elles permettent, entre autre, a un programme d'utiliser une interface
graphique 100% Windows...
Pour créer une Barre des Menus, un programme Windows doit appeller la fonction
USER!DrawMenuBar. Cliquez sur elle (dans la liste) plusieurs fois pour localiser tous
les appels à celle-ci dans ComSpeed.
On ne trouve que deux appels.
Le deuxième est tout a fait intéressant:
:0001.1756 9AFFFF0000 call 0011.0122h
:0001.175B 803ED00400 cmp byte ptr [04D0], 00 ; < 04D0=0?? :0001.1760 7531 jne 1793 ; < Si <>0 alors 'Unregistered' :0001.1762 FF363C0A push word ptr [0A3C]
:0001.1766 FF363A0A push word ptr [0A3A]
:0001.176A 9AFFFF0000 call 0006.0044h
:0001.176F FF363407 push word ptr [0734]
:0001.1773 6A02 push 0002
:0001.1775 680004 push 0400
:0001.1778 9AFFFF0000 call USER.DELETEMENU ; < Efface Menu car 'Registered' :0001.177D FF760E push word ptr [bp+0E]
:0001.1780 9AFFFF0000 call USER.DRAWMENUBAR ; < **ICI** :0001.1785 FF760E push word ptr [bp+0E]
:0001.1788 6A00 push 0000
On voit que USER!DeleteMenu va effacer la barre des menus et tout de suite derrière,
DrawMenuBar va en créér une autre toute jolie sans le mot 'Shareware'.
Au dessus, on trouve encore un saut conditionel (Jne 1793) qui, si 04D0 est différent de 0
nous fera sauter par dessus ces deux fonctions.
On en déduit tout simplement que si 'byte ptr [04D0] = 0' alors le programme est
'Registered'.
Si vous cherchez 'cmp byte ptr [04D0], 00' dans le listing de ComSpeed, vous le trouverez
10 fois.
Maintenant, on va chercher l'instruction qui va écrire à l'adresse 04D0:
Cherchez: 04D0
On en trouve une seule:
:0011.0D27 9AFFFF0000 call 0012.02E5h
:0011.0D2C 08C0 or al , al
:0011.0D2E B000 mov al, 00 ; al:=0 :0011.0D30 7501 jne 0D33 ; Rien à cirer :0011.0D32 40 inc ax ; al:=al+1 :0011.0D33 A2D004 mov [04D0], al ; **ICI** 04D0=al :0011.0D36 803ED00400 cmp byte ptr [04D0], 00 ; Encore! :0011.0D3B 7527 jne 0D64 ; Si 04D0<>0 =>Unregistered :0011.0D3D FF36D404 push word ptr [04D4]
:0011.0D41 FF36D204 push word ptr [04D2]
Et voila M'sieurs Dames.
Devons nous changer le 'jne 0D64' avec un 'je 0D64'? Non. N'oubliez pas le checksum et
le fait que vous devriez changer les 10 sauts conditionels suivants les 10 'cmp byte
ptr [04D0], 00'.
Pour ce type de crack j'utilise toujours le même vieux truc:
Etant donné qu'on ne peut pas modifier trop de bytes en raison du checksum, rien
(mais alors vraiment rien) ne nous empêche d'intervertir les intructions.
Exemple:
Nous avions:
:0011.0D2E B000 mov al, 00
:0011.0D30 7501 jne 0D33
:0011.0D32 40 inc ax
:0011.0D33 A2D004 mov [04D0], al
:0011.0D36 803ED00400 cmp byte ptr [04D0], 00
:0011.0D3B 7527 jne 0D64
Peut être changé en:
:0011.0D2E 7501 jne 0D31 ; Toujours rien à cirer :0011.0D30 40 inc ax ; al:=al+1 :0011.0D31 B000 mov al, 00 ; al:=0 < Voila!
:0011.0D33 A2D004 mov [04D0], al
:0011.0D36 803ED00400 cmp byte ptr [04D0], 00
:0011.0D3B 7527 jne 0D64
Maintenant "al:=0" et l'instruction "mov [04D0], al" donnera la valeur 0 (donc 'Registered')
dans "04D0".
ComSpeed ne s'appercevra jamais de ces modifications et le résultat de "cmp byte
ptr [04D0], 00" sera toujours VRAI et ceci tout au long du programme.
ComSpeed est maintenant enregistré.
3/ CONSEILS
Que choisir : Live Approach ou Dead Listing??
Personne ne pourra vous répondre....
Effectivement, chaque Cracker a ses préférences.
Moi, je commence toujours avec SoftIce (v3.01) histoire de savoir ce que fait le programme,
ses differents appels aux API...bref juste pour savoir a qui j'ai a faire.
Je verifie aussi qu'il n'est pas écrit (mal-écrit) en Visual Basic (tout bon programmeur
n'écrit JAMAIS en Visual Basic) puis je le désassemble car cette technique est la plus cool
et la plus zen des deux (passer des heures devant l'écran de SoftIce peut se révéler assez
pénible tandis que désassembler un fichier puis imprimer les parties de code intéressantes
pour aller les étudier (et les craquer) à la terrasse d'un café sur les Quais de la Mégisserie
en buvant une Leffe fait partie des ces habitudes qui rendent la vie du cracker tellement
plus agréable...:-).
Chacun ses gouts.
De toute façon, l'idéal est de combiner ces deux techniques pour pouvoir TOUT craquer.
Attention: Certains programmes (de plus en plus) détectent si SoftIce est chargé et
risquent de vous planter ou rebooter. Mais d'autres (ou les mêmes une fois qu'ils se seront
débarasser de SoftIce) vous planteront si tentez vous les désassembler.
C'est le cas de SmartDraw v3.11 Win95. Si vous essayez de craquer ce programme en le traçant
avec SoftIce vous avez de grandes chances pour qu'il vous plante et soyez obligé de rebooter.
De plus il est impossible de le désassembler (toutes versions de W32Dasm confondues).
En fait, les auteurs de tels logiciels n'écrivent pas cette protection mais font appel à des
programmes de protection très couteux (EverLock, Copy Control) qu'ils intègrent à leurs
softs.
C'est généralement suffisant pour faire abandonner les petits crackers. Mais ne vous
dégonflez pas:
Vous n'avez pas besoin de SoftIce ou W32Dasm pour craquer SmartDraw. Avec un simple éditeur
hexadécimal (comme HexWorkShop) il ne vous faudra pas plus de 5mn pour le craquer à 90%.
Mais cela sera pour plus tard...ne grillez pas les étapes. Prennez et craquez des logiciels
de votre niveau (comme ComSpeed) pour l'instant.
Dès que vous aurez craqué votre programme, executez le avec SoftIce de nombreuses fois pour
être sûr de n'avoir rien oublié (en craquant à un endroit on peut déclencher ulterieurement
une autre protection "cachée"...) bref VERIFIEZ que votre crack est totalement FIABLE.
Dès que votre crack est bon, DISTRIBUEZ-LE (gratuitement evidemment) a tous ceux qui ne
peuvent pas s'acheter le programme enregitré et aussi aux crétins qui ne seraient même pas
capables de réaliser 1/10e de votre crack. Et surtout EVITEZ les trucs du genre:
-"Je vous passe ce crack mais vous n'avez pas le droit de vous en servir, c'est illégal".
ou bien:
-"Moi je crack des programmes? Oui bien sûr, mais quand je les utilises longtemps
je m'enregistre auprès de leurs auteurs".
CA VA PAS, NON??!!!
On est des CRACKERS, des VRAIS, des DURS, des PURS. Qui vous a parlé de "légalité"? Pourquoi faire confiance à un crétin de programmeur alors
qu'il n'a même pas été capable d'écrire un bon schéma de protection puisque vous l'aurez
craqué en 5mn? Vous acheteriez un programme à un type comme ça vous? Moi non.
4/ LIVRES
Vous trouverez de très nombreux ouvrages sur l'informatique et le PC mais peu sont réellement
adaptés à nos besoins. En voici donc 2 particulièrement indispensables et faciles a trouver:
-Assembleur:
"Assembleur Pratique" - de Bernard Fabrot chez Marabout Collection "Best-Sellers de l'informatique" 1996.
Pour un prix modeste de 50 balles et un format livre de poche, c'est a mon avis ce qui ce fait
de mieux pour apprendre ce merveilleux langage. Destiné au mode 32 bits, cette mise à jour
succède à "Assembleur facile" ( de P.Mercier qui avait écrit de très bons ouvrages sur le BIOS
et la programmation DOS:=) qui lui ne concernait que le 16 bits. Ils ont bien fait de
changer le titre pour cette nouvelle version! N'essayez pas de l'apprendre par coeur, vous
n'y arriverez pas. Contentez-vous de l'avoir sous la main à chaque fois que vous rencontrerez
un instruction que vous ne connaissez pas, et ça finira bien par rentrer...
-API:
"Programmation des API -Windows 95 Win32" de Richard Simon chez Simon & Schuster Macmillan France - coll. "Secrets d'experts" (+ CD-ROM).
Là, il vous faudra dépenser 399FF (je vous ai déjà fait économiser $11 en vous apprenant a
craquer ComSpeed!! :=) mais il vaut bien son prix car je n'en n'ai jamais trouver d'autres
aussi complets. Tout y est classé par catégorie (E/S, Menus, Boites de dialogue, registre...)
et très bien détaillé. De nombreux exemples sur le CD-ROM avec leur source. Très bien.
Voila, d'autres cours suivronts ...
Frog's Print -06/97
(http://www.ThePentagon.com/frog_s_print)
PS: J'allais oublier, ouvrez le fichier ComSpeed.ini et a coté des lignes suivantes
rajoutez votre nom:
SwName=Mettez_Votre_Nom
SwCode=Merci_Frog's_Print
Lancez ensuite ComSpeed et appuyez sur 'Help' - 'About' et le tour est joué...
Avant d'aborder le sujet du phreaking, voici un glossaire des thèmes utilisés dans cet article :
Boxing : Le " boxing " est l'art de créer des montages (initialement électroniques mais qui peuvent être réalisés en soft) pour pirater les lignes téléphoniques ou les détourner.
Card trashing : Méthode dite de " fouille des poubelles " pour trouver des numéros de cartes bancaires afin de recharger gratuitement des cartes téléphoniques.
PABX : Un PABX (Private Automatic Branch eXchange) est un système permettant de gérer informatiquement un grand nombre de lignes de téléphonie. On peut accéder au PABX par l'extérieur (modem, téléphone) ou par l'intérieur (PC, VAX, terminal). Un PABX peut se commuter sur le réseau externe de l'entreprise et l'on appelle alors cela un " outdial ". Un PABX peut être complété par un boîtier RMA, qui est un élément permettant une interconnexion d'un réseau et d'un PABX à des fins de management distant.
VMB : C'est une boite vocale qui repose sur le PABX, comme on peut en trouver sur la plupart des entreprises.
Introduction
Le Phreaking est à la téléphonie ce que le hacking est au réseau.....
On comprend par phreaking toutes les méthodes pour pirater un système lié à la téléphonie. Cela comprend la corruption et le détournement de PABX, de VMB, de téléphone portable, de modem, etc.
Le but ultime est de téléphoner gratuitement.
A noter que le terme phreaking provient de la contraction des deux mots anglais phone (téléphone) et freak (monstre) pour aboutir au terme phreaking.
Pour cela il existe de nombreuses méthodes, notamment le passage par un PABX.
Attaque d'un PABX
Le but d'un phreaker est d'appeler gratuitement ses copains ou des services téléphoniques payants.
La méthode la plus représentative du phreaking est d'essayer de pénétrer une boîte vocale sur un PABX et de se servir de la fonctionnalité de transfert d'appel.
Mais reprenons depuis le début.
D'abord, qu'est-ce qu'un PABX ? C'est un système qui gère plusieurs lignes téléphoniques. Typiquement, quand vous téléphonez à une compagnie et que vous entendez un joli message enregistré qui vous demande d'appuyer sur " 1 " pour avoir tel service, sur " 2 " pour tel autre, etc., c'est qu'il y a un PABX au bout qui gère les appels.
Une méthode souvent utilisée par les phreakers est de scanner des numéros de téléphone, tout comme un hacker scannerait des ports IP. A la différence près que scanner un numéro de téléphone demande de payer la communication et que si un phreaker scanne beaucoup de numéros, la facture sera lourde, ce qui est totalement contraire au but recherché !
Donc, en fait, les phreakers essayent généralement de scanner ... les numéros verts ! (qui présentent donc l'avantage d'être gratuits). A moins qu'ils n'aient récpéré une liste pré-établie de PABX (sur Internet par exemple).
Signalons que ce scan peut être réalisé automatiquement à l'aide d'outils spécifiques ou à la main, pour les courageux.
Une fois que le phreaker est arrivé à tomber sur un PABX, sa prochaine mission va être de trouver la séquence permettant d'accéder aux boîtes vocales. Cette séquence peut être du style " ** " ou " 0# " et si le PABX la reconnaît, il demandera le numéro de boîte vocale puis le mot de passe.
Les numéros de boîte vocale ne sont généralement pas difficiles à deviner ou à trouver (par social engineering par exemple). Il faut ensuite trouver le mot de passe et souvent les boîtes vocales ne laissent que 3 possibilités avant de se bloquer. Il faut donc oeuvrer avec méthode. La technique la plus utilisée est de tenter les mots de passe par défaut usuels (1234, 1111, 5555, etc.). Ces mots de passe dépendent généralement du constructeur du PABX et ils peuvent être trouvés tout simplement sur Internet.
Une fois que le phreaker a saisi la séquence de touche permettant d'accéder aux boîtes vocales, le numéro de la boîte piratée et le mot de passe, il peut faire pratiquement ce qu'il veut : changer le message d'accueil, écouter les messages, les effacer, etc.
Mais ce qui l'intéressera par dessus tout, c'est la présence d'une fonction de renvoi d'appel, car à ce moment là, il lui suffit de programmer la boîte vocale pour qu'elle " switche " sur un autre numéro quand on l'appelle.
Il ne reste alors plus qu'au phreaker qu'à raccrocher et à rappeler la boîte vocale pour être différé automatiquement sur le numéro programmé sur le transfert d'appel.
Le boxing
Le Boxing est une technique de phreaking qui consiste à faire des montages (hard ou soft), généralement assez simples (quoique ...), qui ont pour but de pirater ou de détourner des lignes informatiques.
La grande liste des box a démarré avec la Blue Box. La première Blue Box a été créée dans les années 60 aux USA par des étudiants du M.I.T. La technique consistait à appeler un numéro vert et à lui envoyer un son qui fait croire au centrale que la ligne est redevenue libre. A partir de là, on peut téléphoner n'importe où, gratuitement, comme si on appelait toujours un numéro vert.
Il existe de nombreuses box différentes. Citons également la Beige Box, qui est la plus simple de toute. Il suffit d'acheter un téléphone standard, de couper la prise du téléphone et d'y mettre des pinces crocodiles. La Beige Box se connecte ensuite à n'importe quel fil téléphonique et permet de téléphoner au frais du propriétaire du fil téléphonique.
Une multitude de type de box existe. Toutes les couleurs sont pratiquement répertoriées (White, Black, Red, Yellow, Magenta, Mauve, Violet, Gold, Silver, Brown, Aqua ... ) et certaines portent des noms vraiment exotiques (Cheese, Jack, Pearl, Chartreuse, Acrylic, Lunch, Scarlet, Urine ...).
Le card trashing
Le card trashing est une méthode qui tend à disparaître, car elle consiste à essayer de récupérer des tickets de carte bancaire, avec les informations complètes du titulaire du compte. Or, des préconisations ont été données pour ne plus afficher le numéro de carte complètement. Néanmoins, certains endroits étaient réputés pour faire du card trashing, comme les pompes à essence par exemple.
L'utilisation des données bancaires permet bien entendu de multiples fraudes, mais dans le cas du phreaking, ces données permettent de regénérer des unités de cartes téléphoniques, et donc ... de téléphoner gratuitement.
Le trashing en général peut aussi être utilisé pour trouver des numéros d'identification de téléphones cellulaires. A ce moment là, il doit être pratiqué dans les poubelles des opérateurs de téléphonie cellulaires.
Téléphones cellulaires
Un autre moyen de téléphoner gratuitement est d'utiliser son propre téléphone cellulaire, mais en se faisant passer pour un autre utilisateur.
Pour cela, il faut récupérer un identifiant, ce qu'on appelle un ESN. Le trashing peut y aider. On peut aussi utiliser une méthode plus sioux : le snarfing, qui consiste à intercepter l'identifiant grâce à une " box " spéciale.
Une fois un ESN récupéré, il faut re-programmer le téléphone cellulaire, soit par ordinateur, soit par l'introduction d'une autre puce.
Ce type d'attaque est essentiellement perpétré sur les téléphones cellulaires analogiques (qui ne sont plus vendus d'ailleurs). Pour les téléphones numériques, la méthode consistera plutôt à essayer de simuler une carte téléphonique. Ces attaques sur réseau cellulaire sont essentiellement perpétrées aux Etats-Unis.
Conclusion
Plusieurs autres méthodes existent pour téléphoner gratuitement, à partir des cabines téléphoniques par exemple.
Notons quand même que certains pays ont un réseau téléphonique plus facilement " phreackable " que d'autres, et notamment les Etats-Unis.
Rappelons enfin que si beaucoup de compagnies pensent à protéger leurs accès Internet, elles devraient en faire de même de leurs accès téléphoniques !
Peut de choses sont nécessaires pour pouvoir commencer à cracker:
- SoftIce 3.2
C'est ce qu'on appelle un débuggeur. Il va vous permettre de désassembler le programme à cracker, et à suivre pas à pas les actions qu'il fait pendant son exécution. Il est utile par exemple, pour savoir à quel moment un programme vérifié si un mot de passe est valide, la méthode utilisée etc... D'autres débuggeur existent mais SoftIce est de loin le plus puissant.
- W32Dasm 8.9
C'est un désassembleur. Il va se charger de "décoder" un exécutable, c'est à dire transformer ses chiffres en instructions compréhensibles par l'homme, qu'on appelle l'assembleur. Un programme désassemblé avec W32Dasm va se présenter sous forme de listing, de plusieurs centaines de pages dans certains cas, suivant la taille du logiciel.
- Hex WorkShop
C'est un éditeur hexadécimal. C'est ce qui va vous permettre de modifier un exécutable lorsque vous aurez trouvé le moyen de le cracker. C'est donc la dernière phase. Beaucoup d'éditeur existent, mais ils sont à peu près tous équivalent, donc peu importe celui que vous utilisez.
- Et bien sur, il vous faut du temps, et vous armer de PATIENCE
Il vous faut du temps parce lorsque l'on commence à cracker un logiciel, il est préférable (mais pas obligatoire) de le terminer dans la foulée. Sinon lorsque vous reviendrez finir de cracker votre logiciel vous vous apercevrez que vous avez oublié la moitié du travail que vous avez fait... A moins que vous soyez très minutieux et que vous notiez sur une feuille (ce qui est loin d'être mon cas). Et de la patience avidement, car au début vous aurez sûrement du mal à faire votre premier crack tout seul. Mais ce sera normal, et il ne faut pas baisser les bras pour autant.
Voilà c'est tout ce qui est ultra-nécessaire pour pouvoir commencer à cracker. Bien sur il faudra un cerveau avec un QI supérieur à 3.5, et un minimum de logique (pour cette raison, il est utile d'avoir des notions de programmation).