Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

بیرونی سیلف انکرپٹنگ ڈرائیوز کو ریورس کرنا اور ہیک کرنا میرا پرانا مشغلہ ہے۔ ماضی میں، مجھے Zalman VE-400، Zalman ZM-SHE500، Zalman ZM-VE500 جیسے ماڈلز کے ساتھ مشق کرنے کا موقع ملا۔ ابھی حال ہی میں، ایک ساتھی میرے لیے ایک اور نمائش لایا: Patriot (Aigo) SK8671، جو ایک عام ڈیزائن کے مطابق بنایا گیا ہے - ایک LCD اشارے اور پن کوڈ درج کرنے کے لیے ایک کی بورڈ۔ اس سے یہی نکلا…

1. تعارف
2. ہارڈویئر فن تعمیر
- 2.1۔ مین بورڈ
- 2.2۔ LCD اشارے بورڈ
- 2.3۔ کی بورڈ بورڈ
- 2.4۔ تاروں کو دیکھ کر
3. حملے کے اقدامات کی ترتیب
- 3.1۔ ایس پی آئی فلیش ڈرائیو سے ڈیٹا ڈمپ لینا
- 3.2۔ سنفنگ مواصلات

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا


1. تعارف

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا
ہاؤسنگ

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا
Упаковка

ڈسک پر ذخیرہ شدہ ڈیٹا تک رسائی، جو کہ قیاس کے طور پر انکرپٹڈ ہے، پن کوڈ داخل کرنے کے بعد کی جاتی ہے۔ اس ڈیوائس پر چند تعارفی نوٹ:

  • پن کوڈ کو تبدیل کرنے کے لیے، آپ کو ان لاک کرنے سے پہلے F1 دبانا ہوگا۔
  • پن کوڈ 6 سے 9 ہندسوں پر مشتمل ہونا چاہیے۔
  • 15 غلط کوششوں کے بعد، ڈسک صاف ہو جاتی ہے۔

2. ہارڈویئر فن تعمیر

سب سے پہلے، ہم آلہ کو حصوں میں تقسیم کرتے ہیں تاکہ یہ سمجھ سکیں کہ یہ کن اجزاء پر مشتمل ہے۔ سب سے مشکل کام کیس کو کھولنا ہے: بہت سارے خوردبین پیچ اور پلاسٹک۔ کیس کھولنے کے بعد، ہم مندرجہ ذیل دیکھتے ہیں (میں نے سولڈر کیے ہوئے پانچ پن کنیکٹر پر توجہ دیں):

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

2.1 مین بورڈ

مرکزی بورڈ کافی آسان ہے:

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

اس کے سب سے قابل ذکر حصے (اوپر سے نیچے تک دیکھیں):

  • LCD اشارے کے لیے کنیکٹر (CN1)؛
  • ٹویٹر (SP1)؛
  • Pm25LD010 (تصریح) SPI فلیش ڈرائیو (U2)؛
  • Jmicron JMS539 کنٹرولر (تصریح) USB-SATA (U1) کے لیے؛
  • USB 3 کنیکٹر (J1)۔

SPI فلیش ڈرائیو JMS539 اور کچھ سیٹنگز کے لیے فرم ویئر کو اسٹور کرتی ہے۔

2.2 LCD اشارے بورڈ

LCD بورڈ پر کوئی قابل ذکر چیز نہیں ہے۔

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا
Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

صرف:

  • نامعلوم اصل کا LCD اشارے (شاید چینی فونٹ سیٹ کے ساتھ)؛ ترتیب وار کنٹرول کے ساتھ؛
  • کی بورڈ بورڈ کے لیے ربن کنیکٹر۔

2.3۔ کی بورڈ بورڈ

کی بورڈ بورڈ کی جانچ کرتے وقت، چیزیں زیادہ دلچسپ موڑ لیتی ہیں۔

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

یہاں، پچھلی طرف، ہمیں ایک ربن کنیکٹر، نیز ایک سائپرس CY8C21434 مائکروکنٹرولر PSoC 1 نظر آتا ہے (اس کے بعد ہم اسے صرف PSoC کہیں گے)

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

CY8C21434 M8C انسٹرکشن سیٹ استعمال کرتا ہے (دیکھیں۔ دستاویزات)۔ [پروڈکٹ پیج] پرhttp://www.cypress.com/part/cy8c21434-24ltxi) یہ اشارہ کیا جاتا ہے کہ یہ ٹیکنالوجی کی حمایت کرتا ہے CapSense (Cypress سے حل، capacitive کی بورڈز کے لیے) یہاں آپ پانچ پن کنیکٹر دیکھ سکتے ہیں جسے میں نے سولڈر کیا ہے - یہ ISSP انٹرفیس کے ذریعے بیرونی پروگرامر کو جوڑنے کا ایک معیاری طریقہ ہے۔

2.4 تاروں کو دیکھ کر

آئیے معلوم کریں کہ یہاں کیا منسلک ہے۔ ایسا کرنے کے لیے، صرف ایک ملٹی میٹر کے ساتھ تاروں کی جانچ کریں:

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

گھٹنے پر کھینچے گئے اس خاکہ کی وضاحت:

  • PSoC کو تکنیکی تفصیلات میں بیان کیا گیا ہے۔
  • اگلا کنیکٹر، ایک دائیں طرف، ISSP انٹرفیس ہے، جو تقدیر کی مرضی سے، انٹرنیٹ پر اس کے بارے میں جو کچھ لکھا گیا ہے اس سے مطابقت رکھتا ہے۔
  • سب سے دائیں کنیکٹر کی بورڈ بورڈ سے ربن کنیکٹر کا ٹرمینل ہے۔
  • سیاہ مستطیل CN1 کنیکٹر کی ایک ڈرائنگ ہے، جسے مین بورڈ کو LCD بورڈ سے جوڑنے کے لیے ڈیزائن کیا گیا ہے۔ P11، P13 اور P4 LCD بورڈ پر PSoC پن 11، 13 اور 4 سے جڑے ہوئے ہیں۔

3. حملے کے اقدامات کی ترتیب

اب جب کہ ہم جانتے ہیں کہ یہ ڈرائیو کن اجزاء پر مشتمل ہے، ہمیں یہ یقینی بنانا ہوگا کہ: 1) اس بات کو یقینی بنائیں کہ بنیادی انکرپشن فعالیت اصل میں موجود ہے۔ 2) معلوم کریں کہ انکرپشن کیز کیسے تیار/محفوظ کی جاتی ہیں۔ 3) معلوم کریں کہ PIN کوڈ کو بالکل کہاں چیک کیا جائے گا۔

ایسا کرنے کے لیے میں نے درج ذیل اقدامات کیے:

  • ایک SPI فلیش ڈرائیو سے ڈیٹا ڈمپ لیا؛
  • PSoC فلیش ڈرائیو سے ڈیٹا ڈمپ کرنے کی کوشش کی؛
  • تصدیق کی کہ Cypress PSoC اور JMS539 کے درمیان مواصلت دراصل کی اسٹروکس پر مشتمل ہے۔
  • میں نے اس بات کو یقینی بنایا کہ پاس ورڈ تبدیل کرتے وقت، SPI فلیش ڈرائیو میں کچھ بھی اوور رائٹ نہیں ہوتا ہے۔
  • JMS8051 سے 539 فرم ویئر کو ریورس کرنے میں بہت سست تھا۔

3.1 ایس پی آئی فلیش ڈرائیو سے ڈیٹا ڈمپ لینا

یہ طریقہ کار بہت آسان ہے:

  • تحقیقات کو فلیش ڈرائیو کی ٹانگوں سے جوڑیں: CLK، MOSI، MISO اور (اختیاری) EN؛
  • منطقی تجزیہ کار کا استعمال کرتے ہوئے سنیففر کے ساتھ "سنیف" مواصلات (میں نے استعمال کیا۔ Saleae Logic Pro 16);
  • ایس پی آئی پروٹوکول کو ڈی کوڈ کریں اور CSV میں نتائج برآمد کریں۔
  • فائدہ اٹھائیں decode_spi.rbنتائج کو پارس کرنے اور ڈمپ حاصل کرنے کے لیے۔

براہ کرم نوٹ کریں کہ یہ طریقہ خاص طور پر JMS539 کنٹرولر کے معاملے میں اچھا کام کرتا ہے، کیونکہ یہ کنٹرولر ابتدائی مرحلے پر فلیش ڈرائیو سے تمام فرم ویئر لوڈ کرتا ہے۔

$ decode_spi.rb boot_spi1.csv dump
0.039776 : WRITE DISABLE
0.039777 : JEDEC READ ID
0.039784 : ID 0x7f 0x9d 0x21
---------------------
0.039788 : READ @ 0x0
0x12,0x42,0x00,0xd3,0x22,0x00,
[...]
$ ls --size --block-size=1 dump
49152 dump
$ sha1sum dump
3d9db0dde7b4aadd2b7705a46b5d04e1a1f3b125 dump

ایس پی آئی فلیش ڈرائیو سے ڈمپ لینے کے بعد، میں اس نتیجے پر پہنچا کہ اس کا واحد کام JMicron کنٹرول ڈیوائس کے لیے فرم ویئر کو اسٹور کرنا ہے، جو 8051 مائیکرو کنٹرولر میں بنایا گیا ہے۔ بدقسمتی سے، SPI فلیش ڈرائیو کا ڈمپ لینا بیکار نکلا:

  • جب پن کوڈ تبدیل کیا جاتا ہے، تو فلیش ڈرائیو کا ڈمپ وہی رہتا ہے۔
  • ابتدائی مرحلے کے بعد، آلہ SPI فلیش ڈرائیو تک رسائی حاصل نہیں کرتا ہے۔

3.2 سنفنگ مواصلات

یہ معلوم کرنے کا ایک طریقہ ہے کہ کون سی چپ دلچسپی کے وقت/مواد کے لیے مواصلات کی جانچ کے لیے ذمہ دار ہے۔ جیسا کہ ہم پہلے ہی جانتے ہیں، USB-SATA کنٹرولر Cypress PSoC LCD سے کنیکٹر CN1 اور دو ربن کے ذریعے منسلک ہے۔ لہذا، ہم تحقیقات کو تین متعلقہ ٹانگوں سے جوڑتے ہیں:

  • P4، جنرل ان پٹ/آؤٹ پٹ؛
  • P11, I2C SCL;
  • P13، I2C SDA۔

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

پھر ہم Saleae logic analyzer لانچ کرتے ہیں اور کی بورڈ پر درج کرتے ہیں: "123456~"۔ نتیجے کے طور پر، ہم مندرجہ ذیل خاکہ دیکھتے ہیں.

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

اس پر ہم تین ڈیٹا ایکسچینج چینلز دیکھ سکتے ہیں:

  • چینل P4 پر کئی چھوٹے پھٹے ہیں؛
  • P11 اور P13 پر - تقریبا مسلسل ڈیٹا کا تبادلہ۔

چینل P4 (پچھلی تصویر میں نیلے رنگ کا مستطیل) پر پہلے اسپائک پر زوم ان کرتے ہوئے، ہم مندرجہ ذیل دیکھتے ہیں:

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

یہاں آپ دیکھ سکتے ہیں کہ P4 پر تقریباً 70 ملی میٹر کا ایک نیرس سگنل ہے، جو پہلے مجھے گھڑی کے سگنل کا کردار ادا کرتا نظر آیا۔ تاہم، اپنے اندازے کو جانچنے میں کچھ وقت گزارنے کے بعد، میں نے دریافت کیا کہ یہ گھڑی کا سگنل نہیں ہے، بلکہ ایک آڈیو سٹریم ہے جو کہ چابیاں دبانے پر ٹویٹر پر آؤٹ پٹ ہوتا ہے۔ لہذا، سگنل کے اس حصے میں ہمارے لئے مفید معلومات نہیں ہے. تاہم، اسے یہ جاننے کے لیے اشارے کے طور پر استعمال کیا جا سکتا ہے کہ PSoC کلیدی پریس کو کب رجسٹر کرتا ہے۔

تاہم، تازہ ترین P4 آڈیو سلسلہ تھوڑا مختلف ہے: یہ "غلط پن کوڈ" کا آڈیو ہے!

کی اسٹروک گراف پر واپس آتے ہوئے، آخری آڈیو اسٹریم گراف پر زوم ان کرتے ہوئے (نیلے مستطیل کو دوبارہ دیکھیں)، ہمیں ملتا ہے:

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

یہاں ہم P11 پر نیرس سگنل دیکھتے ہیں۔ تو ایسا لگتا ہے کہ یہ گھڑی کا اشارہ ہے۔ اور P13 ڈیٹا ہے۔ غور کریں کہ بیپ ختم ہونے کے بعد پیٹرن کیسے بدلتا ہے۔ یہ دیکھنا دلچسپ ہوگا کہ یہاں کیا ہوتا ہے۔

پروٹوکول جو دو تاروں کے ساتھ کام کرتے ہیں وہ عام طور پر SPI یا I2C ہوتے ہیں، اور سائپرس پر تکنیکی تفصیلات بتاتی ہیں کہ یہ پن I2C سے مطابقت رکھتے ہیں، جو ہم دیکھتے ہیں کہ ہمارے معاملے میں درست ہے:

Aigo سیلف انکرپٹنگ بیرونی HDD ڈرائیو کو ریورس کرنا اور ہیک کرنا۔ حصہ 1: حصوں میں تقسیم کرنا

USB-SATA چپ سیٹ کلید کی حالت کو پڑھنے کے لیے PSoC کو مسلسل پول کرتا ہے، جو بطور ڈیفالٹ "0" ہوتی ہے۔ پھر، جب آپ "1" کلید کو دباتے ہیں، تو یہ "1" میں بدل جاتا ہے۔ "~" دبانے کے فوراً بعد فائنل ٹرانسمیشن مختلف ہوتی ہے اگر غلط PIN کوڈ درج کیا گیا ہو۔ تاہم، اس وقت میں نے جانچ نہیں کی ہے کہ اصل میں وہاں کیا منتقل کیا جا رہا ہے۔ لیکن مجھے شبہ ہے کہ یہ ایک خفیہ کاری کلید ہونے کا امکان نہیں ہے۔ بہرحال، یہ سمجھنے کے لیے اگلا حصہ دیکھیں کہ میں نے PSoC کے اندرونی فرم ویئر کو کیسے ہٹایا۔

ماخذ: www.habr.com

نیا تبصرہ شامل کریں