닌텐도가 구형 SD 카드 폐기 처리를 제대로 하지 못했다.

콘솔 해커인 WinCurious가 Nintendo 공장에서 Wii 및 Wii U 시스템의 공장 설정 과정에 사용했던 폐기된 SD 카드들을 확보했습니다. DeadlyFoez에 따르면, 이 카드들에는 Nintendo가 Wii U 콘솔의 공장 설정을 위해 사용했던 부팅 이미지가 담겨 있었습니다. 이들은 손상된 SD 카드들에서 데이터를 복구하는 데 성공했으며, 이후 팀의 다른 멤버가 소프트웨어 브릭(software-bricked) 상태의 Wii U 콘솔을 복구할 수 있는 익스플로잇을 발견했습니다.
이들이 직면했던 첫 번째 어려움은 모든 카드가 손상되었다는 점이었습니다. 약 25%는 다이(die)와 플래시 메모리 IC가 파괴된 상태였습니다. 나머지 75%는 PCB 손상만 있었는데, 이 중 일부는 재납땜(resoldering)이나 PCB 교체가 필요했고, 다른 일부는 읽기 위해 단순히 평탄화 작업만 하면 되었습니다. 수리 과정을 마친 후 다음 단계는 SD 카드의 내용을 읽는 것이었습니다.
하지만 이는 단순히 SD 카드를 리더기에 꽂아 Windows PC의 다른 드라이브로 복사/붙여넣기 할 만큼 간단하지 않았습니다. 한 가지 해결책으로 외부 프로그래머를 사용하여 NAND 플래시 메모리를 직접 읽는 방법이 있었으나, DeadlyFoez는 Nintendo SD 카드에 사용된 TSOP 48 칩과 호환되는 장비가 없어 이 방법은 불가능했습니다. 게다가 추출된 데이터는 컨트롤러 칩을 거치지 않았기 때문에 카드 본래의 내용을 정확하게 반영하지 못했을 것입니다.
다행히도 WinCurious가 아이디어를 내놓았습니다. 그들은 기증받은 SD 카드를 이용해 NAND 칩을 TSOP 48 클립으로 교체하는 방법을 제안했습니다. 그들은 데이터를 읽고자 하는 SD 카드들(PCB가 손상되거나 결함이 있는 카드)에서 NAND 칩을 제거하여 정상 작동하는 SD 카드 위에 이식했습니다. 이러한 우회적인 방법을 통해 그룹은 상당한 어려움에도 불구하고 폐기된 메모리 카드들의 데이터에 접근할 수 있었습니다.
DeadlyFoez는 "이 TSOP 48 클립들을 어떤 장치에 납땜하는 것은 믿을 수 없을 만큼 어려운 작업입니다. 이들은 비교적 낮은 온도에서 녹기 때문입니다. 납땜이 녹으면 플라스틱도 부드러워져 형태가 변형됩니다. 대부분의 경우, PCB의 납땜 패드 크기가 클립의 핀 크기와 같아서 확대경으로 봐도 작업이 불가능할 지경입니다"라고 설명했습니다. 이어 "납땜하려면 먼저 PCB 패드를 은도금(tinning)해야 하고, 그 위에 TSOP 48 클립을 은도금된 패드의 가장 높은 부분에 직접 올려놓아야 합니다. 마지막으로 납땜을 리플로우(reflow)해야 합니다. 가장 올바른 방법은 리플로우 오븐과 스텐실(stencil)을 이용한 납땜 페이스트 사용이지만, 저는 그런 장비를 가지고 있지 않습니다. 대신 이 장치들에는 충분히 작동하는 적외선 프리히터(infrared preheater)가 있습니다"라고 덧붙였습니다.
그럼에도 불구하고 시스템은 성공적으로 작동하여, 그들은 총 14개의 SD 카드를 복구할 수 있었습니다. 이어서 그룹 멤버인 Rairii는 추출된 데이터를 조사하던 중 SDBoot1 이미지를 발견했습니다. 이 취약점은 원래 Wii U의 공장 설정 과정에서 발견된 것으로, 그룹은 콘솔이 부팅될 때 자신들의 코드를 실행할 수 있게 되었습니다. 그들은 이점을 활용하는 "paid the beak"라는 익스플로잇을 작성하여 GitHub에 업로드했습니다.
SDBoot1은 플래시 메모리가 비어 있는 콘솔에서도 실행 가능하기 때문에, 소프트웨어 브릭 상태에 빠진 거의 모든 Wii U를 복구할 수 있습니다. 단, Seeprom 문제나 실제 하드웨어 오류를 겪은 장치는 저장할 수 없습니다. 참고로, SD 카드에서 부팅하여 콘솔을 작동시키기 위해서는 여전히 희귀한 Nintendo jig, Raspberry Pi Pico, 또는 PICAXE 08M2 마이크로컨트롤러가 필요하다는 점에 유의해야 합니다.
모든 준비를 마쳤다면, 카드를 Wii U에 삽입하고 지그 또는 대체품을 이용해 콘솔 전원을 켜기만 하면 됩니다. 그러면 SD 카드에 저장된 내용을 로드하여 오래된 하드웨어에서도 원하는 모든 작업을 수행할 수 있습니다. 또 다른 모드 칩인 de_Fuse도 유사한 기능을 수행하며 Seeprom 오류까지 복구할 수 있지만, 이는 더 높은 수준의 기술과 전문 지식을 요구합니다. 이러한 기술적 접근법은 Wii U 하드웨어 사용을 보다 쉽게 만들어 주어, 전문 납땜 기술이나 본체 분해 없이도 더 많은 사람이 실험을 할 수 있도록 돕습니다.
최신 뉴스, 분석, 리뷰를 피드에서 받으려면 Google News에서 Tom's Hardware를 팔로우해 주세요. 반드시 '팔로우' 버튼을 클릭해 주시기 바랍니다.