Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2023-31014_Lab — Lehrlabor für Android zum Implicit-Intent-Hijacking (CVE-2023-31014) | Kitploit
Tools/GitHubGitHub/lazybear8372/cve-2023-31014_lab
Android-SicherheitSchwachstellenanalyseExploitationMobile App-PenetrationstestsMobile SicherheitLernen & BildungLabs & Praxis
GitHublazybear8372/cve-2023-31014_lab

CVE-2023-31014_Lab

Lehrlabor für Android zum Implicit-Intent-Hijacking (CVE-2023-31014)

Repository anzeigen
9vor 1 MonatNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2023-31014 Lab zum Hijacking impliziter Intents

Dies ist ein zu Lehrzwecken erstelltes Android-Lab, das auf dem öffentlichen Bericht zu CVE-2023-31014 in NVIDIA GeForce NOW for Android basiert. Es enthält weder NVIDIA-Quellcode noch echte Action-Strings oder echte Anmeldeinformationen.

Fakten aus dem öffentlichen Bericht

  • Ziel: NVIDIA GeForce NOW Android-Mobil-/TV-App
  • Betroffene Versionen: 6.00.32705137 ~ 6.04.33108832
  • Behobene Version: 6.05.33200069
  • Klassifizierung: CWE-927, Verwendung impliziter Intents bei sensibler Kommunikation
  • Verwundbare Struktur: Die Game-Launcher-Komponente sendet einen impliziten Intent für die Streamer-Komponente, den eine bösartige App auf demselben Gerät verarbeiten kann
  • Öffentlich gemeldete Auswirkungen: eingeschränkte Informationsoffenlegung, Denial of Service, Möglichkeit der Codeausführung
  • Gemeldet von: Oversecured

Die von Oversecured öffentlich genannten Offenlegungskategorien sind Stream-Konfiguration, Benutzerkonto und Spielinformationen.

Reproduktionsumfang des Labs

In den offiziellen Unterlagen wurde die tatsächliche Art der Komponenten nicht offengelegt. Daher verwendet dieses Lab das leicht verständliche Modell Activity → Activity. Da auch die tatsächliche Kette zur Codeausführung nicht offengelegt wurde, wird die Codeausführung nicht reproduziert.

Struktur

root@kitploit:~
Victim Game Launcher
        │
        │ lab.cve202331014.action.START_STREAM
        │ impliziter Intent + virtuelle Session-Extras
        ▼
Android Intent Resolver
        ├── Victim Normal Streamer
        └── Attacker HijackActivity

Der sichere Pfad wendet auf denselben Intent die folgende Einschränkung an:

root@kitploit:~
intent.setClass(this, StreamerActivity.class);
startActivity(intent);

Build

Voraussetzungen:

  • JDK 17
  • Android SDK 36
  • Internetverbindung oder Gradle/Android-Gradle-Plugin-Cache
root@kitploit:~
./gradlew :victim:assembleDebug :attacker:assembleDebug

Erzeugte APKs:

root@kitploit:~
victim/build/outputs/apk/debug/victim-debug.apk
attacker/build/outputs/apk/debug/attacker-debug.apk

Vorgefertigte und verifizierte APKs sind ebenfalls in dist/ enthalten:

root@kitploit:~
dist/cve-2023-31014-victim-debug.apk
dist/cve-2023-31014-attacker-debug.apk

Installation und Übung

Nur auf einem Emulator oder einem autorisierten Testgerät ausführen.

root@kitploit:~
adb install -r attacker/build/outputs/apk/debug/attacker-debug.apk
adb install -r victim/build/outputs/apk/debug/victim-debug.apk
  1. Öffne CVE Lab Attacker einmal, um die Rolle der Angreifer-App zu prüfen.
  2. Öffne CVE Lab Victim.
  3. Prüfe, ob als Verarbeitungskandidaten Normal Streamer und CVE Lab Attacker angezeigt werden.
  4. Tippe auf Spiel verwundbar starten.
  5. Wähle im Android-App-Auswahlfeld CVE Lab Attacker aus.
  6. Prüfe, ob in der Angreifer-App die virtuellen Session-Extras angezeigt werden und der normale Streamer nicht gestartet wird.
  7. Gehe zurück und tippe auf Spiel sicher starten.
  8. Prüfe, ob Normal Streamer ohne App-Auswahlfeld gestartet wird.

Falls im App-Auswahlfeld eine App als Standard festgelegt wurde, führe in den Systemeinstellungen dieser App Standardwerte löschen aus und wiederhole anschließend die Übung.

Vergleich des Kerncodes

Verwundbar:

root@kitploit:~
Intent intent = new Intent(ACTION_START_STREAM);
intent.putExtra(EXTRA_STREAM_CONFIG, demoConfig);
startActivity(intent); // kein package/component

Sicher:

root@kitploit:~
Intent intent = new Intent(ACTION_START_STREAM);
intent.putExtra(EXTRA_STREAM_CONFIG, demoConfig);
intent.setClass(this, StreamerActivity.class);
startActivity(intent);

Wenn das Design vorsieht, dass Android eine von mehreren Komponenten desselben Herstellerpakets auswählen muss, kann auch setPackage() verwendet werden, um externe Apps zu blockieren. Bei einem einzelnen Ziel ist eine explizite Komponente jedoch eindeutiger.

Unterschiede zwischen Bericht und Lab

Die folgenden Werte wurden bewusst erstellt, da sie nicht offengelegt wurden:

  • Die Action lab.cve202331014.action.START_STREAM
  • Der Activity-basierte Launcher/Streamer
  • Die Extra-Namen und -Werte demo_*
  • Die Dokumentations-IP-Adresse 203.0.113.10

Daher reproduziert dieses Projekt das Schwachstellenprinzip und die Behebung der CVE, ist jedoch kein echter Angriffs-PoC für GeForce NOW.

Referenzen

  • 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
Tool herunterladen
KategorieImplementierung
Game Launchervictim/MainActivity
Normaler Streamervictim/StreamerActivity
Bösartiger Handlerattacker/HijackActivity
InformationsoffenlegungAnzeige von Extras für fiktive Spiel-, Konto-, Sitzungs- und Stream-Konfigurationen
Denial of ServiceDie Angriffs-Activity verarbeitet den Intent, sodass der normale Streamer nicht gestartet wird
BehebungExpliziter Intent, der die genaue StreamerActivity festlegt