가상화 세계 소개 – 2부

작성자: Egidijus Lileika, 수석 보안 연구원

 

가상화 시리즈 2부에 오신 것을 환영합니다. 이 연구의 목표는 애플리케이션 가상화가 공격 벡터로 사용될 가능성을 파악하는 것입니다. 본 연구에서는 12개의 가상화 앱을 일반적인 사용 사례와 해킹 도구로 테스트했습니다. 테스트된 모든 가상화 앱을 대상으로 Android용 애플리케이션 보호(Application Protection for Android) 제품이 완화 솔루션으로 평가되었습니다.

가상화 앱 평가

이 섹션에서는 가장 인기 있는 오픈 소스 및 클로즈드 소스 가상화 앱을 살펴봅니다. 각 앱은 사용성, 컴파일 또는 수정 용이성, 그리고 Android용 애플리케이션 보호(Application Protection for Android)가 가상화 환경에서 발생하는 공격으로부터 얼마나 효과적으로 보호할 수 있는지를 기준으로 평가됩니다. 다양한 가상화 방식을 모두 대표하는 애플리케이션을 나열해 보았습니다. 어떤 앱은 다른 앱보다 인기가 더 많으며, 가장 인기 없는 앱부터 가장 인기 없는 앱 순으로 대략적으로 살펴보겠습니다.

오픈 소스

가상 앱

가상 앱 부분적으로 가상화된 안드로이드 시스템입니다. 전체 기능 목록은 README.MD 프로젝트에서 확인할 수 있습니다. 이 프로젝트는 2017년까지 오픈소스로 공개되었으며, 그 이후로는 업데이트되지 않았습니다. 하지만 프리미엄 고객은 최신 버전(현재는 비공개 소스 코드)을 계속 사용할 수 있습니다. Github에는 미리 빌드된 바이너리가 없습니다. 소스 컴파일이 어렵고 많은 오류를 수동으로 수정해야 합니다.

이 프로젝트에는 여러 포크가 있습니다. 다음 포크 실제로 2017년 이후에 출시된 안드로이드 버전을 유지 관리하고 있습니다.

VirtualApp을 컴파일하려는 초기 시도는 실패했지만, 이 프로젝트는 다른 가상화 프로젝트에 영감을 주었다고 여겨집니다.

Android용 애플리케이션 보호가 활성화됨: 가상화 감지

VirtualXposed

The VirtualXposed VirtualApp 프로젝트를 기반으로 한 또 다른 부분적인 안드로이드 가상화입니다. VirtualXposed의 주요 기능은 가상화된 환경의 루팅되지 않은 기기에서 Xposed 프레임워크를 사용할 수 있도록 한다는 것입니다. 이 프로젝트는 안정성 문제가 있습니다. VirtualXposed는 테스트에 사용된 두 기기 모두에 Xposed 애드온을 설치하지 못했습니다. 한 기기에서는 VirtualXposed가 가상화된 앱을 실행하지 못했습니다. 다른 많은 프로젝트에서도 VirtualXposed 아이디어를 모방하려고 시도하고 있습니다.

Android용 애플리케이션 보호 기능이 활성화되면 가상화 감지, 후크 감지, 동적 계측 감지, 루트 감지, 서명 확인 및 에뮬레이터 감지로 인해 앱이 충돌합니다.

VirtualApp2022

VirtualApp2022 VirtualXposed에서 영감을 받았으며 VirtualApp을 기반으로 합니다. Android 11에서 잘 작동합니다. README.MD에서 개발자는 Xposed 플러그인을 지원한다고 명시하고 있습니다.

Android용 애플리케이션 보호가 활성화됨: 가상화 감지

투이

투이 전체 ROM 이미지를 가상화하는 안드로이드 시스템 앱입니다. 기본적으로 사전 설치된 Superuser 앱을 통해 안드로이드 8.1.0을 가상화합니다. Twoyi는 사용자 지정 ROM 이미지를 가상화할 수 있으므로, 이론적으로는 Magisk로 패치된 ROM을 가상화하거나, LSPosed를 실행하거나, 다른 위협 도구를 실행하는 데 사용될 수 있습니다.

Android용 애플리케이션 보호 가드가 트리거됨: 루트 감지 및 에뮬레이터 감지

멀티앱

멀티앱 잘 작동합니다. MultiApp이 사용하는 정확한 가상화 기술을 파악하기는 어렵지만, 안드로이드 시스템 가상화의 일부이거나 애플리케이션을 호스트로 가상화하는 것일 가능성이 높습니다. 이 프로젝트는 부분적으로만 오픈되어 있습니다. 앱 UI와 런처는 오픈 소스이지만, 주요 가상화 로직은 사전 컴파일된 JAR 및 APK 형태로 제공됩니다.

Android용 애플리케이션 보호가 활성화됨: 가상화 감지

태극권

태극권 VirtualXposed에서 영감을 받은 가상화 앱으로, 루팅되지 않은 기기에서도 Xposed 모듈을 사용할 수 있습니다. 아쉽게도 이 프로젝트는 두 테스트 기기 모두에서 가상화 앱을 설치하거나 실행하는 데 실패하여 안정성이 보장되지 않습니다.

Android용 애플리케이션 보호가 활성화되었습니다: 가상 감지

VirtualApk, Phantom 및 DroidPlugin

가상 APK, Phatom예산 및 드로이드플러그인 프로젝트는 사용자가 대상 앱을 가상화할 수 있는 호스트 애플리케이션을 만들 수 있도록 하는 SDK입니다. 시간 부족으로 이러한 프레임워크는 테스트되지 않았습니다.

Android용 애플리케이션 보호가 활성화되었습니다. – 가상화 감지

폐쇄형 소스

평행 우주, 이중 공간및 기타

다른:

  • https://play.google.com/store/apps/details?id=com.excelliance.multiaccounts&hl=en&gl=US
  • https://play.google.com/store/apps/details?id=multi.parallel.dualspace.cloner&hl=en&gl=US
  • https://play.google.com/store/apps/details?id=com.cloneapp.parallelspace.dualspace&hl=en&gl=US
  • https://play.google.com/store/apps/details?id=com.excelliance.multiaccount&hl=en&gl=US
  • https://play.google.com/store/apps/details?id=com.excean.parallelspace&hl=en&gl=US
  • https://play.google.com/store/apps/details?id=do.multiple.cloner&hl=en&gl=US
  • https://www.apkmirror.com/apk/nox-ltd/noxapp-multiple-accounts-clone-app/

Google Play 스토어에서 가장 인기 있는 가상화 앱 중 하나입니다. GameGuardian에서 Parallel Space를 사용하려면 GameGuardian 포럼에서 Parallel Space 앱의 비공식 "최적화된" 버전을 다운로드해야 합니다.

GameGuardian 최적화 버전:

  • https://gameguardian.net/forum/files/file/120-parallel-space-32-bit-support-64-bit-support/
  • https://gameguardian.net/forum/files/file/213-dualspace-32-bit-support-64-bit-support/
  • https://gameguardian.net/forum/files/file/194-virtual-space/
  • https://gameguardian.net/forum/files/file/225-octopus-32-bit-support-64-bit-support/
  • https://gameguardian.net/forum/files/file/122-go-multiple/

Android용 애플리케이션 보호 가드가 트리거됨: 가상화 감지 및 동적 계측 감지(병렬 공간 메모리 변조 감지)

스페이스코어

스페이스코어 부분적으로 오픈 소스로 제공되는 새로운 가상화 앱입니다. 가상화 로직은 클로즈드 소스입니다. 이 앱은 핵심 라이브러리 소스가 없으므로 소스에서 컴파일할 수 없습니다. 데모 빌드는 안정적이며 테스트된 대부분의 앱을 실행할 수 있습니다. 메뉴에는 아직 제공되지 않는 Xposed Manager용 자리 표시자가 포함되어 있습니다.

Android용 애플리케이션 보호가 활성화됨: 가상화 감지

앱클로너

앱클로너 대상 애플리케이션을 다른 패키지 이름으로 리패키징하여 시스템에 설치하는 리패키징 기반 가상화 기술입니다. 이 가상화 기술은 간단하지만, 루트 권한 없이는 다른 위협 도구와 함께 사용하여 대상 앱을 변조할 수 없습니다.

Android용 애플리케이션 보호가 활성화됨: 가상화 감지

아이슬란드

아이슬란드 는 업무 프로필 내 앱을 격리하는 업무 프로필 기반 가상화 솔루션입니다. Android 가상화를 위한 애플리케이션 보호 과정에서 가드 생성 보고서에 따르면, Island는 피해 애플리케이션을 다른 앱과 격리하는 데 사용되었고, GameGuardian은 감지되지 않은 채 애플리케이션 메모리를 변조하는 데 사용되었다고 합니다.

Android용 애플리케이션 보호가 활성화됨: 가상화 감지

제품 개요

가상화는 일반 사용자와 위협 행위자 모두에게 유용합니다. 많은 가상화 앱을 통해 위협 행위자는 루팅되지 않은 기기에 악성 환경을 가상으로 생성할 수 있습니다. 오픈소스 프로젝트는 많지만, 대부분은 쉽게 컴파일하고 수정할 수 없습니다.

가상화는 애플리케이션 리패키징부터 전체 안드로이드 시스템 가상화까지 다양한 방식으로 구현됩니다. 본 논문에서 테스트한 모든 가상화 앱은 Application Protection for Android 제품을 통해 감지되었습니다.

추가 리소스

https://github.com/pianpian315/VirtualAndroid/blob/master/Mobile%20Virtualization%20Technologies.pdf

https://github.com/ysrc/AntiVirtualApp

 

시리즈의 첫 번째 부분을 따라잡으세요. 여기에서 확인하세요.

당신은 또한 좋아할 거라