71 읽음
차량용 안드로이드 헤드유닛 봇넷 악성코드 첫 포착
위키트리
0
카스퍼스키, 차량용 안드로이드 헤드유닛에 봇넷 악성코드 몰래 심은 정황 첫 포착 / AI 생성 일러스트(삽화)

카스퍼스키(Kaspersky)가 차량용 안드로이드 헤드유닛(head unit, 차량 인포테인먼트 시스템)을 표적으로 한 악성코드를 처음으로 확인했다. 연구진은 2026년 6월 안드로이드 위협을 추적하는 과정에서 화면도 없고 정체를 숨기려는 시도조차 없는 낯선 앱을 발견했다. 조사 결과 이 앱은 사용자 동의 없이 정식 업데이트 기능을 통해 몰래 설치된 것으로 드러났다. 카스퍼스키는 이 악성코드를 3단계에 걸친 다운로더로 분석했으며 최종 목적은 광고 사기와 프록시 봇넷 구축이라고 밝혔다. 연구진은 이번 공격을 배드박스(BadBox) 봇넷과 연계된 MoYu 그룹의 소행으로 높은 확신을 갖고 지목했다.

카스퍼스키에 따르면 이번 악성코드는 중국 DoFun이 공급하는 차량용 헤드유닛 펌웨어의 자체 업데이트 기능을 통해 퍼졌다. DoFun은 인포테인먼트 소프트웨어와 하드웨어를 판매하는 업체로, 블리핑컴퓨터(BleepingComputer)에 따르면 선전(Shenzhen) 소재 Shenzhen Driving Control Technology Co., Ltd가 소유하고 있다.

감염의 시작점은 TWCore라는 정식 시스템 앱이다. TWCore는 분석 데이터를 수집하고 헤드유닛 소프트웨어를 업데이트하는 역할을 하는 합법적인 프로그램이다. cardoor[.]cn 서브도메인에 호스팅된 MQTT 메시지 브로커가 TWCore에 어떤 APK 파일을 내려받아 설치할지 알려주는 방식으로 작동한다. 이 메시지에는 installNotExists라는 불(Boolean) 플래그가 포함돼 있는데, 이 값이 참으로 설정되면 원래 기기에 없던 앱도 새로 설치할 수 있다. 공격자는 이 기능을 악용해 이용자의 클릭이나 별도 설치 절차 없이 악성 APK를 헤드유닛에 심었다. 카스퍼스키는 이 유통 구조를 DoFun에 통보했고, DoFun은 이후 보안 문제를 해결했다고 밝혔다.
JarService에서 지마(zhima)까지, 3단계 감염 체인 / AI 생성 이미지

TWCore를 통해 설치되는 첫 악성 앱은 ‘JarService’라는 이름의 소형 드로퍼(dropper, 후속 악성코드를 심는 프로그램)다. 화면이 전혀 없고 XOR 방식으로 암호화된 데이터 블록을 순차적으로 복호화해 다음 단계의 진입점 정보를 꺼낸다. 카스퍼스키가 분석한 샘플에서는 com.c.j.qbh 클래스의 wa 메서드가 다음 단계 실행 지점으로 지정돼 있었다.

2단계는 로더(loader)로, 감염된 기기 정보를 담아 공격자의 명령제어(C2) 서버에 POST 요청을 보낸다. 공개된 예시 요청에는 사용자ID, dexVersion 1.7, channelId 2039, 패키지명 com.tw.jar1, appVersion 12, appName JarService 등의 값이 포함됐다. 이에 대한 응답으로 C2 서버는 3단계 페이로드를 내려받을 수 있는 링크(dexUrl)를 전달한다. 연구진이 이 링크의 버전 번호를 바꿔가며 확인한 결과 서로 다른 페이로드 변종이 7개나 발견됐다. 공격자들이 상당 기간 이 작전을 운용하며 지속적으로 업데이트해왔음을 시사하는 대목이다.

3단계 페이로드는 90분마다 C2 서버에 접속해 화면 해상도, 기기 모델명, 연결된 와이파이 네트워크 이름, MAC 주소 등을 전송하고 명령을 대기한다. 악성코드에는 return, copy, http, web, loadlib, loadlib2, loadlib3, deeplink, traceroute 등 9개 명령이 내장돼 있다. 이 중 보고서 작성 시점까지 실제 사용이 확인된 것은 loadlib2와 http 두 가지뿐이었다. loadlib2 명령은 ‘지마(zhima)’라는 리버스 프록시 모듈을 내려받아 실행하는데, 헤드유닛을 프록시 봇넷의 노드로 전환하는 핵심 기능이다. 노키아 딥필드(Nokia Deepfield) 팀도 비슷한 시기 이 지마 모듈을 독자적으로 발견했는데, 이번엔 자동차가 아니라 TV 셋톱박스에서였다. 카스퍼스키는 이를 두고 공격자의 최종 목표가 프록시 봇넷 구축임을 재확인했다고 설명했다.

헤드유닛은 멀티미디어 기능과 일부 차량 제어 기능을 결합한 시스템으로 공장 출고 사양이나 애프터마켓 업그레이드 형태로 탑재된다. 이런 기기가 안드로이드 기반으로 만들어지는 이유는 제조사 입장에서 편리하기 때문이다. 안드로이드 소스코드 자체가 차량용 활용 사례를 이미 반영하고 있고, 제조사가 빌드 과정에서 자체 시스템 앱을 자유롭게 추가할 수 있다.

카스퍼스키는 헤드유닛이 SIM 카드 슬롯을 갖추고 인터넷에 연결돼 내비게이션이나 소프트웨어 업데이트 기능을 지원하는 경우가 많다는 점에 주목했다. 헤드유닛 자체는 공격자에게 직접적인 가치가 없는 자산이지만, 사물인터넷(IoT) 기기 공격과 비슷하게 봇넷에 편입시켜 활용할 수 있다는 것이다.

카스퍼스키는 이번 작전을 높은 확신을 갖고 MoYu 그룹의 소행으로 지목했다. MoYu 그룹은 배드박스 봇넷과 연계된 조직이다. 배드박스는 일반적인 하드웨어 유통 경로로 판매되는 소비자 제품에 펌웨어 백도어를 미리 심어 유통하는 글로벌 네트워크다. 휴먼시큐리티(HUMAN Security)가 2023년 처음 이를 확인했으며, 당시 최소 한 곳 이상의 중국 제조사가 만든 안드로이드 스마트폰과 커넥티드 TV 박스, 태블릿 7만여 대에서 관련 악성코드가 발견됐다. 2024년 12월 독일 당국이 감염 기기와 공격자 인프라 간 통신을 차단하며 원조 배드박스 봇넷을 무력화했지만, 공격자들은 곧 업그레이드된 버전으로 재기했다. FBI는 배드박스 2.0이 TV 스트리밍 박스, 디지털 프로젝터, 디지털 액자, 애프터마켓 차량 인포테인먼트 시스템 등 사물인터넷 기기를 표적으로 삼고 있다고 지난해 경고한 바 있다.

카스퍼스키는 이번 악성코드가 운전이나 차량 안전과 관련된 핵심 기능에는 손대지 않는다고 밝혔다. 목적은 광고를 몰래 노출·클릭해 수익을 챙기는 광고 사기와, 다른 사람의 인터넷 트래픽을 감염된 헤드유닛의 연결을 통해 우회시키는 프록시 봇넷 운영에 한정된다. 갑자기 차량을 제어하거나 주행 중 조작에 개입할 위험은 없다는 설명이다.

다만 문제는 탐지가 쉽지 않다는 점이다. JarService는 화면도 없고 겉보기에 정상적인 시스템 업데이트 경로를 통해 설치되기 때문에 운전자가 이상 징후를 알아차리기 어렵다. DoFun이 보안 문제를 해결했다고 답했지만, 이미 감염된 적이 있는 개별 차량 헤드유닛을 운전자가 스스로 확인할 간단한 방법은 아직 마땅치 않다.

카스퍼스키는 이번 사례가 정식 시스템 앱의 업데이트 기능을 악용한 한층 정교한 유통 방식이며, 공격자들이 새로운 플랫폼으로 영역을 넓히고 있다고 지적했다. 헤드유닛을 겨냥한 악성 앱이 확인된 것은 이번이 처음인 만큼 차량용 인포테인먼트 플랫폼도 이제는 악성코드 대비가 필요한 영역이 됐다는 게 결론이다.
0 / 300