Hacker News하드웨어 · 시스템오늘의 주요

차량 네비게이션 시간 설정 막은 DRM을 root 권한으로 우회하다

원제 Jailbreaking my car's navigation system just so I can change the time

276 포인트댓글 92
Key Point

개발자가 지도 없이 단순히 시간만 수정하려던 차량 기기를 root 권한으로 제어하기 위해 커널 개발 기법까지 동원한 리버스 엔지니어링 사례로, DRM과 보안 제약의 실제 한계를 보여준다.

핵심 요약

  • 2014년 르노 라티투드의 네비게이션 시스템이 지도 SD카드 없이는 시간 설정을 불가능하게 막혀 있었다.
  • 네비게이션 메뉴는 카드의 시스템 설정 정의 파일을 읽어야 작동했으며, 저자는 이 제약을 우회하기로 결심했다.
  • TomTom Carminat LIVE 펌웨어를 분석한 결과, Linux 2.6.28 기반 시스템에 ext3 파일시스템이 포함되어 있었다.
  • SD카드는 DRM 검사(고유 CID 확인)로 보호되어 있었고, 대체 카드는 배송료 포함 60유로로 가격이 비셨다.
  • ext3 이미지 수정 및 QEMU 에뮬레이터를 통한 다양한 공격을 시도했으나, 읽기 전용/noexec 마운트와 서명 검증으로 막혔다.
  • master.script 파일의 LOG 명령어를 이용해 /proc/sys/kernel/core_pattern에 임의의 경로를 쓸 수 있었다.
  • core_pattern을 활용한 커널 권한 코드 실행 기법을 적용해, /bin/dbus-monitor를 강제 충돌시켜 코드덤프를 트리거했다.
  • 최종 master.script는 core_pattern을 수정 후 dbus-monitor를 실행하여 /media/sdcard/payload.sh를 root 권한으로 실행했다.
  • eMMC 백업을 통해 시간 설정이 /mnt/flash/settings.dat에 저장되며, GPS 기준 로컬 오프셋을 분 단위로 저장함을 발견했다.
  • 타임존 오프셋을 180분(UTC+3)에서 120분(UTC+2)으로 변경하여 시간 설정을 완료했다.
AI 요약 안내

AI가 한국어로 정리한 내용입니다. 정확한 정보는 원문을 확인해 주세요.

요약 원칙 ↗