Nous considérons des bits individuels dans l'image du microcircuit: comment agir lorsque l'architecture est inconnue

introduction

Je ne fais que commencer mon voyage dans l'ingénierie inverse de circuits intégrés (ICRE), mais j'étais déjà complÚtement submergé par une passion pour l'industrie. Outre les aspects informatiques et électriques de l'ICRE, une connaissance approfondie de la physique et de la chimie est nécessaire pour travailler dans ce domaine. Au début, le constituant chimique m'a fait peur, car je connaissais à peine la chimie. Sans parler de la dangerosité de travailler avec des produits nécessaires à l'ouverture (décapsulation) et à la préparation couche par couche des copeaux.





Croyez-moi, je me suis prĂ©parĂ© pendant environ 2 ans avant d'investir rĂ©ellement dans un laboratoire. Je ne voulais pas passer Ă  la premiĂšre expĂ©rience avant d’avoir acquis tout l’équipement nĂ©cessaire pour fonctionner en toute sĂ©curitĂ© et pris les prĂ©cautions nĂ©cessaires. La premiĂšre rĂšgle de la chimie est bien connue: dans toutes les situations sauf anormales, Ă  chaque Ă©tape il faut savoir quoi faire ensuite. Cependant, je suis une personne tellement emportĂ©e que si je vois un but, rien ne peut me faire tourner le chemin vers lui.





Préparation

La premiÚre chose que je devais faire était de trier toute une gamme de produits trÚs coûteux et de solvants que je devais acheter. Voici une liste des équipements et consommables que j'ai achetés.





, ? , , , . , . « » (EPI illumination), , «». /; , , .





. , – . , – , . , , , , .





, CH340G  Arduino Nano v3, , , , . , , , , , . , , – , .





Arduino , , . , , , . , , ATmega328P, , - , , , , -.





Démonté en couches Atmega328P
Atmega328P

, (SiO₂ / ), , , .





:  , : siliconpr0n.





- .

, , - , ? . (MROM) , . . :





ROM TI TMS5200NL contre ROM SiliconPr0n CBM 65CE02
TI TMS5200NL CBM 65CE02 SiliconPr0n

, , . n- , , p-, .





, - . 1 != 1 . , , - «», , , . , . - : , , «» «»[1] [2] , , . «», , , – , , . , , , .





ModĂšle de transistor dans NAND Flash
NAND Flash

, ( , ) ( ), , .





, , -, . , , . , . , , . - , . , .





Cellules de transistor en mémoire non volatile

- . , , , () . , , , , .





, ( ) , .  Extracting ROM Constants, , . , , , 1 . , NOR ( , ) , , , .





Image de la ROM de TMS320C52
TMS320C52

. 16- MUX 4 , . , , HIGH, . ( ) , LOW.





:  CH340G , , .





Arduino Nano, CH340G . 200°C . , .





CH340 soudé à Arduino Nano (les puces ne sont pas marquées)
CH340, Arduino Nano ( )

, , . , .





, . (  H₂SO₄) 20 98% 100- . , , .





Ouverture du boĂźtier dans une sorbonne

170°C, 150°C, , . , H₂SO₄  . , . , , . , , .





, – , :





1.       , . .





2.      (SO₂), , , . , . , , . , (HNO₃), (NO₂)  HNO₃  .





– ? ; , , SOP-16, 1,50 . .





La puce est traitée dans un bain d'acide

, – ; , . .





: ,  SO₂, , , . , , – ((C₂H₄)ₙ), . , , H₂SO₄   SO₂, CO₂  H₂O. : 6H₂SO₄ + (C₂H₄)ₙ → 6SO₂ + 2CO₂ + 8H₂O. 337°C, . (S), (O) (H₂O), (SO₂); S + O₂ → SO₂, (SO₃), (V₂O₅),  2SO₂ + O₂ + V₂O₅ ⇌ 2SO₃. , SO₃ + H₂O → H₂SO₄. , , , , (II) (CuSO₄) (HBr) .





,  H₂SO₄  , .





, . , .





Cristal de silicium extrait de la coque époxy
,

, , (C₃H₆O). , , , , . ? , .





, , , , .





CH340G Shot Through Lens avec objectif de grossissement 5x
CH340G, ,

, , ; , , . , , - , - . , , . , .





Une image de plus haute résolution est disponible ici: https://siliconpr0n.org/map/wch/ch340/mz_20x/
: https://siliconpr0n.org/map/wch/ch340/mz_20x/

50- , , . , 14 , , 14 . 16:1. , 16 .





14 – , 14- , . , 4 , 8 , 16 32 . , , , , .





. -, . 10 , 6 , 6 4 . , , 4 2⁎ = 16  , . 6 , 64 , 16 x 14 . 10 .





, . – , , , .





, . , . (HCl), (HF) , . , , HCl ,  HF â€“ .





:  .  HCl,  HF  , , , , . HCl  , , HF . , . , . , 
 , HF  . , , . HF  , HF  . , , , .





, , ? , : (Al) 6061 / (Cu). , , Al,  Cu. , , .





 Cu, HCl,  HF   Cu , , , . Cu   HF. ,  HCl   Cu, , , (H₂O₂), Cu ( ), pKa ( ) . pkA . 1:1 (HOCl) (H₂O). Cu  ,  HOCl, (II), . , (CuCl₂).





H₂O₂ (aq.) + HCl  (aq.) → H₂O + HOCl (aq.)

2HOCl + Cu → Cu(HOCl)₂





,  HCl, , , , .  [1] [2]  .





, CH340, Al, (SiO₂) . HF. HF  40°C, , Whink. 3%, , . 15 , , . Al,  SiO₂.





SiO₂ + 4HF → SiF₄ + 2H₂O





, , . :





Préparation en couches CH340
CH340

, .  siliconpr0n. , .





En haut Ă  droite: MPZU dans CH340
: CH340

, , , . , , . , , , .





 rompar, . , , . , Gimp, . : , .





, . 14 , 16 , , 224 . – , , -, 64 . , , , 1,7 .





rompar 3 ; , .





➜ python3 rompar.py image1-50x-ROM.jpg 16 1

Changing edit mode to GRID

Changing edit mode to GRID

Image is 11694x4318; 3 channels

process_image time 0.18801593780517578

read_data: computing

grid line redraw time: 6.4373016357421875e-06

grid circle redraw time: 1.1920928955078125e-05

render_image time: 0.22574210166931152








16x1? – . , , , 14 , . , -, - , .





Écran infrarouge Rompar.
Rompar .

(GUI), , , , . , CV Options -> Pixel Threshold. , :





Image agrandie des bits dans le spectre infrarouge

, ,  0000001,  01110101. ,  1,  0. , . Display -> Base Image -> Original. , ctrl+click  1, 16 . , . :





Grille bleue pour les colonnes ROM

, . . cmd+click , :





Les lieux binaires sont encerclés

, , , Edit -> Mode -> Data Edit Mode.  ctrl+click  , . ‘1’,  â€˜0’. , , , , , Data -> Export Data as Text. , , Github.





,   , . , zorrom  bitviewer. , , zorrom, , . README   Zorrom, “, , (.txt) - . .bin , .., , ”. API, , ; , , , , .





, zorrom – , . ,  WCH, 14- . , , , , « », bitviewer. , – 16- . -, 14- , , , bin-, .





, , , , bin-. - , . , , . , , . 





Couche métallique (à gauche), Couche de substrat (à droite)
(), ()

. 64 16 x 14 ; , – 2k. , 10 .   0 0. , . , 4 6 . , 16:1. , , , , 14 , .





bitviewer   . , , bitviewer , . 





Écran Bitviewer
, Bitviewer

, , 32 , , 16 , . – .





Colonnes Bitview 16 bits
Bitview 16-





, - , . Byte view (hex). , , 1) , , 2) . , - , , .





- , Export Options. , , , , , . , , , : 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15. , , , : Reverse output bit order  Address run right-to-left. .





05C0: FE 73 FF DB EF ...  .s...t...t.b.|.j

05D0: FE 50 C6 5F D6 ...  .P._._.Q...P....

05E0: DD 74 DF F8 ED ...  .t...&.m...S.p..

05F0: FF 6D ED 00 FF ...  .m...y...|.....>

0600: FF 7A FF 6A ED ... .z.j.<.g.Z.X.s..

0610: D9 74 CE 65 ED ...  .t.e...W.p...[..

0620: E6 F0 F5 5B F0 ...  ...[.W.W.W.W....








- . , 
 , /. , . , bitviewer ;  Select all, . , Invert Sel.





Bits inversés de Bitview
Bitview

, , , .





0770: 10 03 10 09 ...  .............U..

0780: 10 53 10 00 ...  .S...B...2......

0790: 10 30 10 00 ...  .0...-..3...3...

07A0: 33 F3 10 00 ...  3...3...3...3...

07B0: 2F A4 10 00 ...  /.....(.....+...

07C0: 10 23 29 08 ...  .#)...../.. .'/.

07D0: 10 02 10 03 ...  ..../.....+..P.S

07E0: 2F A4 10 72 ...  /..r.e/..i.r/..n

07F0: 10 6D 2F A4 ...  .i/..t.a+.. .l..








, , !  0x0770  0x0780, USB 2.0. ? , – .  Print  Serial   0x07D0–0x07F0. , , / . , , .





Table de saut

, , , , , . bin- ,  Save bin. , , , .





:  zorrom, , , . , , . API zorrom, - , . , CH340. :





➜ python3 txt2bin.py --arch ch340t ch340_binary.txt ch340_fw.bin







,  zorrom , 16 , 14. , , . , , . , , , rotate, .





– , ? , , ? . IDA Pro , .





, , , . , , , .





, , :





Préparation en couches CH340 avec annotations
CH340

– , . , , USB, USB USART. , . , : , , , , , . , , , ,   USB-.





, IDA ( ), ,   . , . , , , - .





Représentation partiellement démontée du code ch340
ch340

python, , . , CALL- , . , , .





. , – « », « », - IDA WORD, « ». -, , , . , , , .





. -

(H₂SO₄) , (NaOH).  NaOH, (Na₂SO₄) . - . , – 2:1.





2NaOH (aq) + H₂SO₄ (aq) → 2H₂O (l) + Na₂SO₄ (aq)





, , , 20 H₂SO₄  . NaOH , , 15  NaOH  150 ( 10%) . NaOH + H₂O   Na+  OH-, . :





NaOH + 2H₂O → Na+ + OH- + H₂O (delta H < 0)





. , . , , , - . – « » . , , . , . , - 150 . 2 , .





Vérification du niveau de pH de l'acide sulfurique neutralisé
pH

:  , , , (NaHCO₃), , . - , , - - (CO₂), . , , , .





, ! , , . , Instagram: @hackersclub  Twitter: @ringoware





:)





●        Ken Shirriff â€” http://www.righto.com/2020/05/extracting-rom-constants-from-8087-math.html, , , .





●        John McMaster â€” https://siliconpr0n.org/archive/doku.php  , , , , , .





●        Chris Gerlinsky â€” , , , , . , .





●        Elijah Hawk — , .





●        — https://chem.libretexts.org/Bookshelves/Physical_and_Theoretical_Chemistry_Textbook_Maps/Supplemental_Modules_(Physical_and_Theoretical_Chemistry)/Acids_and_Bases/Acid_Base_Reactions/Neutralization





●        — https://www.cs.mcgill.ca/~rwest/wikispeedia/wpcd/wp/s/Sulfuric_acid.htm





●        (VLSI)  — https://www.tutorialspoint.com/vlsi_design/vlsi_design_digital_system.htm





NAND Flash — https://www.simms.co.uk/nand-flash-basics/understanding-nand








All Articles