DoFun 헤드유닛 공급망 감염


요약
DoFun 기반 Android 차량 헤드유닛에서 정상 시스템 앱 TWCore의 업데이트 경로를 통한 악성코드 배포가 발견됐다. 사용자가 별도 앱을 설치하는 방식이 아니라, 제조사 인프라와 통신하는 신뢰된 시스템 앱이 패키지 설치 지시를 처리하는 과정에서 감염이 시작됐다.
Kaspersky는 2026년 6월 이 활동을 발견하고 2026-08-21 분석 결과를 공개했다. 공격자는 이 배포 경로를 이용해 UI가 없는 악성 앱을 설치하고 광고 노출, click fraud, 추가 모듈 배포와 proxy botnet 운영에 활용했다. Kaspersky에 따르면 제조사는 공개 시점에 문제를 수정했지만, 수정된 펌웨어나 com.tw.core의 버전 경계는 공개되지 않았다.
| 항목 | 내용 |
|---|---|
| 대상 | DoFun 업데이트 메커니즘을 사용하는 Android 차량 헤드유닛 |
| 진입점 | 정상 시스템 앱 TWCore의 패키지 설치·업데이트 기능 |
| 패키지 이름 | com.tw.core |
| 중간 구성요소 | JarService dropper |
| 악성 기능 | 광고 노출, click fraud, 추가 모듈 설치, proxy 기능 |
| 수집 정보 | 화면 해상도, 기기 모델, Wi-Fi 식별자, MAC 주소 |
| 발견 시점 | 2026년 6월 |
| 분석 공개일 | 2026-08-21 |
| 수정 상태 | Kaspersky는 제조사가 문제를 수정했다고 설명 |
| 공개 IOC | 인용된 자료에는 도메인, IP, 파일 해시가 제시되지 않음 |
타임라인
| 날짜 | 사건 |
|---|---|
| 2026년 6월 | Kaspersky가 차량 헤드유닛을 대상으로 한 악성코드 활동 발견 |
| 2026-08-21 | Securelist 기술 분석과 Kaspersky 보도자료 공개 |
| 2026-08-21 | Kaspersky가 제조사의 수정 조치 완료 사실을 공개 |
감염이 시작된 정확한 날짜, 수정 펌웨어 배포일과 감염 장치 수는 공개되지 않았다.
감염 메커니즘
TWCore는 DoFun 헤드유닛 펌웨어에 포함된 정상 시스템 앱이다. 분석 데이터 수집과 소프트웨어 업데이트를 담당하며, 제조사 서버에서 설치 또는 갱신할 애플리케이션에 관한 지시를 받는다.
확인된 배포 흐름은 다음과 같다.
### DoFun update infrastructure
-> TWCore system app
-> package installation or update instruction
-> JarService dropper
-> background application without a user interface
-> advertising and click fraud
-> additional module delivery
-> proxy operation
이 사례의 exploit primitive는 메모리 손상이나 Android 권한 상승이 아니다. 서버 지시에 따라 패키지를 내려받고 설치할 수 있는 신뢰된 시스템 앱의 배포 권한이 악성코드 전달에 사용됐다.
설치된 악성 앱은 일반 사용자 애플리케이션으로 동작하지만 launcher UI를 제공하지 않는다. 백그라운드에서 명령을 받아 광고를 표시하거나 click fraud를 수행하고, 추가 모듈을 내려받을 수 있다. Securelist 분석은 악성코드에서 9개의 명령을 식별했지만, 공개된 수집본에는 각 명령의 메서드나 파라미터까지 확인할 수 있는 코드가 포함되지 않았다.
서명 확인만으로 감염을 배제할 수 없다
TWCore가 정상 서명된 시스템 앱이라는 사실은 헤드유닛의 무결성을 보장하지 않는다. 서버가 전달한 작업 지시, 다운로드된 APK, package install 이력과 설치 이후의 네트워크 행위를 함께 확인해야 한다.
영향
직접 확인된 영향 범위는 DoFun 업데이트 메커니즘을 사용하는 Android 헤드유닛이다. 공장 출고 장치와 사후 장착 장치 가운데 어떤 모델과 펌웨어가 영향을 받았는지는 공개 자료에 제시되지 않았다.
확인된 악성 기능은 다음과 같다.
- 원치 않는 광고 표시
- 광고 클릭과 click fraud
- 추가 악성 모듈 다운로드
- 화면 해상도와 기기 모델 수집
- Wi-Fi 네트워크 식별자와 MAC 주소 수집
- 감염 장치의 proxy 자원화
SIM 슬롯이나 상시 인터넷 연결을 갖춘 헤드유닛은 지속적으로 사용할 수 있는 proxy 노드가 될 수 있다. 차량 제어 기능이나 주행 안전 시스템 침해는 공개 분석에서 확인되지 않았다.
공격 인프라 연관성
Kaspersky는 기존 TV 수신기 공격과의 유사성, botnet 관리 패널의 특징과 웹 소스에 남은 URL을 근거로 MoYu 그룹과의 연관성을 제시했다. MoYu는 감염된 Android 장치를 이용하는 BadBox botnet과 연결된 threat actor로 알려져 있다.
분석된 관리 패널에서는 residential proxy 서비스 PXYEDGE, ProxyForU의 웹사이트와 유사한 요소도 관찰됐다. 이는 인프라 또는 도구의 연관성을 나타내는 정황이며, 동일한 운영 주체를 확정하는 근거는 아니다.
자산 식별
CMDB, MDM, 차량 자산대장과 정비 기록에서 DoFun 기반 Android 헤드유닛을 찾는다. 제조사 이름뿐 아니라 패키지 인벤토리에서 com.tw.core의 존재 여부를 확인한다.
adb shell pm list packages | grep -F "com.tw.core"
adb shell dumpsys package com.tw.core
adb shell pm list packages -3
ADB 점검은 관리 권한이 있고 격리된 장치에서 수행한다. 운영 차량에서 디버깅 기능을 새로 활성화하면 장치 설정과 공격 표면이 달라질 수 있다.
확인할 항목은 다음과 같다.
com.tw.core의 버전, 설치 경로와 서명 인증서TWCore가 다운로드하거나 설치한 APK의 해시와 서명자- 2026년 6월 전후 설치된 사용자 앱
- launcher activity 없이 백그라운드에서 실행되는 패키지
- 시스템 앱이 시작한 package install 또는 update 기록
- 제조사 업데이트 서버가 아닌 위치에서 다운로드된 APK와 모듈
- 수정 펌웨어 적용 전후의 패키지 목록과 지속성 변화
TWCore를 임의로 삭제하면 정상 업데이트 기능이 손상될 수 있다. 의심 장치는 먼저 네트워크에서 격리하고 관련 로그와 APK를 보존한 뒤, 제조사가 제공한 정상 이미지로 재설치한다.
탐지 포인트
네트워크
- 신규 설치 직후 시작되는 장기 외부 연결
- 광고 인프라로 반복되는 HTTP 또는 HTTPS 요청
- 헤드유닛에서 발생하는 지속적이거나 대량인 proxy성 트래픽
- 제조사 업데이트 서버가 아닌 목적지에서 APK 또는 모듈을 내려받는 통신
- 차량의 정상 사용 패턴과 맞지 않는 다수 외부 목적지 연결
- DNS와 proxy 로그에서 설치 시점 전후 새로 등장한 목적지
공개 자료에 도메인과 IP가 포함되지 않았으므로 고정 IOC보다 설치 이벤트와 후속 통신의 시간 상관관계가 중요하다.
엔드포인트
com.tw.core가 시작한 패키지 설치 및 업데이트- launcher activity가 없는 신규 사용자 앱
- UI 없이 부팅 후 실행되는 백그라운드 서비스
- 화면 해상도, 기기 모델, Wi-Fi 식별자와 MAC 주소를 읽는 신규 패키지
- 광고 또는 WebView 구성요소를 백그라운드에서 실행하는 앱
- 알려진 관리 절차 없이 변경된 APK 서명자 또는 설치 경로
- 초기화나 펌웨어 재설치 뒤에도 다시 나타나는 패키지
서버
- 업데이트 서버가 전달한 패키지 작업 지시와 대상 장치 기록
- 배포 APK의 해시, 서명자와 저장 위치
- 승인 목록에 없는 패키지 이름 또는 비정상 배포량
- 특정 시점에 집중된 설치·업데이트 지시
- 관리 계정, API credential과 배포 파이프라인의 변경 이력
- 서버 로그와 단말 package install 기록 사이의 불일치
대응
| 순서 | 조치 | 확인 기준 |
|---|---|---|
| 1 | DoFun 헤드유닛과 com.tw.core 설치 자산 식별 | 모델, 펌웨어와 패키지 버전 인벤토리 확보 |
| 2 | 의심 장치의 외부 통신 제한 | 업무상 필요한 업데이트 목적지만 허용 |
| 3 | 설치·업데이트 이력 조사 | TWCore가 시작한 작업과 결과 APK 식별 |
| 4 | APK와 로그 보존 | 파일 해시, 서명자, 설치 시각과 네트워크 기록 확보 |
| 5 | 후속 네트워크 행위 분석 | 광고, 모듈 배포와 proxy성 연결 식별 |
| 6 | 제조사 정상 이미지 적용 | 이미지 출처와 무결성 검증 |
| 7 | 재설치 후 비교 점검 | 미승인 앱, 지속성 모듈과 비정상 외부 통신 부재 확인 |
서버 측 문제가 수정됐더라도 기존에 설치된 악성 앱과 추가 모듈이 자동으로 제거됐다고 볼 수 없다. 수정 이미지 적용 전후의 패키지 목록, 서비스와 네트워크 행위를 비교해야 한다.
헤드유닛 네트워크는 사내망이나 차량 관리 백엔드와 분리한다. outbound allowlist를 적용하고 DNS, proxy와 package install 로그를 보존하면 같은 배포 경로가 다시 악용될 때 설치 지시와 후속 통신을 연결해 추적할 수 있다.
참고 자료
- First Android malware targeting automotive head units
- Fahrzeug-Headunits angegriffen: Cyberkriminelle missbrauchen DoFun-App TWCore
- Hackers infect Android car head units with proxy botnet malware