Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2023-31014_Lab — CVE-2023-31014 암시적 인텐트 하이재킹을 위한 교육용 Android 랩 | Kitploit
도구/GitHubGitHub/lazybear8372/cve-2023-31014_lab
Android SecurityVulnerability AnalysisExploitationMobile App PentestingMobile SecurityLearning & EducationLabs & Practice
GitHublazybear8372/cve-2023-31014_lab

CVE-2023-31014_Lab

CVE-2023-31014 암시적 인텐트 하이재킹을 위한 교육용 Android 랩

저장소 보기
251개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2023-31014 Implicit Intent Hijacking Lab

NVIDIA GeForce NOW for Android의 CVE-2023-31014 공개 보고서를 바탕으로 만든 교육용 Android Lab이다. NVIDIA 소스코드, 실제 Action 문자열, 실제 인증정보를 포함하지 않는다.

공개 보고서에서 확인되는 사실

  • 대상: NVIDIA GeForce NOW Android mobile/TV app
  • 영향 버전: 6.00.32705137 ~ 6.04.33108832
  • 수정 버전: 6.05.33200069
  • 분류: CWE-927, 민감한 통신에서 Implicit Intent 사용
  • 취약 구조: Game Launcher 컴포넌트가 Streamer 컴포넌트용 implicit Intent를 전송하고, 같은 기기의 악성 앱이 이를 처리할 수 있음
  • 공개 영향: 제한적 정보 노출, 서비스 거부, 코드 실행 가능성
  • 제보자: Oversecured

Oversecured가 공개적으로 언급한 노출 범주는 stream configuration, user account, game information이다.

Lab의 재현 범위

구분구현 내용
Game Launchervictim/MainActivity
정상 Streamervictim/StreamerActivity
악성 Handlerattacker/HijackActivity
정보 노출가상의 게임·계정·세션·스트림 설정 Extras 표시
서비스 거부공격 Activity가 Intent를 처리하여 정상 Streamer가 시작되지 않음
수정정확한 StreamerActivity를 지정한 explicit Intent

공식 자료에는 실제 컴포넌트 종류가 공개되지 않았다. 따라서 이 Lab은 학습이 쉬운 Activity → Activity 모델을 사용한다. 코드 실행에 이르는 실제 체인도 공개되지 않았으므로 코드 실행은 재현하지 않는다.

구조

Victim Game Launcher
        │
        │ lab.cve202331014.action.START_STREAM
        │ implicit Intent + 가상 session extras
        ▼
Android Intent Resolver
        ├── Victim Normal Streamer
        └── Attacker HijackActivity

안전한 경로는 동일한 Intent에 다음 제한을 적용한다.

intent.setClass(this, StreamerActivity.class);
startActivity(intent);

빌드

요구 사항:

  • JDK 17
  • Android SDK 36
  • 인터넷 연결 또는 Gradle/Android Gradle Plugin 캐시
./gradlew :victim:assembleDebug :attacker:assembleDebug

생성 APK:

victim/build/outputs/apk/debug/victim-debug.apk
attacker/build/outputs/apk/debug/attacker-debug.apk

검증을 마친 사전 빌드 APK도 dist/에 포함되어 있다.

dist/cve-2023-31014-victim-debug.apk
dist/cve-2023-31014-attacker-debug.apk

설치 및 실습

에뮬레이터 또는 허가받은 테스트 기기에서만 실행한다.

adb install -r attacker/build/outputs/apk/debug/attacker-debug.apk
adb install -r victim/build/outputs/apk/debug/victim-debug.apk
  1. CVE Lab Attacker를 한 번 열어 공격 앱의 역할을 확인한다.
  2. CVE Lab Victim을 연다.
  3. 처리 후보가 Normal Streamer, CVE Lab Attacker 두 개로 표시되는지 확인한다.
  4. 취약하게 게임 시작을 누른다.
  5. Android 앱 선택기에서 CVE Lab Attacker를 선택한다.
  6. 공격 앱에 가상 세션 Extras가 표시되고 정상 Streamer가 실행되지 않는지 확인한다.
  7. 뒤로 돌아가 안전하게 게임 시작을 누른다.
  8. 앱 선택기 없이 Normal Streamer가 실행되는지 확인한다.

앱 선택기에서 항상 사용할 앱을 지정했다면 해당 앱의 시스템 설정에서 기본값 지우기를 수행한 뒤 다시 실습한다.

핵심 코드 비교

취약:

Intent intent = new Intent(ACTION_START_STREAM);
intent.putExtra(EXTRA_STREAM_CONFIG, demoConfig);
startActivity(intent); // package/component 없음

수정:

Intent intent = new Intent(ACTION_START_STREAM);
intent.putExtra(EXTRA_STREAM_CONFIG, demoConfig);
intent.setClass(this, StreamerActivity.class);
startActivity(intent);

같은 제조사 패키지의 여러 컴포넌트 중 하나를 Android가 선택해야 하는 설계라면 setPackage()도 외부 앱 차단에 사용할 수 있다. 단일 대상이라면 explicit component가 더 명확하다.

보고서와 Lab의 차이

다음 값은 공개되지 않았기 때문에 의도적으로 만들었다.

  • lab.cve202331014.action.START_STREAM Action
  • Activity 기반 Launcher/Streamer
  • demo_* Extra 이름과 값
  • 203.0.113.10 문서용 IP 주소

따라서 이 프로젝트는 CVE의 취약점 원리와 수정법을 재현하지만 실제 GeForce NOW 공격 PoC가 아니다.

참고 자료

  • NVIDIA Security Bulletin: https://nvidia.custhelp.com/app/answers/detail/a_id/5476
  • NVD CVE-2023-31014: https://nvd.nist.gov/vuln/detail/CVE-2023-31014
  • CWE-927: https://cwe.mitre.org/data/definitions/927.html
도구 다운로드