1

Bonjour,

Je travaille sur un projet relatif au langage des imprimantes thermiques Boca, utilisés en billetterie (cinémas, théâtres, etc...) et j'aurai besoin pour cela de regarder de plus près le firmware d'une d'entre elle.

J'ai donc récupéré le firmware sous un format bin et je souhaiterai l'étudier (j'ai accès à une licence légale d'IDA Pro, mais je suis ouvert à d'autres outils si nécessaire). Cependant le processeur d'une Boca est un ASIC44, et là je bloque car je ne sais pas trop quel angle d'attaque adopter pour lancer le désassemblage. Le fabriquant de Boca communique sur les CPU de ses Boca comme étant des RISC 32 bits 150Mhz, je n'en sais pas plus.


En bref je suis nouveau au monde des puces ASIC et je voudrai avoir quelques pointeurs/explications sur la façon de la faire de rétro ingénierie sur un binaire de celles-ci (si c'est possible).

Merci d'avance de votre coup de main smile

PS: J'ai réussi à obtenir légalement le firmware et l'entreprise pour laquelle je travaille possède des BOCAs légalement acquises.
avatar
"If you see strict DRM and copy protection that threatens the preservation of history, fight it: copy the work, keep it safe, and eventually share it so it never disappears. [...] no one living 500 years from now will judge your infringing deeds harshly when they can load up an ancient program and see it for themselves."

Benj Edwards - Why History Needs Software Piracy

- - -
Achat ou échange: topic de mes recherches Meilleur smiley = #helico# Obligatory XKCD

2

bah je testerai les trucs connus en embarqués déja:

arm
mips
openRISC
microblaze
PowerPC (?)

3

pencil
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

4

Je vais regarde ça de plus près. Merci.
avatar
"If you see strict DRM and copy protection that threatens the preservation of history, fight it: copy the work, keep it safe, and eventually share it so it never disappears. [...] no one living 500 years from now will judge your infringing deeds harshly when they can load up an ancient program and see it for themselves."

Benj Edwards - Why History Needs Software Piracy

- - -
Achat ou échange: topic de mes recherches Meilleur smiley = #helico# Obligatory XKCD

5

Bon pas plus de résultats avec les architectures mentionnées ci-dessous. J'ai réussi grâce à une commande à faire un dump de la mémoire ou apparaissent les registres (enfin c'est ce que je crois voir) comme suit:

   AT = B8070000   V0 = 00016401   V1 = 00000000   A0 = 00000044
   A1 = 000000FF   A2 = 0000006D   A3 = 00000000   T0 = 00000001
   T1 = 0000040E   T2 = FFFFFE1F   T3 = 0000000B   T4 = 80088700
   T5 = 80000000   T6 = FFFFFFFF   T7 = 000007FF   S0 = 00000000
   S1 = 000000FF   S2 = 00000000   S3 = 00000000   S4 = 00000000
   S5 = 00000000   S6 = 00000000   S7 = 3FC20010   T8 = 800B9B00
   T9 = 80086360   K0 = 800861A0   K1 = 00000001   GP = 80088000
   SP = 80088718   FP = 80088798   RA = 80000008   HI = 7FFFFFFF
   LO = 00000001  CP0 = 00000008  CP1 = 00000001  CP2 = 03EB828E
  CP3 = 0184D65E  CP4 = 05000000  CP5 = 00000000  CP6 = 00000000
  CP7 = 00000000  CP8 = 00000000  CP9 = 8B822AA2 CP10 = 000000B0
 CP11 = 602C0482 CP12 = 00016403 CP13 = 00008008 CP14 = 80006248
 CP15 = 00001900 CP16 = 10026880 CP17 = 00000000 CP18 = 8C02004C
 CP19 = 80D50418 CP20 = 00000000 CP21 = 00000000 CP22 = F87746FD
 CP23 = F6F757FF CP24 = 00000000 CP25 = 00000000 CP26 = 00000001
 CP27 = A0000C5B CP28 = 00000000 CP29 = 00000000 CP30 = 6CF860DE
 CP31 = 00000001  IM2 = 0000003E  IP2 = 00000008  IM3 = 0000FFFF
  IP3 = 00000000  IM4 = 000003FF  IP4 = 00000000  IM5 = 00FCDFFF
  IP5 = 00048000  IM6 = FFBFFFFF  IP6 = FC3FFDFF  BTA = 00000000
 BTCS = 00000040  BTC = 0000FFFF WCNT = 000000AB WCMP = FFFFFFFF
  WTC = 00000001  D9C = 00000000  D9S = 00000000 D10C = 00000000
 D10S = 00000000


Cela dit-il quelque-chose à quelqu'un?
avatar
"If you see strict DRM and copy protection that threatens the preservation of history, fight it: copy the work, keep it safe, and eventually share it so it never disappears. [...] no one living 500 years from now will judge your infringing deeds harshly when they can load up an ancient program and see it for themselves."

Benj Edwards - Why History Needs Software Piracy

- - -
Achat ou échange: topic de mes recherches Meilleur smiley = #helico# Obligatory XKCD

6

Ça semble être du MIPS d'après les noms des registres (et Google ^^).
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

7

(tout ça de registres ? hypno le bol !)

8

Pas sûr que ce soit tous des registres généraux, hein smile
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

9

Merci!

je vais voir ça de plus près.
avatar
"If you see strict DRM and copy protection that threatens the preservation of history, fight it: copy the work, keep it safe, and eventually share it so it never disappears. [...] no one living 500 years from now will judge your infringing deeds harshly when they can load up an ancient program and see it for themselves."

Benj Edwards - Why History Needs Software Piracy

- - -
Achat ou échange: topic de mes recherches Meilleur smiley = #helico# Obligatory XKCD

10

Zerosquare (./8) :
Pas sûr que ce soit tous des registres généraux, hein smile.gif
Il prend de mauvaises habitudes avec le 68k, notre cher Folco ^^
avatar