APK Strings Extractor GUI – FuzzuTech | Python Ethical Hacking Tool
Demo :
Click Video πππ
π§Ύ Description :
Discover hidden strings, suspicious URLs, or encoded data inside APK files with this custom-built Python GUI tool. The "APK Strings Extractor – FuzzuTech" makes it easy for ethical hackers, developers, and cybersecurity enthusiasts to analyze APK content using a dark-themed tkinter interface. Perfect for quick analysis & reporting. Free, open-source, and beginner-friendly!
π§© Features :
-
π Scan & Extract strings from
.apk
files -
π¦ Supports
.xml
,.json
,.arsc
,.dex
,.txt
-
π¨ Sleek Dark Theme GUI with tkinter
-
π Save extracted results to
.txt
-
π§ Regex-based smart string capture
-
π» Built with Python | Open Source
Code :
import tkinter as tk
from tkinter import filedialog, messagebox, scrolledtext
import re
import zipfile
import os
class APKStringExtractor:
def __init__(self, root):
self.root = root
self.root.title("APK Strings Extractor - FuzzuTech")
self.root.geometry("600x500")
self.root.config(bg="#1e1e2f")
self.label = tk.Label(root, text="Upload APK File", bg="#1e1e2f", fg="white", font=("Segoe UI", 14))
self.label.pack(pady=10)
self.upload_btn = tk.Button(root, text="Select APK", bg="#03DAC6", fg="black", font=("Segoe UI", 12), command=self.select_apk)
self.upload_btn.pack()
self.text_area = scrolledtext.ScrolledText(root, wrap=tk.WORD, bg="#121212", fg="#03DAC6", font=("Consolas", 11))
self.text_area.pack(expand=True, fill='both', padx=10, pady=10)
self.save_btn = tk.Button(root, text="Save Results", bg="#BB86FC", fg="white", font=("Segoe UI", 12), command=self.save_results)
self.save_btn.pack(pady=5)
def select_apk(self):
file_path = filedialog.askopenfilename(filetypes=[("APK Files", "*.apk")])
if not file_path:
return
try:
zipf = zipfile.ZipFile(file_path, 'r')
result = ""
for file in zipf.namelist():
if file.endswith(('.xml', '.txt', '.json', '.dex', '.arsc')):
try:
data = zipf.read(file).decode(errors='ignore')
strings = re.findall(r'(http[s]?://[^\s"\']+|[a-zA-Z0-9_]{10,})', data)
for s in strings:
result += s + "\n"
except:
continue
self.text_area.delete(1.0, tk.END)
self.text_area.insert(tk.END, result if result else "No strings found.")
except Exception as e:
messagebox.showerror("Error", f"Could not extract APK:\n{e}")
def save_results(self):
text = self.text_area.get(1.0, tk.END).strip()
if not text:
messagebox.showinfo("No Data", "Nothing to save.")
return
file_path = filedialog.asksaveasfilename(defaultextension=".txt")
if file_path:
with open(file_path, 'w', encoding='utf-8') as f:
f.write(text)
messagebox.showinfo("Saved", "Results saved successfully!")
if __name__ == "__main__":
root = tk.Tk()
app = APKStringExtractor(root)
root.mainloop()
Comments
Post a Comment