한 줄 요약

'RatHat'이라는 새로운 안드로이드 악성코드가 발견됐습니다. 이 악성코드는 문자 피싱(스미싱)이나 가짜 앱 배포 사이트를 통해 퍼지며, 설치되면 스마트폰의 접근성 기능과 ADB(안드로이드 개발자 디버그 도구)를 악용해 일반 앱 보안 울타리를 벗어나 기기를 장악합니다. 가장 큰 특징은 피해자가 앱을 직접 삭제해도 공격자가 기기 접근 권한을 유지할 수 있다는 점입니다. 또한 생성형 AI를 활용해 화면을 자동으로 탐색·조작하며, 문자 메시지·비밀번호·화면 녹화·키 입력 등 광범위한 정보를 탈취합니다. 중국 기반 위협 조직이 운영하는 것으로 추정되며, 기존 서명 기반 모바일 보안 솔루션으로는 탐지가 어렵습니다.

사건

Zimperium이 중국 연계 위협 행위자가 운영하는 신종 안드로이드 악성코드 'RatHat'을 분석 공개했다. 스미싱·악성 광고·서드파티 포럼을 통해 위장 APK 형태로 배포되며, 다단계 난독화와 안티-분석 기법을 탑재하고 있다.

영향

피해 기기에서 SMS·자격증명·화면 캡처·키 입력·잠금 화면 PIN·설치 앱 목록 등이 탈취된다. 악성코드 삭제 후에도 ADB 데몬을 통해 셸(Shell) 수준 접근이 유지되며 재설치가 가능해 완전 제거가 매우 어렵다.

원인

안드로이드 접근성 서비스 권한을 악용해 개발자 옵션과 무선 디버깅을 활성화한 뒤, 로컬 ADB 페어링 코드를 탈취함으로써 앱 샌드박스 외부에서 셸 권한으로 동작하는 독립 네이티브 데몬을 실행한다.

대응

Zimperium이 기술 분석 보고서를 공개했다. 아직 별도 패치나 공식 대응 지침은 없으며, 서드파티 출처 APK 설치 차단 및 스미싱 교육이 핵심 예방책이다.

실무 포인트

앱을 삭제해도 감염이 완전히 해소되지 않을 수 있으므로, 의심스러운 앱 설치 후에는 공장 초기화를 고려해야 한다. 기업 모바일 기기 정책에서 서드파티 APK 설치 금지(Unknown Sources 차단) 및 ADB 비활성화를 재점검할 필요가 있다. 서명 기반 모바일 MDM·EDR만으로는 탐지가 어려워 행위 기반 탐지 솔루션 도입 검토가 필요하다.

본문

Ravie Lakshmanan 2026년 9월 18일 모바일 보안 / 악성코드

사이버보안 연구자들이 'RatHat'이라는 새로운 안드로이드 악성코드를 발견했습니다. 이 악성코드는 중국 기반 위협 행위자가 운영하는 것으로 평가되며, AI(인공지능) 기반 시스템을 활용해 침해된 기기를 탐색하고 제어하는 기능을 갖추고 있습니다.

"RatHat은 주로 표적형 스미싱(SMS/문자 피싱)과 기만적인 서드파티 다운로드 포털로 유도하는 악성 광고 캠페인을 통해 배포되며, 자동화된 다단계 감염 파이프라인을 사용합니다"라고 Zimperium 연구원 Gianluca Braga, Vishnu Pratapagiri, Fernando Ortega는 밝혔습니다.

"배포된 후에는 접근성 기능 악용과 자율적인 로컬 ADB(Android Debug Bridge, 안드로이드 디버그 도구) 자가 페어링을 결합해 표준 안드로이드 앱 샌드박스를 탈출하고, 셸(shell) 수준 권한으로 실행되는 독립적인 네이티브 데몬을 설치합니다."

RatHat은 악성 광고, 스미싱 캠페인, 서드파티 포럼을 통해 홍보되는 기만적인 피싱 사이트를 통해 전파됩니다. 이 사이트들은 무고한 사용자를 속여 악성코드가 심어진 APK(안드로이드 앱 패키지)를 설치하게 만듭니다. 해당 패키지는 드로퍼(dropper) 역할을 하며 주요 페이로드를 실행하는 한편, 다중 안티-분석 및 안티-디버그 검사를 포함해 탐지를 우회합니다.

악성코드에 내장된 4가지 안티-분석 기법은 다음과 같습니다.

  • 컨테이너 변조(Container tampering): 패키지 내 특정 파일을 디렉터리로 선언하거나, 일부 파일에 ZIP 범용 암호화 비트 플래그를 설정해 안드로이드의 libziparchive 라이브러리에서는 무시되지만 unzip, apktool 같은 다른 도구에서는 보이도록 만듭니다.
  • 매니페스트 폭탄(Manifest bomb): "AndroidManifest.xml"에 안드로이드 네이티브 런타임이 건너뛰는 비문서화된 0x9999 청크 헤더를 삽입해 자동화 분석 파이프라인을 충돌시키거나 타임아웃을 유발합니다.
  • DEX 바이트코드 오염(DEX bytecode poisoning): 잘못된 element_width 속성이 설정된 의사 명령어(pseudo-instruction)를 포함시켜 디스어셈블리 과정을 실패하게 만듭니다.
  • 이중 문자열 암호화(Dual string-encryption): StringCrypto: Base64라는 암호화 방식을 사용해 분석을 방해합니다.

이 안드로이드 악성코드의 아키텍처는 세 가지 주요 구성 요소로 이루어져 있습니다: 악성 안드로이드 앱, Go 에이전트, FRP(Fast Reverse Proxy) 역방향 프록시 클라이언트. 안드로이드 앱은 핵심 시스템 권한을 획득하고 다음 공격 단계를 시작하는 통로 역할을 하며, 접근성 서비스 권한을 얻은 뒤 이를 악용해 개발자 옵션 잠금 해제, 무선 디버깅 활성화, 6자리 ADB 페어링 코드 추출을 수행합니다.

이 악성코드는 특정 앱 위에 오버레이(overlay)를 띄워 자격증명을 탈취하고, 안드로이드 MediaProjection API를 이용한 화면 녹화, SMS 메시지 가로채기, Google Play Store를 사칭한 가짜 실패 오버레이를 통한 재설치 방해 등의 기능도 갖추고 있습니다.

그러나 피해자가 앱을 삭제하더라도 공격자는 기기에 대한 셸 접근을 유지합니다. 공격자는 로컬 서비스를 활용해 악성코드 설치 여부를 확인하고, 설치되어 있지 않으면 재설치할 수 있습니다.

"악성코드는 기기의 실시간 접근성 트리(Accessibility tree)를 XML로 직렬화하여 세계에서 가장 널리 사용되는 생성형 AI 어시스턴트 중 하나와 통신합니다"라고 Zimperium은 밝혔습니다. "이 AI는 다음과 같은 비악성 행위에 활용됩니다: 화면에서 지정된 대상의 중심 좌표를 JSON으로 반환해 합성 클릭을 유도하는 것, XML에서 대상의 실제 화면 텍스트를 추출하는 것, SCROLL_DOWN과 같은 자동 탐색 명령을 전달하는 것 등입니다."

APK가 실행하는 Go 에이전트는 네이티브 라이브러리("liblocal-service.so")로 위장하지만, 로컬 ADB 데몬을 통해 획득한 셸 접근을 활용해 명령을 실행함으로써 악성코드의 지속성을 확보하고 전원 관리 예외를 적용합니다. FRP 클라이언트는 C2(명령 및 제어) 서버와의 안전한 역방향 터널을 구축하는 데 사용됩니다.

"Go 에이전트는 C2 서버에서 FRP 터널 구성을 가져오고, FRP 클라이언트는 이를 통해 운영자와의 지속적이고 활성화된 역방향 터널을 구축합니다"라고 연구원들은 밝혔습니다. "이 연결은 공격자가 ADB 데몬에 접근하는 데 사용됩니다. 이는 악성코드 자체의 기능과 무관하게 운영자가 원하는 모든 것을 처리할 수 있는 범용 기기 접근 경로입니다."

C2 서버가 내리는 명령은 다양하고 기능이 풍부해, 위협 행위자가 SMS 메시지, 자격증명, 파일, 잠금 화면 PIN·패턴·비밀번호, 화면 캡처, 키 입력(웹 브라우저 주소창에 입력된 URL 포함), 설치된 앱 목록 등을 수집할 수 있습니다. RatHat에는 Go 에이전트가 실행하는 하드웨어 수준의 키로거도 내장되어 있어 화면에서의 손가락 누름을 기록할 수 있습니다.

"RatHat의 다층 아키텍처, 수명 주기 외 데몬 의존성, 실시간 생성형 AI 의사결정 루프 활용은 전통적인 서명 기반 모바일 보안 제어가 왜 충분하지 않은지를 잘 보여줍니다"라고 Zimperium은 밝혔습니다.

출처
The Hacker News · thehackernews.com
원문 보기

분야별 뉴스

관심 분야의 보안 이슈를 모아 보세요.

TORUN SECURITY

투런이 제공하는 보안 솔루션

공격 표면 관리부터 엔드포인트·내부정보 보호까지, 기업 환경에 맞는 보안 솔루션을 투런이 함께 설계합니다.