วันอาทิตย์ที่ 4 ตุลาคม พ.ศ. 2569

ปิดตำนาน 25 ปี! นักพัฒนาแกะรอยสำเร็จ ชิปความปลอดภัยรุ่นดั้งเดิมของ PlayStation 2 ถูกเจาะเฟิร์มแวร์ครบถ้วน

PlayStation 2 fat console motherboard security chip

กว่า 25 ปีหลังจากที่ PlayStation 2 รุ่นอ้วนวางจำหน่าย นักพัฒนาชื่อ DiscoStarslayer สามารถดึงเฟิร์มแวร์ออกจากชิป SPC970 MechaCon ซึ่งทำหน้าที่ตรวจสอบแผ่นดิสก์และจัดการระบบความปลอดภัยส่วนใหญ่ของคอนโซลได้สำเร็จ โดยได้รับความร่วมมือจาก Libby ผู้ค้นพบช่องโหว่ที่ทำให้กระบวนการดึงข้อมูลนี้เกิดขึ้นได้

ความสำเร็จครั้งนี้ถือเป็นส่วนสุดท้ายที่ยังไม่เคยถูกทำแผนที่มาก่อนของ PlayStation 2 รุ่นอ้วน หลังจากชิป Dragon MechaCon เคยถูกดึงข้อมูลไปแล้วในปี 2021 และข้อมูลทั้งหมดได้ถูกผลักขึ้นสู่ GitHub พร้อมภาพถ่ายเฟิร์มแวร์ 22 ภาพ ครอบคลุมตั้งแต่รุ่น SCPH-15000 ของญี่ปุ่นในปี 2000 จนถึงรุ่นซีรีส์ 39000 ในปี 2002 รวมถึงบอร์ดอาร์เคด Namco System 246 และ 256 ที่ใช้ชิปตัวเดียวกันด้วย

เบื้องหลังการเจาะข้อมูลผ่านบั๊ก EEPROM

เนื่องจากชิป SPC970 เก็บโค้ดไว้ใน mask ROM ที่ไม่สามารถเขียนทับหรือแพทช์ได้ และเก็บเฉพาะข้อมูลการปรับเทียบและการกำหนดค่าไว้ใน EEPROM ขนาด 1KB แยกต่างหาก กลุ่มผู้ชื่นชอบที่ใช้ชื่อว่า spc970-dumper-union จึงอาศัยช่องโหว่ในการเขียนข้อมูลลงใน EEPROM ของชิป

พวกเขาพบว่าการเปิดเซสชันการเขียนค่าคอนฟิกด้วยจำนวนบล็อกเป็นศูนย์ จะทำให้ตัวนับภายในของชิปเกิดการ underflow และการส่งข้อมูลเกินกว่าบัฟเฟอร์เจ็ดบล็อกจะทำให้เกิดการ overflow ไปยัง RAM ที่เก็บงานเขียน EEPROM การเขียนทับแอดเดรสต้นทางของงานนั้นจะชี้ไปยัง ROM ของชิปแทน ทำให้ MechaCon คัดลอกเฟิร์มแวร์ 256 ไบต์ลงใน EEPROM เพื่อให้ PlayStation 2 อ่านกลับด้วยคำสั่งมาตรฐาน และทำซ้ำประมาณ 1,000 ครั้งจนได้ภาพอิมเมจขนาด 256KB บน USB แฟลชไดร์ฟ

สินค้าแนะนำ
Gaming Gear และอุปกรณ์เกม
เลือกดูอุปกรณ์ Gaming และ Gaming Gear ที่เกี่ยวข้องบน Shopee
ลิงก์นี้เป็นลิงก์ Affiliate เว็บไซต์อาจได้รับค่าคอมมิชชันจากการสั่งซื้อ โดยไม่มีค่าใช้จ่ายเพิ่มเติมสำหรับผู้ซื้อ

สิ่งที่ผู้ใช้และนักพัฒนาควรรู้

แม้ว่าอิมเมจเหล่านี้จะยังไม่มีข้อมูลเพียงพอสำหรับการสร้างอุปกรณ์จำลองออปติคอลไดรฟ์ แต่ก็อาจสนับสนุนการสร้าง modchip ที่มาแทนที่ MechaCon ได้ โดยยังคงรักษา DSP ของไดรฟ์ไว้เพื่ออ่านแผ่นดิสก์ เนื่องจากเกมของ PlayStation 2 ไม่เคยถูกเข้ารหัส จึงไม่มีการปลดล็อกสิ่งใหม่ในแง่ของตัวเกม

อย่างไรก็ตาม เฟิร์มแวร์ดังกล่าวได้เปิดเผยโค้ดเบื้องหลังการเข้ารหัส MagicGate ของ Sony สำหรับการ์ดหน่วยความจำและไฟล์ปฏิบัติการ KELF ที่คอนโซลบูตจากดิสก์และการ์ดหน่วยความจำ ซึ่งผู้ร่วมพัฒนาอย่าง uyjulian ระบุว่าจะช่วยสนับสนุนการจำลองระบบระดับต่ำแบบเต็มรูปแบบในอนาคต

ข้อจำกัดและความเสี่ยงที่ต้องพิจารณา

กระบวนการดumper นี้มีความเสี่ยงสูงเนื่องจากการดัมพ์แต่ละครั้งจะต้องเขียน EEPROM ซ้ำๆ แต่วิธีนี้ไม่มีระบบ wear leveling และมีงบประมาณการเขียนน้อยกว่าหน่วยความจำแฟลช เครื่องมือดังกล่าวจึงทำการสำรองข้อมูล EEPROM ก่อนเริ่มและกู้คืนทีละคำ พร้อมตรวจสอบผลลัพธ์เทียบกับรูทีนเช็คซัมตอนเปิดเครื่องของชิป

ถึงกระนั้น ตัวดัมพ์ต้นฉบับของ Libby ก็ได้เตือนไว้ว่ากระบวนการนี้อาจทำให้ PlayStation 2 ไม่สามารถทำงานได้ตามปกติหรือต้องได้รับการซ่อมแซมในระดับฮาร์ดแวร์ ผู้ใช้งานจึงต้องยอมรับความเสี่ยงด้วยตนเองทั้งหมด

สิ่งที่ควรติดตามต่อในอนาคต

เป้าหมายถัดไปคือการค้นหาข้อบกพร่องเพื่อเปิดช่องทางให้คอนโซลรุ่นแรกๆ สามารถปลดล็อกได้แบบเดียวกับ MechaPwn ที่ปล่อยออกมาหลังจากชิป Dragon ถูกถอดรหัส โดย uyjulian ระบุว่าการปลดล็อกสไตล์ MechaPwn หรือ TonyHax สำหรับ SPC970 เป็นหนึ่งในเป้าหมาย แต่จะไม่สามารถทำได้รวดเร็วเท่า เนื่องจากชิป Dragon ถูกสร้างขึ้นมาให้ยอมรับแพทช์ ทำให้ทีมนักวิจัยใช้เวลาเพียงหนึ่งเดือนในการเจาะระบบ ขณะที่ SPC970 ไม่สามารถอัปเดตได้เลยเนื่องจากโค้ดถูกฝังไว้ในชิปตั้งแต่ปี 2000 และไม่เคยเปลี่ยนแปลง

แหล่งข้อมูล

เรียบเรียงจากข้อมูลของ Engadget: อ่านต้นฉบับ

ป้ายกำกับ: , , , ,