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
appshark — Statische Taint-Analyse-Plattform für Android-Apps, die Schwachstellen und Compliance-Probleme mithilfe anpassbarer regelbasierter Scans und detaillierter Ergebnisberichte erkennt. | Kitploit
Tools/GitHubGitHub/bytedance/appshark
Android-SicherheitStatische AnalyseSchwachstellenanalyseCode-Analyse
GitHubbytedance/appshark

appshark

Statische Taint-Analyse-Plattform für Android-Apps, die Schwachstellen und Compliance-Probleme mithilfe anpassbarer regelbasierter Scans und detaillierter Ergebnisberichte erkennt.

Repository anzeigen
1.8k179vor 5 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Dokumentenindex

  • 1.Überblick
  • 2.Start
  • 3.Regeln schreiben
  • 4.Compliance-Probleme mit AppShark finden
  • 5.Ein Path-Traversal-Spiel
  • 6.Argument
  • 7.Engine-Konfiguration
  • 8.Ergebnis
  • 9.Häufig gestellte Fragen

AppShark

Appshark ist eine statische Taint-Analyse-Plattform zur Erkennung von Schwachstellen in Android-Apps.

Voraussetzungen

Appshark benötigt eine bestimmte Version von JDK -- JDK 11. Nach Tests funktioniert es aufgrund von Abhängigkeitskompatibilitätsproblemen nicht mit anderen LTS-Versionen wie JDK 8 und JDK 16.

AppShark erstellen/kompilieren

Wir gehen davon aus, dass Sie sich im Stammverzeichnis des Projekt-Repositorys befinden. Sie können das gesamte Projekt mit dem Gradle-Tool erstellen.

root@kitploit:~
$ ./gradlew build  -x test 

Nach der Ausführung des obigen Befehls sehen Sie die Artefaktdatei AppShark-0.1.2-all.jar im Verzeichnis build/libs.

AppShark ausführen

Wie im vorherigen Schritt gehen wir davon aus, dass Sie sich noch im Stammverzeichnis des Projekts befinden. Sie können das Tool mit folgendem Befehl ausführen:

root@kitploit:~
$ java -jar build/libs/AppShark-0.1.2-all.jar  config/config.json5

Die config.json5 enthält die folgenden Konfigurationsinhalte.

root@kitploit:~
{
  "apkPath": "/Users/apks/app1.apk"
} 

Jede JSON-Datei hat diese grundlegenden Felder.

  • apkPath: der Pfad der zu analysierenden APK-Datei
  • out: der Pfad des Ausgabeverzeichnisses
  • rules: gibt die Regeln an, durch , getrennt. Standardmäßig sind es alle *.json-Dateien im $rulePath-Verzeichnis
  • rulePath: gibt das übergeordnete Verzeichnis der Regeln an, standardmäßig ./config/rules
  • maxPointerAnalyzeTime: das Timeout in Sekunden für die Analyse, die von einem Einstiegspunkt aus gestartet wird
  • debugRule: gibt den Regelnamen an, der das Logging zu Debugging-Zwecken aktiviert

Für weitere Konfigurationsfelder besuchen Sie bitte net.bytedance.security.app.ArgumentConfig

Wenn Sie eine Konfigurations-JSON-Datei bereitstellen, die den Ausgabepfad als out im Stammverzeichnis des Projekts festlegt, finden Sie nach der Analyse die Ergebnisdatei out/results.json.

Ergebnisse interpretieren

Nachfolgend ein Beispiel der results.json.

root@kitploit:~
{
  "AppInfo": {
    "AppName": "test",
    "PackageName": "net.bytedance.security.app",
    "min_sdk": 17,
    "target_sdk": 28,
    "versionCode": 1000,
    "versionName": "1.0.0"
  },
  "SecurityInfo": {
    "FileRisk": {
      "unZipSlip": {
        "category": "FileRisk",
        "detail": "",
        "model": "2",
        "name": "unZipSlip",
        "possibility": "4",
        "vulners": [
          {
            "details": {
              "position": "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolderFix1(java.lang.String,java.lang.String)>",
              "Sink": "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolderFix1(java.lang.String,java.lang.String)>->$r31",
              "entryMethod": "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void f()>",
              "Source": "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolderFix1(java.lang.String,java.lang.String)>->$r3",
              "url": "/Volumes/dev/zijie/appshark-opensource/out/vuln/1-unZipSlip.html",
              "target": [
                "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolderFix1(java.lang.String,java.lang.String)>->$r3",
                "pf{obj{<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolderFix1(java.lang.String,java.lang.String)>:35=>java.lang.StringBuilder}(unknown)->@data}",
                "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolderFix1(java.lang.String,java.lang.String)>->$r11",
                "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolderFix1(java.lang.String,java.lang.String)>->$r31"
              ]
            },
            "hash": "ec57a2a3190677ffe78a0c8aaf58ba5aee4d2247",
            "possibility": "4"
          },
          {
            "details": {
              "position": "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolder(java.lang.String,java.lang.String)>",
              "Sink": "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolder(java.lang.String,java.lang.String)>->$r34",
              "entryMethod": "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void f()>",
              "Source": "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolder(java.lang.String,java.lang.String)>->$r3",
              "url": "/Volumes/dev/zijie/appshark-opensource/out/vuln/2-unZipSlip.html",
              "target": [
                "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolder(java.lang.String,java.lang.String)>->$r3",
                "pf{obj{<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolder(java.lang.String,java.lang.String)>:33=>java.lang.StringBuilder}(unknown)->@data}",
                "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolder(java.lang.String,java.lang.String)>->$r14",
                "<net.bytedance.security.app.pathfinder.testdata.ZipSlip: void UnZipFolder(java.lang.String,java.lang.String)>->$r34"
              ]
            },
            "hash": "26c6d6ee704c59949cfef78350a1d9aef04c29ad",
            "possibility": "4"
          }
        ],
        "wiki": "",
        "deobfApk": "/Volumes/dev/zijie/appshark-opensource/app.apk"
      }
    }
  },
  "DeepLinkInfo": {
  },
  "HTTP_API": [
  ],
  "JsBridgeInfo": [
  ],
  "BasicInfo": {
    "ComponentsInfo": {
    },
    "JSNativeInterface": [
    ]
  },
  "UsePermissions": [
  ],
  "DefinePermissions": {
  },
  "Profile": "/Volumes/dev/zijie/appshark-opensource/out/vuln/3-profiler.json"
}

Lizenz

AppShark ist unter der APACHE LICENSE, VERSION 2.0 lizenziert.

Sicherheitshinweis

Die Benutzeroberfläche/der Server ist ein unterstützendes Testwerkzeug, das nicht in Produktionsumgebungen verwendet werden sollte und nur für lokale Tests bereitgestellt werden kann.

Kontakt

Lark

Tool herunterladen