Regarde section mosc.
Regarde section mosc.
Pas mal de question en pm sur le principe du glitche.
Pour cela, il faut regarder ce que fait l'atmel.
"
If faut que décompile l'atmel pour comprendre ce qu'il fait.
En gros:
A1 allume la lampe verte, A0 l'eteind
10 0E FF reset carte ( en fait 10 n'est pas nécessaire)
01 8F attend la reponse de la carte
ici:
sc.write("20 0E 20 02 40 00 00 00 00 00 00 40 20" & (HexString(g1,4)) & "0A 20" & (HexString(g2,4)) & "0B 02 00 24 00 20 00 38 0A 20" &
000040 est l'adresse du jump en rom
20 " ( HexString... est un delay de g1 suivit de 0A -> glitche
20 & HexString(G2 -> 2° delay suivit du 2° glitche...
0C00 Attend la reponse de la carte
L'ins B4 est codée dans l'atmel, elle permet d'effectuer le crash stack( movexbug)
(cmd 40 suivit de 00 00 00 00 parametre)
Dans la rom de la serie 7, le code de l'ins B4 est le même sauf le delay d'accés, donc suivant la rom, si tu appliques le bon gliche, tu passes du status 6700 à 9028. L'application de 5 glitches entrainent le crack stack du processeur, et tu peux lui entrer n'importe qu'elle adresse -> tu jumps sur des routines de la rom qui te permet d'effectuer certaine tâche ( insertion eeprom, modification UA,.....)
Voila le principe."
Pour plus de détails, se reporter au fichier source Atmel.
Bon taf