Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

5 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ”ฎ Axiom

Advanced Android Security Assessment Framework

Author: Abdul Salam | Portfolio: Salamcs.app Contact: LinkedIn: Abdul Salam | GitHub: abdulsalam401

Version Python Platform License

โš ๏ธ For authorized security testing and educational purposes only.


๐Ÿ“Œ Overview

Axiom (formerly PhantomDroid) is a comprehensive Android security assessment framework for ethical hackers and professional penetration testers. It combines static APK analysis, dynamic runtime analysis, network scanning, vulnerability assessment, exploit assistance, payload generation, and real-time GUI remote control with screen mirroring.


โœจ New Features in v2.1.0

Feature Description
๐Ÿ–ฅ๏ธ GUI Remote Control Real-time screen mirroring with mouse/keyboard control
๐Ÿ“ก Wireless ADB One-click setup for wireless device control
๐ŸŽฎ Interactive Remote Full touch/swipe/keyboard control from terminal
๐Ÿ”Œ WSL USB Support Forward USB devices from Windows to WSL Ubuntu
๐Ÿ“ธ Screen Streaming ASCII art or GUI-based live screen streaming

๐Ÿš€ Features

Module Description
๐Ÿ“ฑ Device Manager List devices, device info, ADB WiFi, screenshot, logcat, file transfer
๐Ÿ”Ž APK Analyzer Static decomposition: permissions, secrets, exported components, CVEs
๐ŸŒ Network Scanner Port scan, WiFi info, subnet discovery, MitM guide
๐Ÿšจ Vulnerability Scanner CVE mapping, root detection, insecure storage, WebView, task hijacking
๐Ÿ’ฅ Exploit Engine Activity launch, broadcast trigger, content provider dump, deep link fuzzer, shell dropper
๐ŸŽฏ Payload Generator msfvenom APK, reverse shell one-liners, ADB exploit scripts, obfuscation
๐Ÿ“‹ Report Generator Dark-themed HTML report + JSON + CLI table with remediation advice
๐ŸŽฎ Remote Control Wireless device control with screen mirroring (Terminal + GUI)

โš™๏ธ Quick Start (Cross-Platform Launchers)

Axiom includes cross-platform launcher scripts that automatically handle Python virtual environment creation, pip updates, dependency installations, and UTF-8 encoding support:

๐Ÿง For Linux, WSL, & macOS (Bash)

# 1. Clone the repository
git clone https://github.com/abdulsalam401/Axiom.git
cd Axiom

# 2. Make the launcher executable
chmod +x axiom.sh

# 3. Run Axiom (dependencies install automatically on first run)
./axiom.sh

๐ŸชŸ For Windows (PowerShell)

# 1. Clone the repository
git clone https://github.com/abdulsalam401/Axiom.git
cd Axiom

# 2. Run Axiom (dependencies install automatically on first run)
.\axiom.ps1

Note

Any command-line arguments are automatically forwarded to the underlying Python app (e.g. ./axiom.sh --help or .\axiom.ps1 --devices).


๐Ÿ› ๏ธ Manual Installation (Alternative)

If you prefer to set up the virtual environment manually, follow these steps:

Step 1: Clone the Repository

git clone https://github.com/abdulsalam401/Axiom.git
cd Axiom

Step 2: Create and Activate Virtual Environment

python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

Step 3: Install Python Dependencies

pip install -r requirements.txt

Step 4: Install ADB (Android Debug Bridge)

Linux (Native):

sudo apt install adb

Windows (for WSL users):

  • Download Platform Tools from: Android Developers
  • Extract to C:\platform-tools
  • Add C:\platform-tools to System PATH

macOS:

brew install android-platform-tools

Step 5: (Optional) Install GUI Dependencies

# For GUI Remote Control
pip install Pillow numpy

# For WSL Ubuntu users
sudo apt install python3-tk

๐Ÿ”Œ Setting Up ADB for WSL (Windows Users)

If you're using WSL Ubuntu on Windows, you need to forward USB devices:

Method 1: Using Windows ADB (Recommended)

# In WSL Ubuntu terminal, just use adb.exe
adb.exe devices

# Or create an alias
echo 'alias adb="adb.exe"' >> ~/.bashrc
source ~/.bashrc

Method 2: USB Forwarding with usbipd-win

Windows PowerShell (as Administrator):

winget install --id=dorssel.usbipd-win

# List USB devices
usbipd list

# Bind your Android device (replace BUSID with yours)
usbipd bind --busid 1-2

# Attach to WSL
usbipd attach --wsl --busid 1-2

WSL Ubuntu:

sudo chmod -R 777 /dev/bus/usb
adb devices

๐Ÿ“ฑ Connecting Your Phone

Enable Developer Options & USB Debugging

  1. Go to Settings โ†’ About Phone โ†’ Software Information.
  2. Tap Build Number 7 times.
  3. Go back to Settings โ†’ Developer Options.
  4. Enable USB Debugging.
  5. Connect your phone via USB.

First-Time Wireless Setup

# With USB connected
python3 axiom.py --remote-setup

# Follow the prompts:
# 1. USB detected โœ“
# 2. ADB over WiFi enabled
# 3. Disconnect USB when prompted
# 4. Press Enter to connect wirelessly

Quick Wireless Reconnect

# After initial setup
python3 axiom.py --remote-connect --remote-ip 192.168.x.x

๐Ÿ–ฅ๏ธ Usage

Interactive Mode (Recommended)

python3 axiom.py

Main menu options:

1  ๐Ÿ“ฑ Device Manager          7  ๐Ÿ“‹ Report Generator        13 ๐Ÿ“‚ File Transfer
2  ๐Ÿ”Ž APK Static Analyzer     8  ๐Ÿ“ก ADB WiFi Connect        14 ๐Ÿ’ป Interactive ADB Shell
3  ๐ŸŒ Network Scanner         9  ๐Ÿ“ธ Screenshot Capture      15 โ„น๏ธ  About
4  ๐Ÿšจ Vulnerability Scanner   10 ๐Ÿ“ฆ Package Manager         16 ๐ŸŽฎ Remote Control
5  ๐Ÿ’ฅ Exploit Engine          11 ๐Ÿ› Logcat Analyzer         17 ๐Ÿ–ฅ๏ธ GUI Remote Control
6  ๐ŸŽฏ Payload Generator       12 ๐Ÿ” SSL Pinning Check       0  ๐Ÿšช Exit

CLI Mode Examples

# List connected devices
python3 axiom.py --devices

# Full device info
python3 axiom.py --device RZ8R50TKP3A --info

# Analyze APK
python3 axiom.py --apk target.apk --report html --target-name "MyApp"

# Full vulnerability scan
python3 axiom.py --device 192.168.10.3:5555 --vuln-scan --pkg com.example.app

# Port scan
python3 axiom.py --device 192.168.10.3:5555 --port-scan

# Capture screenshot
python3 axiom.py --device 192.168.10.3:5555 --screenshot

Remote Control Commands

# Auto-detect connected device and start remote control menu (Recommended)
python3 axiom.py --remote
# or
python3 axiom.py -r

# Auto-detect connected device and take a screenshot
python3 axiom.py --screenshot
# or
python3 axiom.py -s

# One-time wireless setup (USB required first)
python3 axiom.py --remote-setup

# Interactive remote control (terminal) with manual IP
python3 axiom.py --remote-control --remote-ip 192.168.10.3

# GUI remote control with screen mirroring and manual IP
python3 axiom.py --gui-remote --remote-ip 192.168.10.3

# Stream screen as ASCII art
python3 axiom.py --remote-stream --remote-ip 192.168.10.3 --refresh 0.5

# Send touch event
python3 axiom.py --remote-tap 540 960 --remote-ip 192.168.10.3

# Send text
python3 axiom.py --remote-text "Hello World" --remote-ip 192.168.10.3

# Send key event
python3 axiom.py --remote-key home --remote-ip 192.168.10.3

๐ŸŽฎ GUI Remote Control Features

When you run --gui-remote, a graphical window opens with:

Feature Description
Real-time Screen Live mirror of your phone display (~20-30 FPS)
Mouse Click Click anywhere to tap on phone
Mouse Drag Drag to swipe on phone
Keyboard Input Type directly to phone
Navigation Buttons Home, Back, Recent apps
Screenshot One-click capture
FPS Counter Monitor performance
Refresh Rate Adjustable slider (0.3-3.0 sec)

GUI Keyboard Shortcuts

Key Action
Home Home button
Backspace Back button
Enter Enter/OK
Arrow Keys D-pad navigation
+ / - Volume up/down
Any text Types on phone

๐Ÿงฉ Module Details

APK Analyzer

  • Permission audit โ€” flags 30+ dangerous Android permissions by severity (CRITICAL โ†’ LOW)
  • Hardcoded secrets โ€” scans for API keys, passwords, AWS keys, Firebase configs
  • Exported components โ€” activities, services, receivers, providers
  • File hashes โ€” MD5, SHA1, SHA256
  • Obfuscation detection, native libraries, embedded URLs & IPs
  • Vulnerability heuristics โ€” debuggable flag, backup enabled, no network security config

Vulnerability Scanner

  • CVE Mapping โ€” 30+ CVEs mapped to Android SDK levels (Stagefright, BlueBorne, StrandHogg, BlueFrag)
  • Root detection โ€” su binary, Magisk, SuperSU, debuggable build
  • Frida detection โ€” checks running processes for Frida server
  • Insecure data storage โ€” SharedPreferences, SQLite, world-readable files
  • WebView checks โ€” JS enabled, file:// access
  • Task hijacking โ€” StrandHogg-style taskAffinity check

Exploit Engine

Module Description
Activity Launch Launch exported activities without permission
Broadcast Trigger Send malicious broadcast intents
Content Provider Dump arbitrary content provider data
Deep Link Fuzzer Fuzz 20+ deep link paths for unprotected endpoints
Frida Injection Step-by-step Frida/objection injection guide
Reverse Shell Drop Push & execute busybox/nc reverse shell via ADB
DB Extractor Pull SQLite databases from app data directory
Lock Bypass PIN brute force via ADB keyevents

Payload Generator

Type Description
reverse_tcp msfvenom Android Meterpreter reverse TCP APK
reverse_https msfvenom HTTPS reverse shell APK
reverse-shells 6 reverse shell one-liners (nc, bash, python3, perl, socat)
adb-script Full ADB exploitation shell script
obfuscate Base64 or hex payload obfuscation

Remote Control

Mode Description
Terminal (ASCII) Screen stream as ASCII art in terminal
GUI (Real-time) Graphical window with mouse/keyboard control
Interactive Command-based control (tap, swipe, text, keys)
Screenshot Single frame capture

๐Ÿ“‹ Report Output

Axiom generates:

  • HTML Report โ€” dark glassmorphism theme, severity badges, finding cards with CVE links and remediation advice
  • JSON Report โ€” structured machine-readable output
  • CLI Table โ€” quick terminal summary sorted by severity (CRITICAL โ†’ LOW)

๐Ÿ”ง Requirements

Python Packages (requirements.txt)

rich>=13.0.0
requests>=2.31.0
colorama>=0.4.6
Pillow>=10.0.0
numpy>=1.24.0

System Dependencies

Requirement Purpose Installation
Python 3.8+ Runtime python3 --version
ADB Device communication sudo apt install adb
(Optional) Metasploit APK payload generation Install Guide
(Optional) Frida Runtime instrumentation pip install frida-tools
(Optional) mitmproxy Traffic interception pip install mitmproxy
(Optional) tkinter GUI remote control sudo apt install python3-tk

๐Ÿ› Troubleshooting

ADB Not Found in WSL

# Use Windows ADB from WSL
adb.exe devices

# Or add to PATH
export PATH=$PATH:/mnt/c/Windows/System32

Wireless Connection Refused

# Re-enable TCP mode
adb tcpip 5555
adb connect <DEVICE_IP>:5555

GUI Remote Control Won't Start

# Install missing dependencies
pip install Pillow numpy
sudo apt install python3-tk

Screen Stream Shows Garbage

# The ASCII stream works but may look distorted
# For better quality, use GUI mode:
python3 axiom.py --gui-remote --remote-ip <IP>

๐Ÿ”’ Security Notes

  • ADB over WiFi exposes port 5555 โ€” only use on trusted networks
  • Disable wireless ADB when not in use: adb disconnect
  • The tool is for authorized testing only
  • Always get written permission before testing any system

๐Ÿ“ Project Structure

Axiom/
โ”œโ”€โ”€ axiom.py                 # Main entry point
โ”œโ”€โ”€ modules/
โ”‚   โ”œโ”€โ”€ adb_manager.py       # ADB operations
โ”‚   โ”œโ”€โ”€ apk_analyzer.py      # APK static analysis
โ”‚   โ”œโ”€โ”€ network_scanner.py   # Network scanning
โ”‚   โ”œโ”€โ”€ vulnerability_scanner.py # Vulnerability checks
โ”‚   โ”œโ”€โ”€ exploit_engine.py    # Exploitation modules
โ”‚   โ”œโ”€โ”€ payload_generator.py # Payload generation
โ”‚   โ”œโ”€โ”€ report_generator.py  # Report generation
โ”‚   โ”œโ”€โ”€ remote_controller.py # Remote control (terminal)
โ”‚   โ””โ”€โ”€ gui_remote.py        # GUI remote control
โ”œโ”€โ”€ requirements.txt         # Python dependencies
โ”œโ”€โ”€ LICENSE.txt             # MIT License
โ””โ”€โ”€ README.md              # This file

โš ๏ธ Legal Disclaimer

Axiom is intended exclusively for authorized security assessments, CTF competitions, and educational research.

Unauthorized use of this tool against systems you do not own or have explicit written permission to test is illegal under the Computer Fraud and Abuse Act (CFAA), Computer Misuse Act, and equivalent laws in most jurisdictions.

The author Abdul Salam and contributors assume no liability for any misuse or damage caused by this tool.


Made with ๐Ÿ’œ by Abdul Salam | Salamcs.app

About

Axiom is an advanced Android security assessment framework for ethical hackers, combining APK analysis, vulnerability scanning, exploit modules, payload generation, and real-time remote device control.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages