해외 게시판 Reddit에 "NAND 스토리지가 고장난 iPhone 7을 사용하여 Ubuntu의 기동에 성공했다"는 글이 올라왔습니다. debootstrap으로 다른 PC에 구축한 루트파일 시스템을 NFS를 통해 공유하여 iPhone 7로 마운트하는 방법을 취하고 있습니다.
SUCCESS : iPhone 7 with dead NAND netbooting unmodified Ubuntu 20.04 arm64 over usb gadget ethernet : linux
https://www.reddit.com/r/linux/comments/kux9xx/success_iphone_7_with_dead_nand_netbooting/
실제로 iPhone 7에서 Ubuntu를 부팅시키고 있는 모습을 아래의 동영상에서 확인할 수 있습니다.
iPhone 7 booting Ubuntu 20.04 - YouTube
https://www.youtube.com/watch?v=DrntxWqDuvI
이번 해킹은 iOS용 탈옥툴 'checkra1n'과 iPhone에서 Android를 실행할 수 있는 'Sandcastle'에 더해 글을 올린 newhacker1746 씨 본인이 개발한 네트워크 관련툴로 구성되어 있습니다. checkra1n과 Sandcastle은 모두 iPhone에서 발견된 수정이 불가능한 부팅 ROM 취약점 'Checkm8'을 이용합니다.
우선 Raspberry Pi 4 등 arm64 아키텍처를 이용할 수 있는 환경에서 debootstrap을 통해 루트파일 시스템을 구축하여 NFS으로 LAN 내에 공개해야 합니다. debootstrap은 호스트에 새로운 루트파일 시스템을 구축할 수 있게 하는 소프트웨어로 루트디렉토리를 변경할 수 있는 chroot 명령과 함께 사용하여 호스트와 격리된 환경을 구축할 수 있습니다.
iPhone에 전개하는 Linux 커널은 Sandcastle의 개발원인 Corellium이 A9X/A10에서 작동하도록 개조한 'linux-sandcastle'을 사용. 커널 빌드시에 NFS의 루트파일 시스템을 마운트하도록 NFS의 공유 호스트의 IP주소 등을 설정한다고 합니다.
iPhone과 호스트 PC와의 네트워크 연결을 newhacker1746 씨의 툴로 확립되면, checkra1n를 사용하여 iPhone에서 pongoOS를 기동합니다. 빌드의 커널과 디바이스 트리를 Sandcastle 툴로 iPhone에 로드하여 Ubuntu를 기동할 수 있다는 것이 일련의 해킹 흐름. 커널은 RAM에 전개되고 루트파일 시스템은 NFS로 마운트하고 있기 때문에, iPhone 7 NAND에 결함이 있어도 Ubuntu를 부팅할 수 있도록 되어 있습니다.
덧붙여 이번 해킹은 X11 및 Wayland가 동작하고, 실제로 Ubunbu GUI를 기공하는 동영상도 공개되어 있습니다.
iPhone 7 booting Ubuntu 20.04 (to GUI) - YouTube
https://www.youtube.com/watch?v=DO8vt34kTh0
'IT' 카테고리의 다른 글
단 한 줄로 스토리지를 즉시 손상시킬 수 있는 커맨드를 발견, '보는 것만으로도 스토리지가 손상되는 바로가기'의 존재도 확인 (0) | 2021.01.15 |
---|---|
모바일 기기의 보안에 대한 기본적인 의문에 연구자가 해답을 제시 (0) | 2021.01.15 |
Google 취약점 대책팀이 발견한 '매우 정교한 사이버공격'의 수법이란? (0) | 2021.01.13 |
비트코인 억만장자인데 비밀번호를 잊어버려 손도 못대는 프로그래머 (0) | 2021.01.13 |
SNS 'Parler'에 게시된 100만 개 • 80TB의 영상을 메타데이터와 함께 해커가 취득한 것으로 판명 (0) | 2021.01.12 |
Google의 물리키 'Titan 보안키'가 사이드 채널 공격으로 돌파되다 (1) | 2021.01.09 |
1550억 원의 몸값을 빼앗은 랜섬웨어 'Ryuk'가 사용한 수법이란? (0) | 2021.01.08 |
IT업계에서 '반세기' 가까이 경력을 쌓고 얻은 교훈이란? (0) | 2021.01.08 |