Skip to content
forked from APKLab/APKLab

Android Reverse-Engineering Workbench for VS Code

License

Notifications You must be signed in to change notification settings

peteypivots/APKLab

This branch is up to date with APKLab/APKLab:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a8cedbe · Feb 26, 2024
Feb 26, 2024
Feb 5, 2022
Dec 20, 2020
Feb 26, 2024
Apr 2, 2021
Dec 27, 2020
Jan 10, 2021
May 2, 2022
Dec 27, 2020
Nov 4, 2022
Feb 2, 2021
Jan 10, 2021
Jan 9, 2021
Jan 12, 2021
Jul 23, 2023
Oct 14, 2020
Nov 3, 2022
Feb 26, 2024
May 2, 2022
Jul 23, 2023
Feb 26, 2024

Repository files navigation

APKLab
APKLab

The ultimate Android RE experience right inside your VS Code.

APKLab seamlessly integrates the best open-source tools: Quark-Engine, Apktool, 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

XDA Developers Telegram Matrix

Features

  • Decode all the resources from an APK
  • Disassemble the APK to Dalvik bytecode aka Smali
  • Decompile the APK to Java source
  • Interactive Malware Analysis Report
  • Initialize Project dir as Git repo
  • Excellent Smali language support with Smalise
  • Analyze & Hack effectively with feature-rich VS Code
  • Apply MITM patch for HTTPS inspection
  • Build an APK from Smali and resources
  • Rebuild an APK in Debug mode for dynamic analysis
  • Sign the APK seamlessly during the build
  • Install the APK directly from VS Code
  • Support for Apktool-style projects (apktool.yml)
  • Support for most Apktool CLI arguments
  • Android resource frameworks management (Coming soon!)
  • Support for user-provided keystore for APK signing
  • Download and configure missing dependencies
  • Supports Linux, Windows, and Mac

Requirements

  • JDK 8+

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

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

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

  • adb

    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

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"

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.

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.

Credits

About

Android Reverse-Engineering Workbench for VS Code

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 97.7%
  • JavaScript 2.3%