Ajout de bits

Fermé
Kalyptus - 18 févr. 2007 à 21:38
blux Messages postés 26533 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 18 décembre 2024 - 20 févr. 2007 à 08:55
Bonjour,
comment est-il possible de mo^difier le code hexadécimal d'un programme, en AJOUTANT des bits, sans que tout foire ?
Merci d'avance
A voir également:

7 réponses

blux Messages postés 26533 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 18 décembre 2024 3 317
19 févr. 2007 à 13:06
Salut,

oui, on peut TOUT faire...

sans que tout foire, c'est une autre histoire ! Il faut savoir où on les met, pourquoi on veut les mettre (est-ce que le programme va les lire ?), et plein d'autres choses encore (je ne rentre pas dans le détail).

Tu veux faire quoi au juste ? tricher à un jeu ?
0
Ben en fait j'avais pas de but précis, simplement dans Skype a un endroit c'est écrit "Le monde entier peut se parler gratuitement", alors j'ai modifié cette phrase, quand je conserve le meme nombre de caractères tout va bien, mais si je veux en ajouter, alors Skype ne se lance meme plus ! La première fois j'ai carrément du redémarrer ! Pour 3 malheureux bits rajoutés...
0
blux Messages postés 26533 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 18 décembre 2024 3 317
19 févr. 2007 à 15:53
Pour 3 malheureux bits rajoutés...
Ca serait pas des octets, plutôt ? :-)

C'est simple, tu modifies le binaire du programme pour AJOUTER des informations.

En faisant ça, tu écrases la zone du programme après la phrase, donc il ne peut plus s'exécuter, il lui manque des instructions, c'est pour ça qu'il part en sucette !

Va mettre un pignon plus gros dans une boite de vitesses de voiture, c'est pas sûr que tu y gagnes, si tu arrives à la refermer !
0
Non non, bien des bits ! En fait, dans la partie droite de l'éditeur héxadécimal, il me manquait trois bits pour finir mon mot, alors je les ai rajoutés via la fonction rajouter, je n'ai donc rien supprimer
! Et grace à ça j'ai eu la place d'écrire, par contre impossible de lancer le programme après...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
claude ray Messages postés 3082 Date d'inscription vendredi 13 juillet 2001 Statut Contributeur Dernière intervention 6 janvier 2018 700
19 févr. 2007 à 17:36
Bonsoir
Je suis de l'avis de Blux, ce n'est probablement pas des bits que tu as rajoués. Un bit s'écrit avec un 1 ou un 0. Ne confondrais-tu pas bit et caractère hexadecimal ?
Donne-nous un exemple.
0
ah ouais, juste, mais alors, je peux pas rajouter des caractères hexadecimaux ?
0
blux Messages postés 26533 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 18 décembre 2024 3 317
20 févr. 2007 à 08:55
Un caractère, quel qu'il soit, est généralement représenté par une suite de bits (8 le plus souvent). Qu'il soit affiché en hexadécimal, en octal, en décimal ou en binaire, sa valeur ne change pas...

Tu veux rajouter 3 caractères, c'est bien 24 bits et non 3 bits...

Ton éditeur te propose la visualisation en hexa, mais tu aurais pu l'avoir en base 10, voire en octal... Ca ne change rien, tu as quand même empiété sur des zones mémoire dont se sert le programme, provoquant un 'sérieux' plantage...
0
claude ray Messages postés 3082 Date d'inscription vendredi 13 juillet 2001 Statut Contributeur Dernière intervention 6 janvier 2018 700
19 févr. 2007 à 19:58
Tout dépend la façon dont le programme a été écrit. Les zones ont une longueur et si tu ajoutes des caractères tu empiètes sur d'autres zones et là bonjour les dégats.
Quand on modifie un programme, on doit savoir où on met les pieds.

Claude
0