Voir la version complète : Logiciel pour comparer les fichier binaires
valentinriri
02/05/2022, 17h31
Bonjour,
J'ai plus d'une vingtaine de fichier binaire et j'aimerais les comparer pour voir ou son les parties identiques
Dans ses fichier binaire (Flash) il y a forcément des fonctions identiques et j'en cherche une particulier. l'idée c'est de comparer et d'identifier ces parties
vous connaissez un logiciel qui fait ça ?
Salut,
Ca m intéresse aussi. J avais guetter Ilya un an a priori il faut un genre d intelligence artificielle pour identifier les sections et les comparer.
Lol je pense pas ce qu’il cherche:-)
valentinriri
02/05/2022, 18h54
bonjour
HexCmp le fait
Salut HexCmp est un logiciel pour comparer 2 fichiers sans faire de reconnaissance. je cherche un logiciel plus complet
bonjour valantinriri ,avez vous essayez deja winols ?
je ne sais pas ce que tu veux comparer mais meme si c'est pas des fichier de flash ecu , ya plein de fonction de comparaison sur winols et tu peux visualiser le dump en 2D et chercher les similarité graphiquement carrément!
joelectronic
02/05/2022, 20h19
Salut,
HxD fait de la comparaison pour trouver les différences entre fichiers mais pas forcement les similitudes. Voir du coté des script shell sous linux, c'est beaucoup plus puissant.
Cordialement.
Salut,
HxD fait de la comparaison pour trouver les différences entre fichiers mais pas forcement les similitudes. Voir du coté des script shell sous linux, c'est beaucoup plus puissant.
Cordialement.
Salut,
Merci pour ton retour. Tu es capable de réaliser cela ?
Thanks
joelectronic
03/05/2022, 06h50
Salut,
Cela dépend si on connaît la séquence d'informations à trouver car la demande de valentinriri n'est pas très précise. Auriez vous des exemples de fichiers avec les infos recherchées ?
Cordialement.
VroumVroum
03/05/2022, 07h00
Bonjour,
c'est un peu ce que fait un anti-virus , mais je doute que cela existe , et bonjour les ressources ..... il faut prendre chaque partie du fichier et le rechercher dans l'autre , si tu cherche 2 octets , c'est inutile , un tas de ressemblance , il faut au moins 6 octets , et sauter d'un octet pour chaque recherche , après si tu trouve une ressemblance tu relance parallèlement une recherche avec 8 octets sur les 6 trouvés .. c'est faisable , mais spécifique ....
zingilingiling
03/05/2022, 09h31
A par Winols je ne vois pas quel soft permet cela.
valentinriri
03/05/2022, 18h52
Salut,
Cela dépend si on connaît la séquence d'informations à trouver car la demande de valentinriri n'est pas très précise. Auriez vous des exemples de fichiers avec les infos recherchées ?
Cordialement.
Salut, je te passe 2 fichiers flash, dans ces fichiers il y a forcément des fonctions identiques genre calcul d'un CRC, chiffrement etc etc
mais il ne sont pas forcement au meme endroit dans la flash genre la fonction CRC dans la V900 est en 0xff500 mais dans l'autre je la trouve à l'adresse 0xffA00.
d'ou l'idée d'avoir un logiciel qui reconnais les morceau identique
@+
Quattro899
03/05/2022, 21h53
Salut, je te passe 2 fichiers flash, dans ces fichiers il y a forcément des fonctions identiques genre calcul d'un CRC, chiffrement etc etc
mais il ne sont pas forcement au meme endroit dans la flash genre la fonction CRC dans la V900 est en 0xff500 mais dans l'autre je la trouve à l'adresse 0xffA00.
d'ou l'idée d'avoir un logiciel qui reconnais les morceau identique
@+
Salut,
Sous winols tu peux chercher une «*sequence byte*» et il va te trouver tous les endroits dans le dump ou se trouve cette sequence
Par contre jamais essayer en superposant deux fichiers
Envoyé de mon iPhone en utilisant Tapatalk
Salut,
En effet demande ultra spécifique. Le plus dure étant de pas faire boucle dans boucle, sinon l'analyse mettrai des heures, voir des jours.
Je m'y suis attelé pour voir. Et en effet, les premiers tests étaient beaucoup trop long. J'ai pu contourner le problème, mais ça va être dûre à expliquer :)
Déjà partir sur une base de 8 octets, en dessous, comme gad l'a dit, trop de similitude et trop de traitement / de temps.
Bref, c'est fait à la va-vite, donc pas sûre qu'il y ait vraiment "tous" les résultats même si je ne dois pas être loin de la vérité... Même s'il est possible que j'ai pu oublier certaines choses (à vous de me dire, là je vais reposer le cerveau qui a un peu surchauffé...)
A noter que :
- Le Fichier 1 est ton fichier V900, Fichier 2 = V931
- Je n'indique que les portions qui ne SONT PAS situés aux mêmes Offsets, le reste étant inutile.
Rien qu'en faisant ça, 4102 similitudes ont été localisés.... Bon courage ! :) Peut-être qu'il faudrait aller au dessus des 8 octets....
Clair qu'il serait mieux de mettre ça dans un environnement graphique avec des couleurs etc... Mais vous vous contenterez d'un bon vieux fichier TXT pour commencer !! :)
++
valentinriri
04/05/2022, 20h04
Salut,
En effet demande ultra spécifique. Le plus dure étant de pas faire boucle dans boucle, sinon l'analyse mettrai des heures, voir des jours.
Je m'y suis attelé pour voir. Et en effet, les premiers tests étaient beaucoup trop long. J'ai pu contourner le problème, mais ça va être dûre à expliquer :)
Déjà partir sur une base de 8 octets, en dessous, comme gad l'a dit, trop de similitude et trop de traitement / de temps.
Bref, c'est fait à la va-vite, donc pas sûre qu'il y ait vraiment "tous" les résultats même si je ne dois pas être loin de la vérité... Même s'il est possible que j'ai pu oublier certaines choses (à vous de me dire, là je vais reposer le cerveau qui a un peu surchauffé...)
A noter que :
- Le Fichier 1 est ton fichier V900, Fichier 2 = V931
- Je n'indique que les portions qui ne SONT PAS situés aux mêmes Offsets, le reste étant inutile.
Rien qu'en faisant ça, 4102 similitudes ont été localisés.... Bon courage ! :) Peut-être qu'il faudrait aller au dessus des 8 octets....
Clair qu'il serait mieux de mettre ça dans un environnement graphique avec des couleurs etc... Mais vous vous contenterez d'un bon vieux fichier TXT pour commencer !! :)
++
Salut,
Putain ENORME !
En gros l'idée c'est de faire ça avec le plus de dump possible plus j'ai d'occurrences identiques plus j'ai de chance que ça soit le truc que je cherche ^^
tu as fais ça avec quoi ? :banghead:
@+
Salut,
Fait en php avec mes doigts ;)
J'ai revu un peu certains trucs. Ca mettait 180 secondes pour l'analyse précèdente, là c'est passé à 107 secondes, ça reste honorable par rapport a tout ce qui est fait...
Nouveau fichier de résultat, trié par occurences et avec la taille des séquences indiquées.
Si t'as un troisième fichier du même type à filer, je pense pas que ça allonge tant que ça mais faut que je fasse un test pour m'en assurer. C'est plutôt sur les fichiers de 2mo ou 4mo que ca risque de chauffer bien plus longtemps....
Sinon spa grave je trouverai pour faire des essais !
++
valentinriri
05/05/2022, 17h59
Salut,
Fait en php avec mes doigts ;)
J'ai revu un peu certains trucs. Ca mettait 180 secondes pour l'analyse précèdente, là c'est passé à 107 secondes, ça reste honorable par rapport a tout ce qui est fait...
Nouveau fichier de résultat, trié par occurences et avec la taille des séquences indiquées.
Si t'as un troisième fichier du même type à filer, je pense pas que ça allonge tant que ça mais faut que je fasse un test pour m'en assurer. C'est plutôt sur les fichiers de 2mo ou 4mo que ca risque de chauffer bien plus longtemps....
Sinon spa grave je trouverai pour faire des essais !
++
A ouais je suis vraiment hors jeu la mdr
Normalement dans la V900 et V931 les fonctions que je traque doivent être au meme offset, en revanche dans la V842 offset ne dois pas etre au meme endroit
1. Comparer V900 & V931 pour trouver les occurrences identiques en offset
2. Comparer si les fonctions trouvé avant sont présente dans la V842 et si oui les quelles
si c'est le cas alors c'est bien la/les memes fonctions, il ne me reste plus qu'a décompiler les fonctions ^^
les 3 flash sont dans le ZIP
Merci pour ton coup de main <3
@+
Salut a toi,
Tu as essayé de voir avec le logiciel guiffy ? qui est tres rapide meme pour de gros fichier, tu as une version d'essai de 21 jour normalement
Salut.
Tu peux rechercher de cette façon des données mais pas du code. Les fonctions compilées utilisent des variables et réalisent des sauts d’instructions et donc le compilateurs n’allouent pas systématiquement les mêmes adresses pour ce stockage en ram et les adresses étant différentes les sauts le sont aussi, cela fait que les instructions sont différentes et donc les octets que tu cherches seront différents d’un dump à l’autre.
L'adresse que tu indiques (un offset plutôt) 0xff500 ne pointe pas vers une fonction. La fonction sur la V900 est à l'adresse base+0xff4d6. Pour la V842, les développeurs ont écrit ta fonction différemment et tu la retrouves à l'adresse base+0xd8340. Cela explique pourquoi tu ne retrouves pas ta fonction en recherchant des valeurs.
Hello,
On peut utiliser Compare It. Logiciel gratuit qui est très bien :-)
vBulletin® v.3.8.11, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Tous droits réservés - Version française vbulletin-fr.org