ランキングに戻る

APKLab/APKLab

TypeScriptapklab.surendrajat.xyz

Android Reverse-Engineering Workbench for VS Code

apktoolapk-decompilerapk-editorsmalidalviksmalideaapksignerapk-studioandroidjadxreverse-engineeringbytecode
スター成長
スター
3.9k
フォーク
332
週間成長
Issue
21
1k2k3k
2020年5月2022年5月2024年6月2026年7月
成果物npmnpm install apklab
README

APKLab
APKLab

The ultimate Android RE experience right inside your VS Code.

APKLab seamlessly integrates the best open-source tools: Apktool, smali-lsp, Jadx, uber-apk-signer, apk-mitm and more to the excellent VS Code so you can focus on app analysis and get it done without leaving the IDE.

Version Download Installs CI

Telegram Matrix XDA Developers

Features

  • Decode/Edit/Rebuild app resource files
  • Disassemble/Mod/Rebuild an APK to/from Smali
  • Decompile the APK to Java source
  • Excellent Smali language support with smali-lsp — go to definition, find references, hover, call/type hierarchy, code lens, completion, diagnostics
  • Analyze & mod effectively in VS Code with full IDE features
  • Sign & Install the APK after rebuild
  • Generate Frida hooks for any smali methods
  • Inject Frida gadget into APK with automatic main activity patching
  • Initialize git repo in project dir to track changes
  • Apply MITM patch for HTTPS inspection
  • Interactive Malware Analysis Report
  • Support for Apktool-style projects (apktool.yml)
  • Support for Apktool 3.0+ CLI arguments
  • Android resource frameworks management
  • Support for user-provided keystore for APK signing
  • Check for update and install needed tools automatically
  • Supports Linux, Mac and WSL2

Requirements

  • JDK 17+

    Run java -version in your Shell, if not found, download from here.

  • quark-engine >=21.01.6 (optional - for malware analysis)

    Run quark in your Shell, if not found, check official docs.

  • adb (optional)

    Run adb devices in your Shell, if not found, check this guide.

Getting Started

Open APK or Apktool project

  • Open the Command Palette (Ctrl+Shift+P) ➜ APKLab: Open an APK

    decode.gif

  • Or Just open an existing Apktool project folder

Apply MITM patch

  • Right-Click on or inside apktool.yml file ➜ APKLab: Prepare for HTTPS inspection

    mitm.gif

ReBuild and Sign APK

  • Right-Click on or inside apktool.yml file ➜ APKLab: Rebuild the APK

    rebuild.gif

Install APK to device

  • Right-Click on .apk file (in dist directory) ➜ APKLab: Install the APK

    install.gif

Generate Frida Hook

  • Right-Click inside a .method in a .smali file ➜ APKLab: Generate Frida Hook
  • Hook is appended to frida_hooks.ts in the project root

Inject Frida Gadget

  • Right-Click on or inside apktool.yml file ➜ APKLab: Inject Frida Gadget
  • Select the gadget .so file, target architecture, and the main activity is patched automatically

Clean ApkTool frameworks dir

  • Open the Command Palette (Ctrl+Shift+P) ➜ APKLab: Empty ApkTool Framework Dir

Extension Settings

Dependency Paths
  • apklab.apktoolPath: Full Path of apktool.jar. If you want to use a different version of it, change it like:

    "apklab.apktoolPath": "/home/oozer/downloads/apktool_2.4.1.jar"

  • apklab.apkSignerPath: Full Path of uber-apk-signer.jar. If you want to use a different version of it, change it like:

    "apklab.apkSignerPath": "/home/oozer/downloads/uber-apk-signer-1.1.0.jar"

  • apklab.jadxDirPath: Full Path of jadx-x.y.z dir. If you want to use a different version of it, change it like:

    "apklab.jadxDirPath": "/home/oozer/downloads/jadx-1.1.0"

  • apklab.smaliLspPath: Full Path of smali-lsp.jar. If you want to use a different version of it, change it like:

    "apklab.smaliLspPath": "/home/oozer/downloads/smali-lsp.jar"

  • apklab.javaPath: Path to the Java executable (default: java). Change it if Java is not on your PATH:

    "apklab.javaPath": "/usr/lib/jvm/java-17/bin/java"

Keystore configuration
  • apklab.keystorePath: Put the absolute path of your Java keystore(.jks or .keystore) file here.

    "apklab.keystorePath": "/home/oozer/downloads/debug.keystore"

  • apklab.keystorePassword: Put the password of your keystore here.

  • apklab.keyAlias: Put the alias of the used key in the keystore here.

  • apklab.keyPassword: Put the password of the used key in the keystore here.

Additional configuration
  • apklab.initProjectDirAsGit: Initialize project output directory as Git repository.
  • apklab.updateTools: Whether APKLab should check for tools (for apklab, jadx...) update and show a notification.
  • smaliLsp.trace.server: Traces the communication between VS Code and the Smali Language Server (off, messages, verbose).

Known Issues

Please check our Bug tracker for known issues.

Contribution Guide

For bug reports, feature requests or simply discussing an idea, please open an issue here. PRs are always welcome.

Changelog

Credits

関連リポジトリ
iBotPeaches/Apktool

A tool for reverse engineering Android apk files

JavaMavenApache License 2.0apktoolapk
apktool.org
25.1k4k
niklashigi/apk-mitm

🤖 A CLI application that automatically prepares Android APK files for HTTPS inspection

TypeScriptnpmMIT Licenseclireverse-engineering
npm.im/apk-mitm
5.1k430
vaibhavpandeyvpz/apkstudio

Open-source, cross platform Qt6 based IDE for reverse-engineering Android application packages. It features a friendly IDE-like layout including code editor with syntax highlighting support for *.smali code files.

C++GNU Lesser General Public License v3.0androidreverse-engineering
vaibhavpandey.com/apkstudio/
4.3k689
Jermic/Android-Crack-Tool

🐞Android crack tool For Mac

androidcrack
2.9k391
dana-at-cp/backdoor-apk

backdoor-apk is a shell script that simplifies the process of adding a backdoor to any Android APK file. Users of this shell script should have working knowledge of Linux, Bash, Metasploit, Apktool, the Android SDK, smali, etc. This shell script is provided as-is without warranty of any kind and is intended for educational purposes only.

ShellApache License 2.0metasploitsmali
2.4k713
AdrMXR/KitHack

Hacking tools pack & backdoors generator.

PythonPyPIMIT Licenseandroidwindows
adrmxr.github.io/KitHack/
2.1k269
kefir500/apk-editor-studio

Powerful yet easy to use APK editor for PC and Mac.

C++GNU General Public License v3.0apk-editorapk-decompiler
qwertycube.com/apk-editor-studio/
1.6k198
CYRUS-STUDIO/ApkToolPlus

ApkToolPlus 是一个 apk 逆向分析工具(a apk analysis tools)。

JavaMavenApache License 2.0apktoolapk-signature-protection
1.5k326
moyuwa/ApkCheckPack

apk加固特征检查工具,汇总收集已知特征和手动收集大家提交的app加固特征,全网最全开源加固特征,支持40+厂商的加固检测,欢迎大家提交无法识别的app

GoGo Modulesapktoolsecurity-tools
1.3k160
ClaudiuGeorgiu/Obfuscapk

An automatic obfuscation tool for Android apps that works in a black-box fashion, supports advanced obfuscation features and has a modular architecture easily extensible with new techniques

PythonPyPIMIT Licenseandroidapplication
1.3k321
AvillaDaniel/AvillaForensics

Avilla Forensics FREE

C#Othermobileforensics
1.1k214