PDA

Voir la version complète : Analyse de dump via éditeur hexadécimal


mirak5910
04/08/2015, 13h19
Bonjour,

J'ai une question assez simple : est-il possible de décrypter le code pin d'un dump de n'importe quelle marque de voiture à l'aide d'un simple éditeur hexadécimal (style HxD) ou est-ce que cela passe nécessairement par des logiciels de décryptage spécifiques aux constructeurs ?

Il semblerait qu'immokiller le fasse mais ça me semble limité en termes de variétés de véhicules.

Merci beaucoup pour votre éclairage !

angels59
04/08/2015, 15h28
Bonjour mirak5910

Oui parfois un simple lecteur hexa suffit a voir le code pin en swappant les bits et pour d'autres soft oblige :)

cdlt

rosaire974
04/08/2015, 16h07
Bonjour mirak5910

Oui parfois un simple lecteur hexa suffit a voir le code pin en swappant les bits et pour d'autres soft oblige :)

cdlt

bjr!! qu'est ce que tu veut dire par " en swappant les bit " je comprend bien le terme pourrait tu m'expliquer

MrRorry
04/08/2015, 16h09
c'est une question d'algorithme, si tu les connais tous, pour chaque marque / modele /annee... alors oui tu pourras le faire manuellement.

Pour certains c'est juste un decalage ou swap de bits et pour d'autres c'est beaucoup plus complexe.

donc le soft qui les regrouperas tous sera le meilleur sur le marché.

diagnosis29
04/08/2015, 16h14
bjr!! qu'est ce que tu veut dire par " en swappant les bit " je comprend bien le terme pourrait tu m'expliquer

tu dois inverser les bit pour décoder dans certains cas pour rendre les infos visibles sur PSA

exemple ici avec le logiciel " Hex Edit "

http://img15.hostingpics.net/pics/115352screenshothexedit.jpg (http://www.hostingpics.net/viewer.php?id=115352screenshothexedit.jpg)

MrRorry
04/08/2015, 16h26
c'est une question d'algorithme, si tu les connais tous, pour chaque marque / modele /annee... alors oui tu pourras le faire manuellement.

Pour certains c'est juste un decalage ou swap de bits et pour d'autres c'est beaucoup plus complexe.

donc le soft qui les regrouperas tous sera le meilleur sur le marché.

Un exemple fantaisiste vaudra toutes les explications,
disons que les octets utilisés du modele concernés se trouvent a l'adresse

0x2A,0x2B,0x2C,0x2D et qu'a ces adresses nous ayons les valeurs suivantes

0x85, 0xC2, 0x55, 0xDA on swap les octets comme cela 2 - 1 - 4 - 3

on se retrouve avec 0xC2, 0x85, 0xDA, 0x55

on fait un XOR 0xAA sur chaque octet puis on convertit les valeurs en decimal, on multiplie le tout, on recupere les 6 derniers en immaginant que ces 6 valeurs soient le code recherché

0xC2 xor 0xAA = 104 (en decimal)
0x85 xor 0xAA = 47
0xDA xor 0xAA = 112
0x55 xor 0xAA = 255

104 * 47 * 112 * 255 = 139601280

Resultat = 601280

Voila un algo factice pour l'exemple, en esperant que ce soit simple et clair.

diagnosis29
04/08/2015, 16h34
Un exemple fantaisiste vaudra toutes les explications,
disons que les octets utilisés du modele concernés se trouvent a l'adresse

0x2A,0x2B,0x2C,0x2D et qu'a ces adresses nous ayons les valeurs suivantes

0x85, 0xC2, 0x55, 0xDA on swap les octets comme cela 2 - 1 - 4 - 3

on se retrouve avec 0xC2, 0x85, 0xDA, 0x55

on fait un XOR 0xAA sur chaque octet puis on convertit les valeurs en decimal, on multiplie le tout, on recupere les 6 derniers en immaginant que ces 6 valeurs soient le code recherché

0xC2 xor 0xAA = 104 (en decimal)
0x85 xor 0xAA = 47
0xDA xor 0xAA = 112
0x55 xor 0xAA = 255

104 * 47 * 112 * 255 = 139601280

Resultat = 601280

Voila un algo factice pour l'exemple, en esperant que ce soit simple et clair.

Bravo !

j'ai mal a la tete maintenant !

MrRorry
04/08/2015, 16h48
Lol. desolé diagnosis ;)
c'est un algo pour l'exemple que j'ai inventé en redigant la reponse. tres simpliste.

Un reproche que je pourrais faire a ce forum c'est le manque d'explications
et d'informations sur les outils et softs que beaucoup utilisent sans comprendre ce qu'ils font ni ce qui se passe.

angels59
04/08/2015, 16h59
Bonjour MrRorry

Merci beaucoup pour ton explication,mais j'en ai mal à la tête également lol tous comme notre ami diagnosis29 :)

Mais il est vrai que de comprendre le language algo est assez difficile et que de l'expliquer comme tu le fait reste très instructif ;)

cdlt

j-sky
04/08/2015, 20h12
C'est pas du tout évident car les codes PIn sont souvent codés dans le dump

Par exemple sur EDC15C2, le PIN est stocké à 3 adresses en début de dump dans l'eeprom

On trouve le 1er à l'adresse 0x200.
il faut faire un swap des 4 octets et ensuite faire l'opération "xor" avec la clé de cryptage "7F63FE1B"
Ca te donne 4 octets qu'il faut ensuite re-swapper puis passer en ASCII et ça donne le code PIN
Et forcément la clé de cryptage du code est différente pour les deux autres adresses mais avec un peu de logique et l'info que je vient de vous donner, on les retrouve !
Sinon, il y a plusieurs softs qui le font très facilement...

MrRorry
04/08/2015, 22h00
C'est pas du tout évident car les codes PIn sont souvent codés dans le dump

Par exemple sur EDC15C2, le PIN est stocké à 3 adresses en début de dump dans l'eeprom

On trouve le 1er à l'adresse 0x200.
il faut faire un swap des 4 octets et ensuite faire l'opération "xor" avec la clé de cryptage "7F63FE1B"
Ca te donne 4 octets qu'il faut ensuite re-swapper puis passer en ASCII et ça donne le code PIN
Et forcément la clé de cryptage du code est différente pour les deux autres adresses mais avec un peu de logique et l'info que je vient de vous donner, on les retrouve !
Sinon, il y a plusieurs softs qui le font très facilement...

Voila un exemple concret pour completer tout ca.
Tu peux nous mettre l'exemple complet? (octets + code pin final en ascii)
comme ca on abordera un peu la "cryptanalyse".

j-sky
04/08/2015, 22h07
Voila un exemple concret pour completer tout ca.

Tu peux nous mettre l'exemple complet? (octets + code pin final en ascii)

comme ca on abordera un peu la "cryptanalyse".


Je vais essayer de vous mettre ça au propre prochainement
C'est du reverse engineering couplé à de la cryptographie !
C'est très intéressant de trouver l'algorithme de cryptage mais ça donne parfois mal au crâne !

Regardez le film "imitation game"

MrRorry
04/08/2015, 23h23
Cool. meme si tu en as deja dis pas mal sur le codage,
ce devrait etre marrant d'analyser ca et devoir retrouver la formule.
donc avec les valeurs en question et le code pin final, il faudra reconstituer la façon de calculer et poster son explication.

Maxpower
05/08/2015, 00h23
voila pour vag

edc15 et 16

pass:Max

Maxpower
05/08/2015, 00h24
mince les images sont plus dispo,je vais essayer de les retrouvées

Maxpower
05/08/2015, 00h27
PIN Opel Motorola HC05
http://img15.hostingpics.net/thumbs/mini_912526opelmotorolahc05.jpg (http://www.hostingpics.net/viewer.php?id=912526opelmotorolahc05.jpg)

Pin Opel TMS 370
http://img15.hostingpics.net/thumbs/mini_859196opelTMS370.jpg (http://www.hostingpics.net/viewer.php?id=859196opelTMS370.jpg)

Maxpower
05/08/2015, 01h15
Vag EDC16u1

http://img11.hostingpics.net/thumbs/mini_819543Nouvelleimagebitmap5.png (http://www.hostingpics.net/viewer.php?id=819543Nouvelleimagebitmap5.png)

mirak5910
05/08/2015, 01h30
Bonsoir,

Content d'avoir été l'instigateur de la compréhension des systèmes de décryptage.
Bon, faut que je me remette dans les opérations en hexadécimal car je ne sais même plus ce qu'est un XOR. J'imagine que ça ne doit pas être sorcier...

Je suis assez d'accord que souvent ca manque d'explications claire avec des illustrations.

L'exemple reste le meilleur moyen d'apprendre mais je reconnais qu'il y a un petit investissement temps à faire.

En tout cas, merci. Et je suis preneur de l'exemple sur un cas concret appliqué au monde des systèmes embarqués de l'auto.

MrRorry
05/08/2015, 03h02
@MaxPower: Merci de ta contribution, en fait le but est de lancer un petit challenge de cryptanalyse donc de partir d'une valeur (octets concernés) trouver la formule qui mene au pin, cela dit ca nous en apprend beaucoup sur la simplicité de calcul que certains constructeurs utilisent pour stocker le pin et la, aucun en l'occurence car il est stocké en clair, l'hexadecimal est une base 16,un format d'une valeur de 0x00 a 0xFF soit 0 a 255 et non un cryptage a ceux pour qui ce ne serait pas clair.

@mirak5910: Effectivement, je pense que c'est bien parti pour que ce thread soit tres interressant et instructif pour ceux qui ne maitrisent pas ces bases.

j-sky
05/08/2015, 08h38
Salut

je vous ai mis en image une partie de l'explication du mode de crytage/décryptage du code PIN sur EDC15C2

Je ne vous ai mis que la première adresse où il se trouve car il est codé à 3 adresses au total et avec des clés de cryptage différentes :001_07:

http://www.tlemcen-electronic.com/forum/attachment.php?attachmentid=35747&stc=1&d=1438760139

sandy976
05/08/2015, 17h35
Un exemple fantaisiste vaudra toutes les explications,
disons que les octets utilisés du modele concernés se trouvent a l'adresse

0x2A,0x2B,0x2C,0x2D et qu'a ces adresses nous ayons les valeurs suivantes

0x85, 0xC2, 0x55, 0xDA on swap les octets comme cela 2 - 1 - 4 - 3

on se retrouve avec 0xC2, 0x85, 0xDA, 0x55

on fait un XOR 0xAA sur chaque octet puis on convertit les valeurs en decimal, on multiplie le tout, on recupere les 6 derniers en immaginant que ces 6 valeurs soient le code recherché

0xC2 xor 0xAA = 104 (en decimal)
0x85 xor 0xAA = 47
0xDA xor 0xAA = 112
0x55 xor 0xAA = 255

104 * 47 * 112 * 255 = 139601280

Resultat = 601280

Voila un algo factice pour l'exemple, en esperant que ce soit simple et clair.
hello
pas tout compris...!
une question svp pour m'aider à piger...
dans ce cas précis d'exemple, ça donne quoi si on swap pas ?
il me semble que ça donnerait la même chose si j'ai la logique qui va...
merci d'avance,

Sandy

une question svp

MrRorry
05/08/2015, 19h07
Lol. bien vu. Desolé, j'ai inventé cette exemple a la volée. tu as tout a fait raison!
le resultat sera le meme.

mirak5910
05/08/2015, 19h24
Bonsoir,

axbxcxd=bxaxdxc => donc oui lol !

@MrRorry : grace ou à cause de toi, je me suis dans l'hexadécimal hier, et j'ai tout pig à ton exemple lol.

Bon maintenant, faut que je regarde le jeu que j-sky a envoyé...

mirak5910
05/08/2015, 19h29
Salut

je vous ai mis en image une partie de l'explication du mode de crytage/décryptage du code PIN sur EDC15C2

Je ne vous ai mis que la première adresse où il se trouve car il est codé à 3 adresses au total et avec des clés de cryptage différentes :001_07:

http://www.tlemcen-electronic.com/forum/attachment.php?attachmentid=35747&stc=1&d=1438760139onvertis

salut J-Sky,

Comment tu convertis en ASCI de l'hexadécimal?

MrRorry
05/08/2015, 19h31
Petite correction pour l'exemple (Merci a sandy976)
======================================

0x85, 0xC2, 0x55, 0xDA on swap les octets comme cela 2 - 1 - 4 - 3

on se retrouve avec 0xC2, 0x85, 0xDA, 0x55

- on XOR octet 1 avec octet 2, octet 2 avec octet 3, octet 3 avec octet 4, octet 4 avec octet 1
>> maintenant le swap prend tout son sens car si on swap pas, on se retrouve avec des valeurs differentes.

on se retrouve donc avec ce nouveau tableau de 4 octets : 0x47, 0x5F, 0x8F, 0x12

- on fait un XOR 0xAA sur chaque octet et on multiplie le tout (le resultat a l'octet suivant)

0x47 xor 0xAA = 0xDE (222 en decimal)
0x5F xor 0xAA = 0xF5 (245 en decimal)
0x8F xor 0xAA = 0x25 (37 en decimal)
0x12 xor 0xAA = 0xB8 (184 en decimal)

222 * 245 * 37 * 184 = 370287120

Resultat = 287120

Voila, toutes mes excuses.

MrRorry
05/08/2015, 19h33
onvertis

salut J-Sky,

Comment tu convertis en ASCI de l'hexadécimal?

Slt, avec ta calculatrice windows par exemple ( en mode programmeur ).

MrRorry
05/08/2015, 19h34
oops desole, de l'ascii, le plus simple est d'utiliser une table
http://upload.wikimedia.org/wikipedia/commons/thumb/7/7b/Ascii_Table-nocolor.svg/1000px-Ascii_Table-nocolor.svg.png

mirak5910
05/08/2015, 19h45
Merci MrRorry !

C'est chaud parce qu'il faut à la fois savoir l'adresse où est stocké le code Hexa qu'il va falloir XORé avec une clé de cryptage + un swap + conversion en ASCII...

MrRorry
05/08/2015, 19h45
Bonsoir,

axbxcxd=bxaxdxc => donc oui lol !

@MrRorry : grace ou à cause de toi, je me suis dans l'hexadécimal hier, et j'ai tout pig à ton exemple lol.

Bon maintenant, faut que je regarde le jeu que j-sky a envoyé...

Lol, grace a moi je pense! tu verras ca te sera bien utile a l'avenir.

J-sky nous a en fait montré des formules utilisées en reel sur certains calculos, en partant des valeurs du dump au code pin, et il compte nous pondre son propre soft pour bientot de ces memes algos. :peace:

MrRorry
05/08/2015, 19h48
Merci MrRorry !

C'est chaud parce qu'il faut à la fois savoir l'adresse où est stocké le code Hexa qu'il va falloir XORé avec une clé de cryptage + un swap + conversion en ASCII...

Chaud? non. on posant ces calculs sur une feuille de papieravec une calculette ou avec quelques lignes de codes et un clic, ca prendrait quelques millisecondes. :iagree:

j-sky
05/08/2015, 21h46
Chaud? non. on posant ces calculs sur une feuille de papieravec une calculette ou avec quelques lignes de codes et un clic, ca prendrait quelques millisecondes. :iagree:

En effet, les milisecondes pour toi seront sans doutes des heures pour moi mais je ne désespère pas !

Au moins, j'ai cassé l’algorithme de cryptage du PIN sur EDC15C2 et l'ai écris sur une feuille (D'autres l'ont fait avant moi mais sans le divulguer...)

Certains diront que j'ai fait 80% du boulot mais moi, j'ai l'impression d'en avoir fait que 20% :smile:

mirak5910
05/08/2015, 21h57
Lol, grace a moi je pense! tu verras ca te sera bien utile a l'avenir.

J-sky nous a en fait montré des formules utilisées en reel sur certains calculos, en partant des valeurs du dump au code pin, et il compte nous pondre son propre soft pour bientot de ces memes algos. :peace:


j'en doute pas :-)

Qques millisecondes à partir du moment où tu as l'algo mais pour trouver l'algo décrypteur de PIN, c'est une autre histoire.

MrRorry
06/08/2015, 14h47
Par "Quelques millisecondes" , je voulais faire allusion au temps de calcul necessaire une fois cet algo codé dans un soft biensur! ;)

@mirak5910: C'est sur, mais c'est possible et ca demandes du temps et de l'observation, et J-sky nous a gentiment fait part des ces trouvailles, comme quoi c'est pas impossible. encore bravo a lui d'ailleurs.

j-sky
09/08/2015, 14h45
Salut à tous

Et voilà comme promis et en peu de temps grâce à l'aide de notre ami MrRorry, le soft pour calculer le PIN depuis un dump de 5P08 des EDC15C2

=> PSA EDC15C2 PIN Code Calculator (http://www.tlemcen-electronic.com/forum/showthread.php?p=332311#post332311)

:yo: