Post Populaire





Qu’est-ce qu’un stub ? 


Vous avez souvent vu ou entendu parler de stub lors de l’utilisation de certains programmes.
Mais c’est quoi exactement ? Ça sert à quoi ?

Que fait le stub ?

Il ne fait rien.
C’est le programme incomplet. Quel programme ? Celui que vous voulez créer : si c’est un crypter, le stub est le crypter incomplet.
Si c’est un keylogger, le stub est le keylogger incomplet. Il peut s’agir de n’importe quel programme.

Comment ça incomplet ? il manque quoi ?

Il manque les informations que vous mettez dans le Builder (l’application où vous remplissez les champs tels que le nom de compte, mot de passe etc..), ce dernier se charge de les envoyer au stub.

Comment ça fonctionne ?
Le stub est utilisé par le Builder uniquement.
Le builder envoie au stub les informations que vous avez saisies, ça évite donc de réécrire un code source à chaque fois pour chaque personne .
Une fois les informations reçues, le stub est complet il reste à l’enregistrer sous le nom du programme final.
Le builder ne sert donc à rien de plus que « personnaliser le stub » pour donner le programme final.

En résumé : Le stub est le programme que vous allez créer. Il attend d’abord des informations, et une fois complet, il vous donne le programme final.

Exemple :

Mettons le nom de compte : « coucou »
le mot de passe : « ça va »

On écrit ça dans le builder, ce dernier créer une variable par exemple « nom = coucou » et « mdp = ça va »
Puis il ouvre le stub en binaire, récupère tout le code et y ajoute « nom = coucou » et « mdp = ça va ». On peut éventuellement ajouter n’importe quelle autre donnée (de type String) en plus de nom et mdp. Dans le code du stub on a par exemple « envoyer mail à nom en utilisant mdp », mais nom et mdp ne valent rien tant qu’on a pas envoyé les infos. On note le code « à vide » : stub.
Une fois qu’on a ce nouveau programme : stub + nom + mdp, on le referme et l’enregistre soit directement dans le même dossier, soit vers une nouvelle destination. Le stub n’est alors pas sauvegardé (c’est comme prendre un fichier txt, écrire « coucou ça va », l’enregistrer sur le bureau et quitter l’ancien sans sauvegarder).
Le nouveau programme contient : stub + nom + mdp.
stub = le stub qui a nom et mdp en attente, nom = « coucou », mdp= « ça va », donc le nouveau programme peut tout utiliser, il a tout ce qui lui faut. \o/

Une image pour mieux comprendre :



Et donc si je clique sur le stub ou l’envoie, il se passe quoi ?

Si vous cliquez vous recevrez un message d’erreur provenant du système d’exploitation disant que l’application n’est pas valide.
En effet, le programme est prêt mais contient des champs vide qu’il nous faut remplir (à l’aide du builder). Si les champs ne sont pas complétés, il ne peux pas s’ouvrir, car dès le début il cherche à importer les informations qui lui faut.

Mais alors je peux rien faire avec ?
En cliquant, non. Mais le stub est indispensable pour CRÉER votre programme final. Il est utilisé par le builder uniquement.

Pourquoi ce nom ?

En anglais il signifie « souche » ou « morceaux » il est appelé comme ça depuis longtemps pour qu’on le reconnaisse, on aurait pu l’appeler banane aussi.

Les avantages du stub :

Les stub est donc le programme final incomplet. C’est lui et non pas le builder qui est repéré par les antis-virus. Le stub est externe donc facile à changer. En effet, lorsqu’il est détecté on a juste à changer le code source du stub, ou de le re-crypter et c’est réglé, pas besoin de refaire un nouveau builder.

Les stubs internes :

Certains stub sont internes. On a qu’un seul programme à transporter : le builder.
En fait le builder contient le stub, il le « sort » quand même du builder lors de la création du programme final puis le supprime. Ni vu ni connu. il y a plusieurs façons de procéder. On appelle « drop » le fait de « sortir » un programme d’un autre.

- sebdelkil 2009-2015 - Aucun droit réservé -