2020-08-14 11:11:59 +00:00
|
|
|
import subprocess
|
|
|
|
|
|
2026-03-15 08:25:04 +00:00
|
|
|
from core import HackingTool, HackingToolsCollection, console
|
2020-08-14 11:11:59 +00:00
|
|
|
|
2025-10-14 06:02:18 +00:00
|
|
|
from rich.panel import Panel
|
|
|
|
|
from rich.prompt import Prompt
|
|
|
|
|
|
2020-08-14 11:11:59 +00:00
|
|
|
|
|
|
|
|
class AndroGuard(HackingTool):
|
|
|
|
|
TITLE = "Androguard"
|
|
|
|
|
DESCRIPTION = "Androguard is a Reverse engineering, Malware and goodware " \
|
|
|
|
|
"analysis of Android applications and more"
|
2020-12-19 15:31:52 +00:00
|
|
|
INSTALL_COMMANDS = ["sudo pip3 install -U androguard"]
|
2020-08-14 11:11:59 +00:00
|
|
|
PROJECT_URL = "https://github.com/androguard/androguard "
|
|
|
|
|
|
|
|
|
|
def __init__(self):
|
2026-03-15 08:25:04 +00:00
|
|
|
super().__init__(runnable=False)
|
2020-08-14 11:11:59 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
class Apk2Gold(HackingTool):
|
|
|
|
|
TITLE = "Apk2Gold"
|
2026-03-15 08:30:55 +00:00
|
|
|
SUPPORTED_OS = ["linux"]
|
2020-08-14 11:11:59 +00:00
|
|
|
DESCRIPTION = "Apk2Gold is a CLI tool for decompiling Android apps to Java"
|
|
|
|
|
INSTALL_COMMANDS = [
|
2026-03-15 08:25:05 +00:00
|
|
|
"git clone https://github.com/lxdvs/apk2gold.git",
|
2020-08-14 11:11:59 +00:00
|
|
|
"cd apk2gold;sudo bash make.sh"
|
|
|
|
|
]
|
|
|
|
|
PROJECT_URL = "https://github.com/lxdvs/apk2gold "
|
|
|
|
|
|
|
|
|
|
def run(self):
|
|
|
|
|
uinput = input("Enter (.apk) File >> ")
|
|
|
|
|
subprocess.run(["sudo", "apk2gold", uinput])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Jadx(HackingTool):
|
|
|
|
|
TITLE = "JadX"
|
|
|
|
|
DESCRIPTION = "Jadx is Dex to Java decompiler.\n" \
|
|
|
|
|
"[*] decompile Dalvik bytecode to java classes from APK, dex," \
|
|
|
|
|
" aar and zip files\n" \
|
|
|
|
|
"[*] decode AndroidManifest.xml and other resources from " \
|
|
|
|
|
"resources.arsc"
|
|
|
|
|
INSTALL_COMMANDS = [
|
2026-03-15 08:25:05 +00:00
|
|
|
"git clone https://github.com/skylot/jadx.git",
|
2026-03-15 08:24:03 +00:00
|
|
|
# Bug 30 fix: gradlew dist requires Java — check first
|
|
|
|
|
"java -version 2>&1 | grep -q 'version' && cd jadx && ./gradlew dist || echo '[ERROR] Java not found. Install: sudo apt install default-jdk'",
|
2020-08-14 11:11:59 +00:00
|
|
|
]
|
|
|
|
|
PROJECT_URL = "https://github.com/skylot/jadx"
|
2026-03-15 08:24:03 +00:00
|
|
|
REQUIRES_JAVA = True
|
2020-08-14 11:11:59 +00:00
|
|
|
|
|
|
|
|
def __init__(self):
|
2026-03-15 08:24:03 +00:00
|
|
|
# Py3-4 fix: super(Jadx, self) → super()
|
|
|
|
|
super().__init__(runnable=False)
|
2020-08-14 11:11:59 +00:00
|
|
|
|
|
|
|
|
|
Add 35 new tools across 3 new + 6 existing categories
New categories:
- tools/active_directory.py: BloodHound, NetExec (nxc), Impacket,
Responder, Certipy, Kerbrute (6 tools)
- tools/cloud_security.py: Prowler, ScoutSuite, Pacu, Trivy (4 tools)
- tools/mobile_security.py: MobSF, Frida, Objection (3 tools)
Existing categories expanded:
- information_gathering.py: +SpiderFoot, Subfinder, TruffleHog, Gitleaks (4)
- web_attack.py: +Gobuster, Dirsearch, OWASP ZAP, testssl.sh, Arjun,
Caido, mitmproxy (7)
- post_exploitation.py: +Sliver, Havoc, PEASS-ng, Ligolo-ng, Chisel,
Evil-WinRM, Mythic (7)
- reverse_engineering.py: +Ghidra, Radare2 (2)
- forensics.py: +pspy (1)
- wireless_attack.py: +Bettercap (1)
hackingtool.py:
- Import 3 new category modules
- Add 3 new entries to tool_definitions (AD, Cloud, Mobile)
- Add 3 new instances to all_tools list
- Categories: 17 -> 20, total tools: 150+ -> 185+
- Help overlay updated for new range (1-20, 21=Update)
2026-03-15 12:28:45 +00:00
|
|
|
class Ghidra(HackingTool):
|
|
|
|
|
TITLE = "Ghidra (NSA Reverse Engineering)"
|
|
|
|
|
DESCRIPTION = "NSA's software reverse engineering framework — disassembly, decompilation, scripting."
|
|
|
|
|
REQUIRES_JAVA = True
|
|
|
|
|
INSTALL_COMMANDS = [
|
|
|
|
|
"sudo apt-get install -y ghidra || echo 'Download from https://ghidra-sre.org/'",
|
|
|
|
|
]
|
|
|
|
|
RUN_COMMANDS = ["ghidra --help || echo 'Run: ghidraRun'"]
|
|
|
|
|
PROJECT_URL = "https://github.com/NationalSecurityAgency/ghidra"
|
|
|
|
|
SUPPORTED_OS = ["linux", "macos"]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Radare2(HackingTool):
|
|
|
|
|
TITLE = "Radare2 (RE Framework)"
|
|
|
|
|
DESCRIPTION = "Portable UNIX-like reverse engineering framework and command-line toolset."
|
|
|
|
|
INSTALL_COMMANDS = [
|
|
|
|
|
"git clone https://github.com/radareorg/radare2.git",
|
|
|
|
|
"cd radare2 && sys/install.sh",
|
|
|
|
|
]
|
|
|
|
|
RUN_COMMANDS = ["r2 -h"]
|
|
|
|
|
PROJECT_URL = "https://github.com/radareorg/radare2"
|
|
|
|
|
SUPPORTED_OS = ["linux", "macos"]
|
|
|
|
|
|
|
|
|
|
|
2020-08-14 11:11:59 +00:00
|
|
|
class ReverseEngineeringTools(HackingToolsCollection):
|
|
|
|
|
TITLE = "Reverse engineering tools"
|
|
|
|
|
TOOLS = [
|
|
|
|
|
AndroGuard(),
|
|
|
|
|
Apk2Gold(),
|
Add 35 new tools across 3 new + 6 existing categories
New categories:
- tools/active_directory.py: BloodHound, NetExec (nxc), Impacket,
Responder, Certipy, Kerbrute (6 tools)
- tools/cloud_security.py: Prowler, ScoutSuite, Pacu, Trivy (4 tools)
- tools/mobile_security.py: MobSF, Frida, Objection (3 tools)
Existing categories expanded:
- information_gathering.py: +SpiderFoot, Subfinder, TruffleHog, Gitleaks (4)
- web_attack.py: +Gobuster, Dirsearch, OWASP ZAP, testssl.sh, Arjun,
Caido, mitmproxy (7)
- post_exploitation.py: +Sliver, Havoc, PEASS-ng, Ligolo-ng, Chisel,
Evil-WinRM, Mythic (7)
- reverse_engineering.py: +Ghidra, Radare2 (2)
- forensics.py: +pspy (1)
- wireless_attack.py: +Bettercap (1)
hackingtool.py:
- Import 3 new category modules
- Add 3 new entries to tool_definitions (AD, Cloud, Mobile)
- Add 3 new instances to all_tools list
- Categories: 17 -> 20, total tools: 150+ -> 185+
- Help overlay updated for new range (1-20, 21=Update)
2026-03-15 12:28:45 +00:00
|
|
|
Jadx(),
|
|
|
|
|
Ghidra(),
|
|
|
|
|
Radare2(),
|
2020-08-14 11:11:59 +00:00
|
|
|
]
|
2025-10-14 06:02:18 +00:00
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
|
tools = ReverseEngineeringTools()
|
|
|
|
|
tools.show_options()
|