マイクロサーキットの全体像の個々のビットを検討します。アーキテクチャが不明な場合の対処方法

前書き

集積回路リバースエンジニアリング(ICRE)の旅を始めたばかりですが、業界への情熱にすでに完全に圧倒されていました。 ICREのコンピューターと電気の側面に加えて、この分野で働くには物理学と化学の幅広い知識が必要です。最初は、化学をほとんど知らなかったので、化学成分が私を怖がらせました。チップの開封(カプセル化解除)および層ごとの準備に必要な製品を扱うことは、どれほど危険かは言うまでもありません。





私を信じてください、私は実際に研究室に投資する前に約2年間準備しました。安全に操作するために必要なすべての機器を入手し、必要な予防措置を講じるまで、最初の実験に進みたくありませんでした。化学の最初のルールはよく知られています。異常を除くすべての状況で、各ステップで次に何をすべきかを知る必要があります。しかし、私はとても夢中になっているので、目標を見ても、道からその方向に向かわせることはできません。





準備

私が最初にやらなければならなかったのは、私が購入する必要のある非常に高価なものや溶剤の全範囲を整理することでした。これが私が購入した機器と消耗品のリストです





実体顕微鏡や複合顕微鏡ではなく、冶金顕微鏡が必要なのはなぜですか?ほとんどの顕微鏡は下から照明があり、光はXYプレートで反射されるため、このようなICは両面ではないため、使用できません。検討中の結晶層は、光が上から下に適切に反射されるように適切に照明される必要があります。冶金顕微鏡は、落射蛍光とも呼ばれる独自のタイプの照明であるEPI照明を使用します。このソリューションでは、ICオブジェクト/サンプルを照らすだけではありません。さらに、顕微鏡の対物レンズは、サンプル表面から反射された光を収集します。





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





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





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





層に分解されたAtmega328P
Atmega328P

, (SiO₂ / ), , , .





:  , : siliconpr0n.





- .

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





TI TMS5200NLROMとSiliconPr0nCBM 65CE02 ROM
TI TMS5200NL CBM 65CE02 SiliconPr0n

, , . n- , , p-, .





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





   NAND Flash
NAND Flash

, ( , ) ( ), , .





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





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





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





   TMS320C52
TMS320C52

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





:  CH340G , , .





Arduino Nano, CH340G . 200°C . , .





CH340,   Arduino Nano (  )
CH340, Arduino Nano ( )

, , . , .





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





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





, – , :





1.       , . .





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





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





, – ; , . .





: ,  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₄  , .





, . , .





 ,
,

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





, , , , .





CH340G,     ,
CH340G, ,

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





      : 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





, , . :





  CH340
CH340

, .  siliconpr0n. , .





 :   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 , . , -, - , .





 Rompar   .
Rompar .

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





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





, . . cmd+click , :





, , , 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-. - , . , , . , , . 





  (),   ()
(), ()

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





bitviewer   . , , bitviewer , . 





,   Bitviewer
, Bitviewer

, , 32 , , 16 , . – .





Bitview 16-
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.





   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. , , / . , , .





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





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





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







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





– , ? , , ? . IDA Pro , .





, , , . , , , .





, , :





注釈付きのレイヤードプレパレーションCH340
CH340

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





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





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 , .





中和硫酸のpHレベルの確認
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