Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
android-reverse-engineering-skill — एंड्रॉइड APK/XAPK/JAR/AAR फ़ाइलों को डीकम्पाइल करता है और jadx का उपयोग करके HTTP API, प्रमाणीकरण पैटर्न और कॉल फ़्लो निकालता है, जिसमें सुरक्षा अनुसंधान और पेनिट्रेशन टेस्टिंग के लिए R8-प्रतिरोधी Kotlin नाम पुनर्प्राप्ति शामिल है। | Kitploit
उपकरण/GitHubGitHub/simoneavogadro/android-reverse-engineering-skill
एंड्रॉइड सुरक्षास्थैतिक विश्लेषणभेद्यता विश्लेषणमोबाइल ऐप पेंटेस्टिंगरिवर्स इंजीनियरिंगएपीआई सुरक्षा परीक्षणजानकारी एकत्र करनापेनिट्रेशन टेस्टिंगमोबाइल सुरक्षा

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
बाइनरी विश्लेषण
लर्निंग और शिक्षा
GitHubsimoneavogadro/android-reverse-engineering-skill

android-reverse-engineering-skill

एंड्रॉइड APK/XAPK/JAR/AAR फ़ाइलों को डीकम्पाइल करता है और jadx का उपयोग करके HTTP API, प्रमाणीकरण पैटर्न और कॉल फ़्लो निकालता है, जिसमें सुरक्षा अनुसंधान और पेनिट्रेशन टेस्टिंग के लिए R8-प्रतिरोधी Kotlin नाम पुनर्प्राप्ति शामिल है।

रिपॉजिटरी देखें
6.7k7372 महीने पहलेKitploit द्वारा समीक्षित

Android Reverse Engineering & API Extraction — Claude Code कौशल

License: Apache-2.0 GitHub stars GitHub last commit

एक Claude Code कौशल जो Android APK/XAPK/JAR/AAR फ़ाइलों को डीकंपाइल करता है और ऐप द्वारा उपयोग किए जाने वाले HTTP API निकालता है — Retrofit एंडपॉइंट, OkHttp कॉल, हार्डकोडेड URL, प्रमाणीकरण पैटर्न — ताकि आप मूल स्रोत कोड के बिना उन्हें दस्तावेजित और पुन: प्रस्तुत कर सकें।

प्रथम श्रेणी Kotlin समर्थन: आधुनिक Android ऐप्स Kotlin/KMP हैं, जो R8 से भारी रूप से अस्पष्टीकृत (obfuscated) होते हैं। यह कौशल R8 द्वारा हटाए नहीं जा सकने वाले मेटाडेटा से मूल Kotlin वर्ग नामों को पुनर्प्राप्त करता है, और केवल क्लासिक Retrofit/OkHttp स्टैक से नहीं, बल्कि Ktor, Apollo (GraphQL) और Koin से API निकालता है। नीचे Kotlin नाम पुनर्प्राप्ति देखें।

Windows / PowerShell समर्थन (प्रायोगिक): bash स्क्रिप्ट के साथ *.ps1 स्क्रिप्ट हाल ही में सामुदायिक योगदान हैं, जिन्हें अभी भी स्थिर किया जा रहा है। किसी भी समस्या के लिए कृपया इस रिपॉजिटरी पर एक मुद्दा खोलें (योगदानकर्ताओं के अपस्ट्रीम फोर्क पर नहीं): PowerShell स्क्रिप्ट यहाँ @SimoneAvogadro द्वारा बनाए रखी गई हैं।

विषय सूची

  • यह क्या करता है
  • आवश्यकताएँ
  • स्थापना
  • उपयोग
  • रिपॉजिटरी संरचना
  • संदर्भ
  • श्रेय
  • अस्वीकरण
  • लाइसेंस

यह क्या करता है

आवश्यकताएँ

आवश्यक:

  • Java JDK 17+
  • jadx (CLI)

वैकल्पिक (अनुशंसित):

  • Vineflower या Fernflower — जटिल Java कोड पर बेहतर आउटपुट
  • dex2jar — APK/DEX फ़ाइलों पर Fernflower का उपयोग करने के लिए आवश्यक

विस्तृत स्थापना निर्देशों के लिए plugins/android-reverse-engineering/skills/android-reverse-engineering/references/setup-guide.md देखें।

स्थापना

GitHub से (अनुशंसित)

Claude Code के अंदर, निम्न चलाएँ:

root@kitploit:~
/plugin marketplace add SimoneAvogadro/android-reverse-engineering-skill
/plugin install android-reverse-engineering@android-reverse-engineering-skill

यह कौशल सभी भविष्य के सत्रों में स्थायी रूप से उपलब्ध होगा।

स्थानीय क्लोन से

root@kitploit:~
git clone https://github.com/SimoneAvogadro/android-reverse-engineering-skill.git

फिर Claude Code में:

root@kitploit:~
/plugin marketplace add /path/to/android-reverse-engineering-skill
/plugin install android-reverse-engineering@android-reverse-engineering-skill

उपयोग

स्लैश कमांड

root@kitploit:~
/decompile path/to/app.apk

यह पूर्ण कार्यप्रवाह चलाता है: निर्भरता जाँच, डीकंपाइलेशन, और प्रारंभिक संरचना विश्लेषण।

प्राकृतिक भाषा

यह कौशल निम्नलिखित वाक्यांशों पर सक्रिय होता है:

  • "Decompile this APK"
  • "Reverse engineer this Android app"
  • "Extract API endpoints from this app"
  • "Follow the call flow from LoginActivity"
  • "Analyze this AAR library"

मैनुअल स्क्रिप्ट

स्क्रिप्ट का स्वतंत्र रूप से भी उपयोग किया जा सकता है:

root@kitploit:~
# निर्भरताएँ जाँचें
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/check-deps.sh

# कोई लापता निर्भरता स्थापित करें (OS और पैकेज मैनेजर का स्वतः पता लगाएं)
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/install-dep.sh jadx
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/install-dep.sh vineflower

# डीकंपाइल करने से पहले APK/XAPK का फिंगरप्रिंट लें (चरण 0 ट्रायेज):
# फ्रेमवर्क, HTTP स्टैक, अस्पष्टीकरण स्तर, नेटिव लाइब्रेरीज, उल्लेखनीय SDK
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/fingerprint.sh app.apk

# jadx से APK डीकंपाइल करें (डिफ़ॉल्ट)
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh app.apk

# XAPK डीकंपाइल करें (स्वचालित रूप से निकालता है और अंदर प्रत्येक APK को डीकंपाइल करता है)
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh app-bundle.xapk

# Fernflower से डीकंपाइल करें
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh --engine fernflower library.jar

# दोनों इंजन चलाएँ और तुलना करें
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh --engine both --deobf app.apk

# API कॉल खोजें — डिफ़ॉल्ट रूप से सभी समर्थित स्टैक पर पूर्ण स्कैन करता है
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --retrofit
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --urls

# आधुनिक Kotlin/KMP स्टैक और अस्पष्टीकरण-प्रतिरोधी निष्कर्षण
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --ktor    # Ktor क्लाइंट
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --apollo  # Apollo / GraphQL
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --paths   # quoted path literals that survive R8 inlining

Kotlin नाम पुनर्प्राप्ति (R8 डिओबफस्केशन)

अधिकांश वास्तविक दुनिया के Kotlin/KMP ऐप्स R8 के माध्यम से आते हैं, इसलिए डीकंपाइल किए गए वर्ग a.b.c के रूप में निकलते हैं। R8 JVM प्रतीकों का नाम बदलता है लेकिन Kotlin मेटाडेटा स्ट्रिंग्स को नहीं हटा सकता — Kotlin रनटाइम (रिफ्लेक्शन, कोरआउटीन) को रनटाइम पर मूल पूरी तरह से योग्य नामों की आवश्यकता होती है। यह कौशल उन @DebugMetadata / @Metadata एनोटेशन को खोदकर एक अस्पष्टीकृत → वास्तविक वर्ग-नाम मैप बनाता है। एक सामान्य ऐप पर यह उन सभी *Repository / *ViewModel / *UseCase / *Impl वर्गों का ~100% पुनर्प्राप्त करता है जिन्हें आप वास्तव में पढ़ना चाहते हैं।

root@kitploit:~
# 1. डीकंपाइल किए गए स्रोतों से मैपिंग बनाएं
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/recover-kotlin-names.sh output/sources/ output/names/
#    → output/names/mapping.tsv, mapping.json, by_package/

# 2. इसे क्वेरी करें: एक अस्पष्टीकृत नाम हल करें, वास्तविक नाम से खोजें, या
#    स्रोतों को grep करें जहाँ प्रत्येक हिट उसके पुनर्प्राप्त वर्ग नाम से एनोटेट हो
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/lookup-name.sh output/names/ LoginRepository
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/lookup-name.sh output/names/ -o a.b.c
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/lookup-name.sh output/names/ --grep 'login' output/sources/

रिपॉजिटरी संरचना

root@kitploit:~
android-reverse-engineering-skill/
├── .claude-plugin/
│   └── marketplace.json                    # बाजार सूची
├── plugins/
│   └── android-reverse-engineering/
│       ├── .claude-plugin/
│       │   └── plugin.json                 # प्लगइन मेनिफेस्ट
│       ├── skills/
│       │   └── android-reverse-engineering/
│       │       ├── SKILL.md                # मुख्य कार्यप्रवाह (चरण 0–5)
│       │       ├── references/
│       │       │   ├── setup-guide.md
│       │       │   ├── jadx-usage.md
│       │       │   ├── fernflower-usage.md
│       │       │   ├── api-extraction-patterns.md
│       │       │   ├── kotlin-name-recovery.md
│       │       │   ├── third_party_hosts.txt   # प्रथम/तृतीय-पक्ष बकेटिंग के लिए डेनीलिस्ट
│       │       │   └── call-flow-analysis.md
│       │       └── scripts/
│       │           ├── check-deps.sh       # Bash
│       │           ├── check-deps.ps1      # PowerShell
│       │           ├── install-dep.sh
│       │           ├── install-dep.ps1
│       │           ├── decompile.sh
│       │           ├── decompile.ps1
│       │           ├── fingerprint.sh          # चरण 0 — डीकंपाइल-पूर्व ट्रायेज
│       │           ├── recover-kotlin-names.sh # R8 → वास्तविक Kotlin वर्ग नाम
│       │           ├── lookup-name.sh          # पुनर्प्राप्त नाम मैप को क्वेरी करें
│       │           ├── find-api-calls.sh
│       │           └── find-api-calls.ps1
│       └── commands/
│           └── decompile.md                # /decompile स्लैश कमांड
├── LICENSE
└── README.md

संदर्भ

  • jadx — Dex to Java decompiler
  • Fernflower — JetBrains analytical decompiler
  • Vineflower — Fernflower community fork
  • dex2jar — DEX to JAR converter
  • apktool — Android resource decoder

श्रेय

उन योगदानकर्ताओं को धन्यवाद जिन्होंने इस कौशल को आकार दिया:

  • @tajchert — चरण 0 फिंगरप्रिंटिंग, R8-प्रतिरोधी Kotlin नाम पुनर्प्राप्ति (recover-kotlin-names.sh, lookup-name.sh), और Ktor / Apollo / Koin / HMAC निष्कर्षण पैटर्न (#16)
  • @philjn — देशी Windows / PowerShell समर्थन (check-deps.ps1, install-dep.ps1, decompile.ps1, find-api-calls.ps1) और decompile.sh में विभाजित/बंडल APK पहचान (#8)
  • @txhno — बनाए रखा गया ThexXTURBOXx/dex2jar फोर्क में स्थानांतरण (#12)
  • @muqiao215 — डीकंपाइल आंशिक-सफलता हैंडलिंग, Fernflower टाइमआउट सुरक्षा, मध्यवर्ती-आर्टिफैक्ट निर्देशिका (#10)
  • @kevinaimonster — चीनी स्थानीयकरण (SKILL.md खोज कीवर्ड) (#4)

अस्वीकरण

यह प्लगइन केवल कानूनी उद्देश्यों के लिए प्रदान किया गया है, जिसमें शामिल हैं लेकिन इन्हीं तक सीमित नहीं:

  • सुरक्षा अनुसंधान और अधिकृत पैठ परीक्षण
  • लागू कानून के तहत अनुमत अंतरसंचालनीयता विश्लेषण (जैसे, EU निर्देश 2009/24/EC, US DMCA §1201(f))
  • मैलवेयर विश्लेषण और घटना प्रतिक्रिया
  • शैक्षिक उपयोग और CTF प्रतियोगिताएँ

इस उपकरण का उपयोग सभी लागू कानूनों, विनियमों और सेवा की शर्तों के अनुपालन में सुनिश्चित करना आपकी एकमात्र जिम्मेदारी है। जिस सॉफ़्टवेयर के आप मालिक नहीं हैं या जिसका विश्लेषण करने की अनुमति नहीं है, उसका अनधिकृत रिवर्स इंजीनियरिंग आपके अधिकार क्षेत्र में बौद्धिक संपदा कानूनों और कंप्यूटर धोखाधड़ी क़ानूनों का उल्लंघन कर सकता है।

लेखक इस उपकरण के दुरुपयोग के लिए किसी भी देयता से इनकार करते हैं।

लाइसेंस

Apache 2.0 — LICENSE देखें

टूल डाउनलोड करें
क्षमताविवरण
पहले फिंगरप्रिंट (चरण 0)सेकंडों में APK/XAPK का ट्रायेज करें — पूर्ण डीकंपाइलेशन से पहले फ्रेमवर्क (Flutter / React Native / Cordova / Xamarin / native-Kotlin), HTTP स्टैक, अस्पष्टीकरण स्तर और नेटिव लाइब्रेरीज का पता लगाएं
डीकंपाइलjadx और Fernflower/Vineflower का उपयोग करके APK, XAPK, JAR, और AAR फ़ाइलों को डीकंपाइल करें (एकल इंजन या साथ-साथ तुलना)
Kotlin नाम पुनर्प्राप्त करेंR8-अस्पष्टीकृत बाइनरीज से Kotlin मेटाडेटा का उपयोग करके मूल *Repository / *ViewModel / *UseCase वर्ग नामों का पुनर्निर्माण करें, जिसे R8 हटा नहीं सकता
API निकालेंRetrofit, OkHttp, Volley और आधुनिक Kotlin/KMP स्टैक: Ktor, Apollo (GraphQL), Koin DI — एंडपॉइंट, हार्डकोडेड URL, प्रमाणीकरण हेडर, टोकन और HMAC अनुरोध-हस्ताक्षर योजनाएँ
कॉल प्रवाह का पता लगाएंActivities/Fragments से ViewModels और रिपॉजिटरी के माध्यम से HTTP कॉल तक
संरचना का विश्लेषण करेंमेनिफेस्ट, पैकेज, आर्किटेक्चर पैटर्न
अस्पष्टीकरण को संभालेंR8-प्रतिरोधी पथ/URL निष्कर्षण के साथ-साथ ProGuard/R8 आउटपुट को नेविगेट करने की रणनीतियाँ