Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
AudioServer-Voip-Recorder — 🔬 व्हॉट्सऐप, सिग्नल और टेलीग्राम पर परीक्षित एवं निर्मित, Android 14 पर libaudioflinger.so को डाइनैमिक रूप से हुक करके रियल-टाइम VoIP ऑडियो कैप्चर (Uplink/Downlink) के लिए एक उन्नत Android अनुसंधान उपकरण। | Kitploit
उपकरण/GitHubGitHub/nighthawkk/audioserver-voip-recorder
एंड्रॉइड सुरक्षारिवर्स इंजीनियरिंगमोबाइल सुरक्षा
GitHubnighthawkk/audioserver-voip-recorder

AudioServer-Voip-Recorder

🔬 व्हॉट्सऐप, सिग्नल और टेलीग्राम पर परीक्षित एवं निर्मित, Android 14 पर libaudioflinger.so को डाइनैमिक रूप से हुक करके रियल-टाइम VoIP ऑडियो कैप्चर (Uplink/Downlink) के लिए एक उन्नत Android अनुसंधान उपकरण।

रिपॉजिटरी देखें

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
31991 महीना पहलेअभी तक समीक्षित नहीं

लक्ष्य: जब सिस्टम संचार मोड में हो तो Android के audioserver (विशेष रूप से libaudioflinger.so) को हुक करके VoIP स्ट्रीम कैप्चर का प्रदर्शन करना और अपलिंक (माइक) और डाउनलिंक (स्पीकर) PCM बफ़र्स रिकॉर्ड करना।

परियोजना डिज़ाइन और कार्यप्रणाली

आर्किटेक्चर:

  • कंट्रोलर ऐप (Android)
    SELINUX पॉलिसी सेटअप, पेलोड इंजेक्शन, डेटा स्थानांतरण और प्लेबैक प्रबंधित करने के लिए 9 बटनों वाला UI।

  • पेलोड (libaudiohook.so)
    C++ शेयर्ड लाइब्रेरी (ऐप प्रोजेक्ट के हिस्से के रूप में बनाई गई) जो Dobby का उपयोग करके आंतरिक AudioFlinger विधियों को हुक करती है और कच्चे PCM बफ़र्स को सत्र निर्देशिका में लिखती है।

  • पोस्ट-प्रोसेसिंग
    अतिरिक्त टूल, tools/audioparser.py कच्ची .ac(Downlink)/.bc(Uplink) फ़ाइलों को WAV में परिवर्तित करता है। ऐप का फ़ाइल मैनेजर भी इन-ऐप कन्वर्ट और प्ले कर सकता है।

  • रिसर्च उपयोगिताएँ
    प्रारंभिक फ़ंक्शन ट्रेसिंग और ऑफ़सेट खोज के लिए Frida स्क्रिप्ट्स; सिंबल/ऑफ़सेट और अन्य स्निपेट्स के लिए विश्लेषण फ़ाइलें।

कंट्रोलर ऐप

यह Android एप्लिकेशन audioserver के माध्यम से VoIP रिकॉर्डिंग प्रबंधित करने के लिए एक ग्राफिकल इंटरफ़ेस प्रदान करता है। यह एक नेटिव पेलोड के साथ एकीकृत होता है जो VoIP एप्लिकेशन से माइक्रोफ़ोन और स्पीकर ऑडियो कैप्चर करने के लिए Android ऑडियो स्टैक को हुक करता है।

यह ऐप एक कंट्रोल सेंटर के रूप में कार्य करता है, जो आपको आवश्यक SELinux पॉलिसियाँ इंजेक्ट करने, मॉनिटरिंग शुरू/बंद करने, रिकॉर्ड किए गए डेटा को प्रबंधित करने और कैप्चर की गई VoIP ऑडियो फ़ाइलों को चलाने की सुविधा देता है।

विशेषताएँ

मुख्य एक्टिविटी में 9 कंट्रोल बटन होते हैं:

  1. पॉलिसी इंजेक्ट करें
    audioserver और इस ऐप को एक साथ काम करने के लिए आवश्यक SELinux पॉलिसियाँ इंजेक्ट करता है।

  2. मॉनिटरिंग शुरू करें
    audioserver में शेयर्ड लाइब्रेरी पेलोड इंजेक्ट करता है, RecordTrack और PlaybackTrack को हुक करके VoIP ऑडियो कैप्चर सक्षम करता है। प्रोसेस इंजेक्शन के लिए AndKittyInjector का उपयोग करता है।

  3. मॉनिटरिंग बंद करें
    audioserver प्रोसेस को पुनः प्रारंभ करता है, मॉनिटरिंग रोकता है और इंजेक्ट किए गए हुक्स को हटाता है।

  4. डेटा कॉपी करें
    कैप्चर किए गए कच्चे PCM ऑडियो को अस्थायी निर्देशिका /data/local/tmp/voip से /sdcard/voip में कॉपी करता है।

    • बाद में अस्थायी निर्देशिका को साफ़ करता है।
  5. लॉग देखें
    इंजेक्शन, हुकिंग और रिकॉर्डिंग स्थिति से संबंधित लॉग प्रदर्शित करता है।

  6. SELinux सक्षम करें
    SELinux को enforcing मोड में पुनर्स्थापित करता है।

  7. SELinux अक्षम करें
    SELinux को permissive मोड में सेट करता है, इंजेक्ट की गई पॉलिसियाँ विफल होने पर उपयोग करें।

  8. ऑडियो चलाएँ
    कस्टम VoIP फ़ाइल मैनेजर (/sdcard/voip/) खोलता है:

    • कच्ची PCM फ़ाइलों को मेमोरी में WAV प्रारूप में परिवर्तित करता है।
    • परिवर्तित ऑडियो को सीधे इन-ऐप चलाता है।
  9. डेटा हटाएँ
    /data/local/tmp/voip और /sdcard/voip दोनों से सभी ऑडियो डेटा हटाता है। नोट: डेटा हटाने के बाद, डेटा सहेजने के लिए निर्देशिका निर्माण हेतु audioserver में पुनः इंजेक्ट करना आवश्यक है।

+----------------------+    
|                      |    
|   App MainActivity   |    
|                      |    
|                      |    
|(9 Control Buttons UI)|    
|                      |    
|                      |    
+----------+-----------+    
           |                
           |                
           |                
+----------v-----------+    
|                      |    
|       JNI Layer      |    
|                      |    
| Selinux, Process Inje|    
| ction,               |    
|                      |    
|                      |    
+----------------------+    

हुकिंग पेलोड

यह शेयर्ड लाइब्रेरी AUDIO_MODE_IN_COMMUNICATION का पता लगाने और पूर्वनिर्धारित पैकेज नामों के सेट के लिए Android के ऑडियो स्टैक से सीधे VoIP ऑडियो स्ट्रीम कैप्चर करने हेतु audioserver में इंजेक्ट की जाती है।

यह libaudioflinger.so के अंदर महत्वपूर्ण विधियों को इंटरसेप्ट करने के लिए Dobby इनलाइन हुकिंग फ्रेमवर्क का उपयोग करता है।
अपलिंक (माइक्रोफ़ोन) और डाउनलिंक (स्पीकर) दोनों ऑडियो स्ट्रीम कैप्चर की जाती हैं और बाद में प्रोसेसिंग के लिए सत्र फ़ाइलों में लिखी जाती हैं।

हुकिंग पॉइंट्स

लाइब्रेरी AudioFlinger और संबंधित क्लासेस के अंदर निम्नलिखित फ़ंक्शनों पर हुक्स स्थापित करती है:

Functionउद्देश्य
AudioFlinger::setModeIN_COMMUNICATION मोड (VoIP सक्रिय) में/से संक्रमणों को ट्रैक करता है।
RecordTrack::getNextBufferमाइक्रोफ़ोन (अपलिंक) ऑडियो फ्रेम्स कैप्चर करता है।
PlaybackThread::Track::getNextBufferस्पीकर (डाउनलिंक) ऑडियो फ्रेम्स कैप्चर करता है।
Track::stopडाउनलिंक फ़ाइल बंद और अंतिम रूप देता है।
RecordTrack::stopअपलिंक फ़ाइल बंद और अंतिम रूप देता है।

लक्षित एप्लिकेशन

लाइब्रेरी UID → पैकेज मैपिंग के आधार पर स्ट्रीम फ़िल्टर करती है।

वर्तमान में मॉनिटर किए जाने वाले ऐप्स:

  • com.whatsapp
  • com.whatsapp.w4b (WhatsApp Business)
  • org.thoughtcrime.securesms (Signal)
  • org.telegram.messenger
  • org.telegram.messenger.web

आप audioserver_hook.cpp के अंदर अन्य एप्लिकेशन भी जोड़ सकते हैं:

static const char* kTargetPackages[] = {  
    "com.whatsapp",  
    "com.whatsapp.w4b",  
    "org.thoughtcrime.securesms",  
    "org.telegram.messenger",  
    "org.telegram.messenger.web"  
};

फ़ाइल आउटपुट

  • सत्र निर्देशिका इंजेक्शन के समय audioserver में इस पथ के अंतर्गत बनाई जाती है: /data/local/tmp/voip/audioserver_session_<timestamp>/

  • फ़ाइलें पहले .tmp एक्सटेंशन के साथ बनाई जाती हैं, फिर ट्रैक रुकने पर उनका नाम बदल दिया जाता है:

    • अपलिंक (माइक) → <packageName>_<sampleRate>_<timestamp>.bc
    • डाउनलिंक (स्पीकर) → <packageName>_<sampleRate>_<timestamp>.ac
  • उदाहरण सत्र:

	/data/local/tmp/voip/audioserver_session_1725389200/
	├── com.whatsapp_48000_1725389201_123456.ac
	├── com.whatsapp_48000_1725389201_123789.bc
	

ऑफ़सेट्स

चूँकि लक्षित लाइब्रेरी stripped है और libaudioflinger.so में विधियाँ निर्यात (exported) नहीं हैं, इसलिए सफल हुकिंग के लिए हमें विधियों और अन्य संबंधित घटकों के सटीक ऑफ़सेट की आवश्यकता होती है।

हम उन ऑफ़सेट्स को IDA-PRO का उपयोग करके स्टैटिक विश्लेषण से या frida का उपयोग करके डायनामिक विश्लेषण से निकाल सकते हैं। ऑफ़सेट्स ज्ञात होने के बाद हम उन्हें offsets.h हेडर फ़ाइल के अंदर बदल सकते हैं।

आवश्यक ऑफ़सेट्स:
विधियाँ:
  1. AUDIOFLINGER_SETMODE_OFFSET
    • विधि: android::AudioFlinger::setMode(audio_mode_t)
    • मैंगल्ड नाम: _ZN7android12AudioFlinger7setModeE11audio_mode_t
  2. RECORDTRACK_GETNEXTBUFFER_OFFSET
    • विधि: android::AudioFlinger::RecordThread::RecordTrack::getNextBuffer(android::AudioBufferProvider::Buffer *)
    • मैंगल्ड नाम: _ZN7android12AudioFlinger12RecordThread11RecordTrack13getNextBufferEPNS_19AudioBufferProvider6BufferE
  3. TRACK_GETNEXTBUFFER_OFFSET
    • विधि: android::AudioFlinger::PlaybackThread::Track::getNextBuffer(android::AudioBufferProvider::Buffer *)
    • मैंगल्ड नाम: _ZN7android12AudioFlinger14PlaybackThread5Track13getNextBufferEPNS_19AudioBufferProvider6BufferE
  4. TRACK_STOP_OFFSET
    • विधि: android::AudioFlinger::PlaybackThread::Track::stop(void)
    • मैंगल्ड नाम: _ZN7android12AudioFlinger14PlaybackThread5Track4stopEv
  5. RECORDTRACK_STOP_OFFSET
    • विधि: android::AudioFlinger::RecordThread::RecordTrack::stop(void)
    • मैंगल्ड नाम: _ZN7android12AudioFlinger12RecordThread11RecordTrack4stopEv
अन्य ऑफ़सेट्स:
  1. SAMPLERATE_OFFSET
  2. UID_OFFSET
  3. ISOUT_OFFSET
  4. FORMAT_OFFSET
  5. CHANNELMASK_OFFSET
  6. ATTR_OFFSET
टूल डाउनलोड करें