Voici un exemple de hack très particulier qui je suis sûr va vous plaire. Je vous recommande de lire d'abord l'article précédent car les deux articles appartiennent à une seule et même histoire.

Afin de savoir si les autres logiciels de chez Kiriasse utilisaient des protections similaires, je me suis attaqué à Mini Ftp 4.7 (ya en grande partie du cracking dans l'article mais en fin de compte on hack :). Voici la description donnée par le créateur :

Version de démonstration : cette version de Mini FTP est gratuite et complète. Elle permet à titre d'exemple de télécharger, après saisie d'un mot de passe, les programmes d'installation de tous les logiciels présentés sur le site Kiriasse Logiciels.

Version personnalisée : sur ce modèle, je vous propose de développer pour vous un ou plusieurs MiniFTP personnalisés (adaptés à votre cas personnel) qui permettront à toute personne à qui vous aurez communiqué un mot de passe de télécharger des fichiers de votre choix, placés par vos soins sur un serveur FTP, à une adresse connue de vous seul.

Et il rajoute les infos suivantes :
La version de démonstration permet, à titre d'exemple, de télécharger les fichiers zip contenant les programmes d'installation de mes logiciels et le mot de passe à saisir (qui est incorporé dans un certain fichier F placé sur Internet) est "kiriasse" : pour cette version de démonstration, l'emplacement de ces fichiers sur Internet (et le mot de passe) ne sont donc évidemment un secret pour personne.
Pour imaginer ce que peut être une version personnalisée, il faut donc (en pensée) « faire comme si » l'on ignorait l'emplacement des fichiers à télécharger. La question à se poser est alors : « Peut-on, sans connaître aucun mot de passe, accéder au téléchargement des fichiers ? ». Je prétends que la réponse est NON, pour 99% des personnes qui utilisent un ordinateur. Mais je ne suis pas naïf et je n'ignore pas que mon logiciel (qui ne coûte que 15,24 €) n'assure pas une sécurité absolue : si vous êtes l'un des responsables des Renseignements Généraux ou haut fonctionnaire au ministère de la Défense, je ne vous conseille donc pas, dans l'exercice de vos fonctions, d'utiliser MiniFTP !
A noter aussi que je place, dans les répertoires concernés du serveur FTP, un fichier index.html, ce qui a pour effet d'interdire l'affichage, par un navigateur WEB, de la liste des fichiers contenus dans ces répertoires.

Donc le premier truc que je me suis dit c'est qu'il fallait que je récupère l'emplacement de ce fichier F.
On procède comme d'habitude : lancement du logiciel et recherche de la phrase qui va nous servir de point de repère. Une fois lancé on choisit un fichier à télécharger parmis ceux proposés (j'ai pris kiriasse.hlp). On clique sur télécharger et une boite de dialogue apparait disant : "Veuillez taper votre code d'accès (8 caractères). Pour cette version de démonstration, le code d'accès est le mot "kiriasse" (en lettres minuscules)".

Cette fois on passe direct sous smartcheck (MiniFtp est codé en VB5 aussi). Et on dévellope le dernier "_Click" que l'on peut dévelloper. On tombe tout de suite sur :
InputBox("Veuillez taper..."); qui récupère le code, en l'occurence kiriasse.
Len("kiriasse"); qui renvoie 8 (vérification simple).
Puis après ya un InternetOpenA et un InternetOpenUrlA tous les deux dévellopables. On trouve rien de passionant dans le premier. En revanche le second a pour argument "http://www.kiriasse.fr/zip/kiriasse.kir". Alors la on ferme tout, on étaint son PC et on va se coucher. NON !! Je déconne !!! Hacking rules !!!

On tape l'url dans son navigateur préféré (et plein de bug s'il sagit de Internet Explorer). Et il nous affiche :
azertyui000208
azertyui000208
azertyui000208
azkiriasse0208
azertyui000208
azertyui000208 (j'ai pas tous mis car les azertyui000208 yen a des tas).
Le logiciel fait un tas de truc pour se connecter et le débuggage est pas très passionant. Le prog récupère votre nom de machine (huh?), votre marque de modem, vos préférences internet... Il ne s'agit pas d'une fonction du programmeur mais des API VB qui établissent la connexion.
Au bout d'un loooooong moment, il fait un InternetReadFile.
Je n'ai pas trouvé la routine de vérification mais quoi qu'il en soit on a un "Le code d'accès que vous avez saisi a été reconnu."

Bon qu'est-ce qu'il va faire maintenant que le code est validé ? Logiquement il va se connecter au serveur FTP.
Au bout d'un moment on tombe sur des calculs sur des chaines de caractères. Voici les chaines qui nous intéressent (là encore j'ai du pas mal fouiller) :
220
USER jmariotte
331
PASS xahopowy
230
TYPE I
200
PORT
RETR /web/zip/kiriasse.hlp

Ca m'a tout l'air d'une communication FTP (voir RFC 959). Mais on n'a pas vu quelle était l'adresse du serveur :(
En fait après avoir cherché sans succès au dessus je l'ai trouvé en dessous. Le prog ne faisait que mettre les strings en mémoire.
And now Ladies & Gentlemen the FTP Server is ... ftp.kiriasse.fr

A partir de là j'ai laissé tomber le débugage et je me suis connecté au serveur (n'oubliez pas d'utilisez un serveur SOCKS pour être anonyme). En explorant j'ai fait une grande découverte. Mais j'aurais pu le deviner avant.

Vous vous souvenez l'adresse du fichier F : www.kiriasse.fr/zip/kiriasse.kir ? Ya donc un rep "zip" dans la racine web !
Vous vous souvenez de la commande pour obtenir le fichier kiriasse.hlp ? RETR /web/zip/kiriasse.hlp
C'est marrant dans les deux cas ya un répertoire "zip" dis donc !!
On sait quoi ? On sait que zip est dans la racine web et on sait que au dessus de zip ya le rep "web" accessible par FTP !!! LoL !!!
Ben oui le site web est entièrement accessible par le ftp. Ca permet à l'admin d'uploader ses pages. Perso je considère cela comme une faille de sécurité mais si t'es hébergé par un truc du style Amen.fr (ce qui est le cas) tu peux pas faire autrement.

Quoi qu'il en soit on a le login, le pass, l'adrese du ftp et l'emplacement de la racine web. Comme dirait Bigard ca c'est le meilleur moment. Quand tu l'as devant toi et que t'es près à tirer, parce qu'après tout les grands défaceurs te le diront, c'est juste de l'informatique générale.

Donc je me suis déconnecté histoire de préparer mon défacage. J'ai créé une page web avec une image. Puis j'ai uploadé l'image, la page web et le tutorial sur FTP Rapide sur le serveur FTP dans la racine web. Au final : une belle page web avec un lien vers le tut de FTP Rapide & son keygen se trouvant sur le serveur même de kiriasse (un sacré pied de nez). Et l'image que voici :


Ben ouais le chat d'alice comme d'habitude ;-)
Voici les erreurs commises par le programmeur : coder en VB (c'est clair net et précis), faire un logiciel tel que Mini FTP, et là c'est sans doute le plus gros problème. Car en effet il aura beau crypter la communication etc... On trouvera toujours le moyen d'acceder au serveur FTP. La racine web sur le serveur FTP c'est une erreur aussi.
Franchement si j'avais su, j'aurais utilisé un sniffer je serais allé 100 fois plus vite (au moins ça).
Quels conseils on peut donner au dévellopeur ? Ben arrêter de coder en VB donc. Ensuite avoir son propre serveur ftp et donner aucun droit en écriture à ceux qui se connectent avec le compte jmariotte est la solution la plus efficace. Kiriasse peut alors garder un compte perso qui lui donne tous les droits avec un autre login. Il peut aussi coder son propre serveur FTP qui ne respecterait pas le protocole (en modifiant les commandes par exemple) ainsi il interdit l'accès à travers un client FTP standart. Et ya sans doute un tas d'autres solution.

Et si on relisait les infos qu'il donnait pour rire ?
Version de démonstration : cette version de Mini FTP est gratuite et complète (pour être complète elle l'est). Elle permet à titre d'exemple de télécharger (et d'uploader), après saisie d'un mot de passe (tu parle du mot de passe FTP je pense LoL), les programmes d'installation de tous les logiciels présentés sur le site Kiriasse Logiciels.

Version personnalisée : sur ce modèle, je vous propose de développer pour vous un ou plusieurs MiniFTP personnalisés (adaptés à votre cas personnel) qui permettront à toute personne à qui vous aurez communiqué un mot de passe (tu parles de ceux dans le fichier kiriasse.kir ? Ils peuvent aller les chercher tout seuls !!) de télécharger des fichiers de votre choix, placés par vos soins sur un serveur FTP, à une adresse connue de vous seul (et de sirius_black et ses lecteurs).

La version de démonstration permet, à titre d'exemple, de télécharger les fichiers zip contenant les programmes d'installation de mes logiciels et le mot de passe à saisir (qui est incorporé dans un certain fichier F placé sur Internet) est "kiriasse" : pour cette version de démonstration, l'emplacement de ces fichiers sur Internet (et le mot de passe) ne sont donc évidemment un secret pour personne (mais rien n'est secret coco).
Pour imaginer ce que peut être une version personnalisée (la mienne me suffit et c'est la démo), il faut donc (en pensée) « faire comme si » l'on ignorait l'emplacement des fichiers à télécharger (ça va être difficile de s'en convaincre). La question à se poser est alors : « Peut-on, sans connaître aucun mot de passe, accéder au téléchargement des fichiers ? » Moi !! Monsieur Msieur !! J'connais la réponse Msieur !! C'est Oui !!. Je prétends que la réponse est NON, pour 99% des personnes qui utilisent un ordinateur (putain c'est un coup à se prendre pour un l33t). Mais je ne suis pas naïf et je n'ignore pas que mon logiciel (qui ne coûte que 15,24 €) n'assure pas une sécurité absolue (...): si vous êtes l'un des responsables des Renseignements Généraux ou haut fonctionnaire au ministère de la Défense, je ne vous conseille donc pas, dans l'exercice de vos fonctions, d'utiliser MiniFTP ! (moi si je vous le conseille vivement !!!)
A noter aussi que je place, dans les répertoires concernés du serveur FTP, un fichier index.html, ce qui a pour effet d'interdire l'affichage, par un navigateur WEB, de la liste des fichiers contenus dans ces répertoires (...) : parfois un silence est plus fort que tout.