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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Snoopy — Snoopy: एक वितरित ट्रैकिंग और डेटा अवरोधन फ्रेमवर्क | Kitploit
उपकरण/GitHubGitHub/sensepost/snoopy
OSINT (खुला स्रोत खुफिया)टोहीवाई-फाई ऑडिटिंगनेटवर्क मैपिंगफिशिंगमालवेयर विश्लेषणसामाजिक इंजीनियरिंगरेड टीमिंग
GitHubsensepost/snoopy

Snoopy

Snoopy: एक वितरित ट्रैकिंग और डेटा अवरोधन फ्रेमवर्क

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

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें

root@kitploit:~
|       ||  |  | ||       ||       ||       ||  | |  |
|  _____||   |_| ||   _   ||   _   ||    _  ||  |_|  |
| |_____ |       ||  | |  ||  | |  ||   |_| ||       |
|_____  ||  _    ||  |_|  ||  |_|  ||    ___||_     _|
 _____| || | |   ||       ||       ||   |      |   |  
|_______||_|  |__||_______||_______||___|      |___|
                                               V0.1  
"एमी, तकनीक अपने आप में न अच्छी है न बुरी। यह इस पर निर्भर करता है कि इसका उपयोग कैसे किया जाता है। जैसे डेथ रे।"
-प्रोफेसर फार्न्सवर्थ

Snoopy में आपका स्वागत है; यह एक वितरित (distributed) ट्रैकिंग और प्रोफाइलिंग फ्रेमवर्क है। Snoopy अभी विकासाधीन है, इसलिए कृपया बेझिझक सुझाव और/या सुधार भेजें। यह दस्तावेज़ बुनियादी उपयोग की रूपरेखा प्रस्तुत करता है। पृष्ठभूमि को थोड़ा और समझने के लिए निम्नलिखित देखें:

  • Snoopy: एक वितरित ट्रैकिंग और प्रोफाइलिंग फ्रेमवर्क
  • ZaCon4 - Glenn Wilkinson - आतंकवाद, ट्रैकिंग, गोपनीयता और मानवीय अंतःक्रियाएँ
  1. परिचय और अवलोकन ============================= Snoopy चार घटकों से मिलकर बना है:
  • क्लाइंट सॉफ़्टवेयर (उर्फ Snoopy Drone सॉफ़्टवेयर)
  • सर्वर सॉफ़्टवेयर
  • वेब इंटरफ़ेस
  • Maltego ट्रांसफ़ॉर्म

a. Snoopy ड्रोन

क्लाइंट-साइड सॉफ़्टवेयर उन उपकरणों पर चलता है जिन्हें हम "ड्रोन" कहते हैं। एक ड्रोन कोई भी Linux-आधारित डिवाइस हो सकता है जिसमें WiFi इंटरफ़ेस (इंजेक्शन ड्राइवरों सहित) और आउटबाउंड इंटरनेट कनेक्टिविटी हो। Snoopy का परीक्षण Nokia N900 और BackTrack चलाने वाले लैपटॉप पर किया गया है। ड्रोन निम्नलिखित दो कार्य करते हैं:

  1. आस-पास के वायरलेस उपकरणों से Probe SSID एकत्र करना
  2. आस-पास के वायरलेस उपकरणों के कनेक्शन के लिए एक Rogue Access Point उपलब्ध कराना

एकत्रित प्रोब अनुरोध (जैसे Bob का iPhone BTHomeHub-4123 खोज रहा है) नियमित अंतराल पर Snoopy सर्वर पर अपलोड किए जाते हैं। Rogue AP से जुड़ने वाले सभी उपकरणों की इंटरनेट सेवा Snoopy सर्वर के माध्यम से होती है।

b. सर्वर सॉफ़्टवेयर

सर्वर सभी प्रोब अनुरोधों को एक डेटाबेस में दर्ज करता है, और GPS निर्देशांक निर्धारित करने के लिए Wigle तथा सड़क पते (और स्ट्रीट व्यू तस्वीरें) निर्धारित करने के लिए Google Maps का उपयोग करता है। इसका मतलब है कि यदि आप अपने घर के नेटवर्क के लिए प्रोबिंग कर रहे हैं, तो मुझे आपके घर की तस्वीर मिल सकती है।

प्रत्येक ड्रोन OpenVPN के माध्यम से सर्वर से जुड़ता है, और उसका अपना सबनेट होता है। जुड़े हुए क्लाइंट ड्रोन से एक IP पता प्राप्त करते हैं, और उसके माध्यम से ट्रैफ़िक रूट करते हैं। इसका मतलब है कि सर्वर पर हम क्लाइंट IP पतों (और इसलिए MAC पतों) का मिलान इंटरनेट गतिविधि से कर सकते हैं।

सर्वर पर निम्नलिखित होता है:

  • इंटरनेट ट्रैफ़िक को Squid के माध्यम से पारदर्शी रूप से प्रॉक्सी किया जाता है, जो सभी अनुरोधों को MySQL में लॉग करता है
  • SSLStrip HTTPS के बिना वेबपेजों को फिर से लिखने का प्रयास करता है
  • mitmproxy.py वेब पेजों में मनमाना इंजेक्शन की अनुमति देता है
  • सोशल मीडिया डेटा निकालने के लिए विभिन्न स्क्रिप्ट चलती हैं (जैसे Facebook प्रोफ़ाइल खींचना)

नेटवर्क आरेख इस प्रकार है:

root@kitploit:~
     Client1                        Drone1                                  Snoopy Server
    +----------+            +-----------------------+               +-----------------------+
    |    wlan0-|<---WiFi--->|-at0                   |               |                   eth0|<-squid-sslstrip-mitmproxy->Internet
    |          |    |       | 10.2.0.1              |               |            11.22.33.44|    |
    | dhclient |    |       |                       |               |                       |    Traffic inspection
    |          |    |       |                  tap0-|<-openvpn----->|-tap0                  |    Social media analysis
    +----------+    |       |          192.168.42.2 |           +--/| 192.168.42.1          |
    10.2.0.2        |       +-----------------------+           |   +-----------------------+
                    |                                           |
                    |                                           | route 10.2.0.0 via 192.168.42.2
                    |                                           | route 10.3.0.0 via 192.168.42.3
      Client2       |                                           |
    +----------+    |                                           |
    |    wlan0-|<---+                                           |
    |          |                                                |
    | dhclient |                                                |
    |          |                                                |
    +----------+                                                |
    10.2.0.3                                                    |
                                                                |
                                                                |
                                                                |
      Client3                       Drone2                      |      
    +----------+            +-----------------------+           |
    |    wlan0-|<---WiFi--->|-at0                   |           |
    |          |    |       | 10.3.0.1              |           |
    | dhclient |    |       |                       |           |
    |          |    |       |                  tap0-|<-openvpn--+
    +----------+    |       |          192.168.42.3 |       
    10.3.0.2        |       +-----------------------+       
                    |
                    |       
                    |
      Client4       |                                       
    +----------+    |                                       
    |    wlan0-|<---+                                       
    |          |                                            
    | dhclient |                                            
    |          |                                            
    +----------+
    10.3.0.3

c. वेब इंटरफ़ेस

Walter ने Snoopy के लिए एक वेब इंटरफ़ेस लिखा है। इसे http://your-snoopy-server.com:5000/ से एक्सेस किया जा सकता है।

d. Maltego ट्रांसफ़ॉर्म

एकत्रित डेटा को ग्राफ़िकल रूप से एक्सप्लोर करने के लिए कई Maltego ट्रांसफ़ॉर्म मौजूद हैं (अधिक जानकारी के लिए नीचे देखें)।

  1. स्थापना ================ सर्वर स्थापना सीधी-सादी होनी चाहिए। इसका परीक्षण केवल Ubuntu 12.04 LTS 32bit के स्टॉक इंस्टॉलेशन पर किया गया है। कई सर्वर घटकों में परिवर्तन किए जाते हैं, इसलिए अत्यधिक अनुशंसा की जाती है कि इंस्टॉल स्क्रिप्ट को बेस इंस्टॉलेशन पर चलाएँ, और उस मशीन पर बहुत कुछ और न चलाएँ (यदि कुछ भी हो)। संदेह होने पर, install.sh फ़ाइल को देखें और परिवर्तन मैन्युअल रूप से करें। अन्यथा, बस इंस्टालर को (./install.sh) चलाएँ।

  2. उपयोग ======== स्थापना समाप्त होने के बाद आपको सर्वर मेनू लोड करने के लिए बस 'snoopy' टाइप करने में सक्षम होना चाहिए। यदि नहीं (या संदेह हो) तो स्थापना चरण के दौरान बनाए गए उपयोगकर्ता की होम डायरेक्टरी में जाएँ। 'snoopy/server/' डायरेक्टरी के अंदर 'snoopy.sh' नामक एक फ़ाइल है जिसे आप चला सकते हैं। नीचे मेनू दिया गया है:

    root@kitploit:~
     +---------------------------------------------------------------+
     |                    Welcome to Snoopy V0.1                     |
     |                        SERVER SIDE                            |
     |                                                               |
     |              SensePost Information Security                   |
     |         [email protected] / www.sensepost.com            |
     +---------------------------------------------------------------+
     Date: Thu Nov  1 16:37:08 CET 2012
     Snoopy Server Status: Stopped
     Connected Drones: 0
     Wigle User: setYourWigleAccount
    
     Would you like to:
     [1] (Re)Start Snoopy server components
     [2] Stop Snoopy server components
     [3] Manage drone configuration packs
     [4] Configure server options
     [5] Set web traffic injection string
     [6] Observe logs
     [X] Exit
    
     [?] Help
    
  3. ड्रोन पैक बनाना मेनू में विकल्प [3] आपको अपने ड्रोन उपकरणों के लिए क्लाइंट-साइड 'पैक' बनाने की अनुमति देगा। प्रत्येक ड्रोन को अपनी OpenVPN और SSH कुंजियाँ, DHCP रेंज और रूटिंग टेबल मिलती हैं। आपको प्रत्येक ड्रोन डिवाइस के लिए एक डाउनलोड URL प्रदान किया जाएगा। सुनिश्चित करें कि आपके सर्वर और ड्रोन का समय सही से सेट है, अन्यथा VPN कनेक्शन स्थापित नहीं होगा।

  4. ड्रोन पर Snoopy स्थापित करना और चलाना आपके पास अधिकतम 100 ड्रोन हो सकते हैं (यदि आप और चाहते हैं, तो स्रोत देखें या मुझे ईमेल करें, वास्तव में कोई सीमा नहीं है)। स्थापना में पिछले चरण से कॉन्फ़िगरेशन पैक डाउनलोड करना और संबंधित सेटअप स्क्रिप्ट चलाना शामिल है। Nokia N900 के लिए आपके डेस्कटॉप पर एक आइकन रखा जाएगा। उदाहरण:

प्रत्येक Snoopy एंटिटी पर विभिन्न ट्रांसफ़ॉर्म लागू किए जा सकते हैं। आरंभ करने के लिए 'Snoopy' एंटिटी को अपने ग्राफ़ पर खींचें। यदि आप एंटिटी गुणों में प्रारंभ या समाप्ति तिथि निर्दिष्ट नहीं करते हैं, तो यह डिफ़ॉल्ट रूप से पिछले 5 मिनट के परिणाम लाएगा (यह मान सर्वर कॉन्फ़िगरेशन मेनू में बदला जा सकता है)।

Snoopy मशीनें आपको ट्रांसफ़ॉर्म को स्वचालित रूप से अनुक्रमित करने और आवश्यकताओं के आधार पर नोड्स को फ़िल्टर/हटाने की अनुमति देती हैं। स्रोत/टिप्पणियाँ यह रेखांकित करने के लिए पर्याप्त होनी चाहिए कि वे कैसे काम करते हैं।

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

  2. सुरक्षा संबंधी विचार ========================== प्रत्येक 'Drone पैक' में OpenVPN और SSH कुंजियाँ होती हैं। यदि कोई ड्रोन (चोरी या अन्यथा) से समझौता किया जाता है, तो यह आपके सर्वर के लिए सुरक्षा जोखिम पैदा कर सकता है। यह अत्यधिक अनुशंसित है कि आपका Snoopy सर्वर समर्पित रूप से अपने उद्देश्य के लिए चले। सर्वर पर बनाए गए उपयोगकर्ता के पास थोड़ी अतिरिक्त सुरक्षा के लिए .ssh/authorized_hosts फ़ाइल में निम्नलिखित स्वचालित रूप से जोड़ा जाता है:

    "no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty,command="/usr/bin/rsync ${SSH_ORIGINAL_COMMAND#* }""

  3. भविष्य का कार्य =============== अभी भी बहुत सी चीज़ें की जानी/जोड़ी जानी बाकी हैं। यह संस्करण काफी हद तक PoC है।

  • ToR समर्थन एकीकृत करें
  • अन्य ट्रैफ़िक कैप्चर (जैसे mDNS) आसानी से जोड़ने के लिए फ़िल्टर जोड़ें
  • aGPS हैकिंग शामिल करें (चूँकि हम पहले से पीड़ितों के DNS को नियंत्रित करते हैं)
  • Evilgrade
  • ब्लूटूथ/GSM ट्रैकिंग
  • WiFi डी-ऑथ / 3G जैमिंग
  • चेहरे की पहचान वाला कैमरा
  • चुराई गई कुकी Firefox प्लग-इन लोडर
  • डेटा अपलोड प्रक्रिया बदलें (वर्तमान में सभी ड्रोन एक ही उपयोगकर्ता के साथ rsync करते हैं)।
  1. ज्ञात समस्याएँ / बग्स ======================
  • असामान्य वर्णों वाले SSID परेशानी पैदा कर सकते हैं
  • वर्तमान में सभी प्रोब अनुरोध कैप्चर कर एक डेटाबेस में दर्ज किए जाते हैं। व्यस्त क्षेत्रों में डेटाबेस बहुत जल्दी बड़ा हो जाता है। डेटाबेस को सामान्यीकृत (normalized) किया जाना चाहिए, और यह निर्णय लिया जाना चाहिए कि सभी प्रोब रखने हैं या नहीं।
  • मूल रूप से प्रोब स्निफिंग Scapy के साथ की जाती थी, लेकिन इसे tshark एक-लाइनर से बदल दिया गया (क्योंकि Scapy 802.11 सिग्नल स्ट्रेंथ पैरामीटर नहीं पढ़ सकता)। N900 पर उपलब्ध पुराने tshark संस्करण के साथ पाया गया एक दोष यह है कि यह epoch समय को आउटपुट नहीं करता, केवल स्थानीय समय देता है। यह टाइमज़ोन के साथ बुरी तरह गड़बड़ करता है। यदि आप N900 के लिए एक नया tshark संकलित कर सकें तो बहुत अच्छा होगा (PwnieExpress, आपकी ओर देख रहे हैं)। मुद्दा यह है कि अभी के लिए सुनिश्चित करें कि आपके सर्वर/ड्रोन सभी एक ही टाइमज़ोन में हों।
  1. संपर्क ============== कोड Glenn द्वारा लिखा गया था (Walter के वेब इंटरफ़ेस को छोड़कर)। आप उन्हें [email protected] पर ईमेल कर सकते हैं या bug^H^H^H उन्हें Twitter पर फॉलो करें: @glennzw। Glenn एक डेवलपर नहीं हैं, और उनके खराब कोड के लिए क्षमा चाहते हैं। वह एक हैकर हैं, और यह उपकरण उन्हें आपको हैक करने देता है।

आभार

निम्नलिखित से सहायता/सलाह/इनपुट के लिए धन्यवाद:

  • SensePost टीम (काम करने के लिए बढ़िया जगह)।
  • DocScrutinizer, और N900 सहायता के लिए Freenode पर बाकी #maemo गिरोह।

परिशिष्ट A1. हमले के परिदृश्य (समर्थित या प्रोत्साहित नहीं)

जासूस को पकड़ना

प्र. हम जानते हैं कि एक विदेशी जासूस 11 नवंबर को Heathrow पहुँचता है, लेकिन हम नहीं जानते कि कब या किस उड़ान से। हमारी खुफिया जानकारी बताती है कि पहुँचने के बाद वह Hilton में रुकेगा, और 14 तारीख को Luton हवाई अड्डे से एक उड़ान पकड़ेगा (फिर से हम नहीं जानते कि किस समय या किस गंतव्य के लिए)। वह भेस बदलने में माहिर है। हम उसकी पहचान कैसे कर सकते हैं?

उ. Heathrow, Hilton और Luton पर Snoopy ड्रोन तैनात करें। 'CommonLocation' Maltego ट्रांसफ़ॉर्म उन तीनों स्थानों पर मौजूद सभी डिवाइसों का प्रतिच्छेदन नोट करेगा। उम्मीद है कि केवल एक परिणाम मिलेगा - हमारा मानव लक्ष्य। एक बार पता चलने पर, हम Google मानचित्र और स्ट्रीट व्यू तस्वीरों की जाँच कर सकते हैं कि हमारा जासूस कहाँ यात्रा कर चुका है। यदि उसके डिवाइस को Snoopy रोग एक्सेस प्वाइंट से कनेक्ट करने के लिए चकमा दिया जाए (जैसे उसका Facebook, Twitter, या ईमेल), तो उसकी पहचान उजागर हो सकती है।

अवांछित व्यक्तियों की पहचान

Snoopy से उन सभी व्यक्तियों को नोट करने के लिए कहें जो कुछ sandy^W अवांछित देशों में किसी WiFi स्पॉट से जुड़े हैं।

ग्राहकों को ट्रैक करना

अपने 10 डिपार्टमेंट स्टोर में Snoopy तैनात करें। लोगों की आवाजाही, बार-बार आने वाले ग्राहकों और ग्राहकों के प्रकारों पर ध्यान दें।

मैलवेयर वितरण

क्लाइंट डिवाइसों पर कब्ज़ा करने और मैलवेयर स्थापित करने के लिए दुर्भावनापूर्ण कोड इंजेक्ट करें। रूटिंग टेबल के कारण, एक्सप्लॉइट सीधे सर्वर से जुड़े पीड़ितों पर चलाए जा सकते हैं।

लंदन अंडरग्राउंड

TFL हर लंदन अंडरग्राउंड स्टेशन में एक Snoopy ड्रोन तैनात कर सकता है। वे लोगों की आवाजाही पर नज़र रख सकते हैं, व्यस्त और कम भीड़ वाले समय/दिनों को नोट कर सकते हैं, और उसी के अनुसार स्टाफ नियुक्त/कम कर सकते हैं।

बड़े पैमाने पर मानव ट्रैकिंग

पूरे लंदन में 500 Snoopy ड्रोन तैनात करें। जब लोग ड्रोन के पास से गुजरते हैं तो उनकी आवाजाही पर नज़र रखें। हफ्तों/महीनों में लागू करने पर दिलचस्प मानव आवाजाही पैटर्न निश्चित रूप से प्रकट होंगे।


परिशिष्ट A2. हार्डवेयर नोट्स

Linux-आधारित डेस्कटॉप/लैपटॉप के लिए, Alfa AWUS036H कार्ड औसत प्रदर्शन करता है। एक अधिक विश्वसनीय कार्ड Ubiquity SR-71 है। इंजेक्शन ड्राइवर समर्थन के संदर्भ में आपके लिए क्या काम करता है/नहीं करता है, इस पर कोई भी प्रतिक्रिया सराहनीय होगी।

N900 के लिए, आप देखेंगे कि इंजेक्शन ड्राइवरों को लोड करने से बैटरी जीवन गंभीर रूप से कम हो जाता है। TecNet 6600mAh बैटरी पैक ने परीक्षण में लगभग 6-8 घंटे दिए। हालाँकि, N900 को किसी भी बैटरी पैक में प्लग करने के लिए आपको एक एडेप्टर की आवश्यकता होगी। GPS पोलिंग आवृत्ति को कम करने (या अक्षम करने) से भी बैटरी जीवन बेहतर रहेगा।

अपने N900 को USB के माध्यम से लैपटॉप से जोड़ने (SSH के प्रयोजन के लिए) के सुझाव यहाँ मिल सकते हैं।

मैं फ़िलहाल RaspberryPi, Alfa R36 mini AP और SheevaPlug पर परीक्षण कर रहा हूँ। परिणाम आगे आएंगे।


परिशिष्ट A3. SNOOPY MALTEGO स्क्रिप्टिंग

एकत्रित डेटा को एक्सप्लोर करने के लिए आप अपने स्वयं के Maltego ट्रांसफ़ॉर्म बना सकते हैं। आपूर्ति किए गए ट्रांसफ़ॉर्म अधिकतर यह प्रदर्शित करने के लिए हैं कि क्या किया जा सकता है। स्रोत कोड देखें, और यह पढ़ें:

  • http://www.paterva.com/web6/documentation/developer.php
  • http://www.paterva.com/web6/documentation/developer-tds.php

यदि आपके पास कोई प्रश्न हैं तो [email protected] से संपर्क करें (या शानदार Maltego वालों से पूछें)।


परिशिष्ट A4. SNOOPY वेब इंटरफ़ेस स्क्रिप्टिंग

परिचय

वेब यूआई कोड इस माध्यम से सुलभ है: ~user/snoopy/server/bin/snoopy/src/snoopy/

आवश्यकताएँ (पहले से स्थापित)

Python पैकेज

  • Beaker
  • cryptacular
  • Flask
  • MySQLdb
  • SQLAlchemy

प्लग-इन

प्लग-इन दो भागों से मिलकर बने होते हैं:

  • बैक-एंड (डेटा प्रदान करने वाला) भाग, Python में लिखा गया
  • फ्रंट-एंड (प्रदर्शित करने वाला) भाग, JavaScript में लिखा गया (वैकल्पिक)

बैक-एंड

एक प्लग-इन एक callable है जिसे Snoopy अनुप्रयोग द्वारा गतिशील रूप से लोड किया जाता है। एक उदाहरण से शुरू करते हैं:

root@kitploit:~
from snoopy import db, pluginregistry

@pluginregistry.add('client-data', 'ssidlist', 'SSID List', js='/static/js/ssidlist.js')
def ssid_list(mac):
    with db.SessionCtx() as session:
        query = session.query(
            distinct(db.Probe.probe_ssid) # SELECT DISTINCT probe_ssid FROM probes
        ).filter_by(
            device_mac=mac                # WHERE device_mac=$mac
        ).order_by(
            db.Probe.probe_ssid           # ORDER BY probe_ssid
        )
        return query.all()

अब चरण-दर-चरण समझते हैं...

root@kitploit:~
from snoopy import db, pluginregistry

Snoopy डेटाबेस तक पहुँचने के लिए हमें db चाहिए और अपने प्लग-इन को पंजीकृत करने के लिए pluginregistry चाहिए।

root@kitploit:~
@pluginregistry.add('client-data', 'ssidlist', 'SSID List', js='/static/js/ssidlist.js')

इस प्रकार हम अपने प्लग-इन (जो कोई भी callable हो सकता है) को पंजीकृत करते हैं। पहला तर्क उस समूह का नाम निर्दिष्ट करता है जिसमें यह प्लग-इन आता है। हमने client-data निर्दिष्ट किया है, क्योंकि यह प्लग-इन एक MAC पता स्वीकार करता है और क्लाइंट डेटा विंडो में प्रदर्शित किए जाने वाले डेटा को लौटाता है। client-data के अलावा, session-data नामक प्लग-इन का समूह भी है जो प्रॉक्सिमिटी सत्रों पर कार्य करता है। दूसरा पैरामीटर प्लग-इन का नाम है। यह नाम केवल आंतरिक उपयोग के लिए है और JSON-अनुकूल होना चाहिए। तीसरा पैरामीटर प्लग-इन शीर्षक है। मूल रूप से यह नाम के समान है, लेकिन शीर्षक GUI में प्रदर्शित होता है। अधिक विशेष रूप से, यह क्लाइंट डेटा विंडो में डेटा अनुभाग का शीर्षक है।

शीर्षक के बाद के सभी कीवर्ड तर्क विकल्पों के रूप में सहेजे जाते हैं। जबकि प्लग-इन प्रणाली को किसी भी विकल्प की आवश्यकता नहीं होती, Snoopy js विकल्प का समर्थन करता है। यह विकल्प इस प्लग-इन के JavaScript घटक का URL (ब्राउज़र की ओर से, न कि Snoopy/सर्वर की ओर से) निर्दिष्ट करता है।

root@kitploit:~
def ssid_list(mac):

यह प्लग-इन एक साधारण फ़ंक्शन है। यह client-data प्लग-इन की परिभाषा के अनुसार, MAC पता स्ट्रिंग स्वीकार करता है। callable का नाम उपयोग नहीं किया जाता है।इस उदाहरण प्लग-इन का मुख्य भाग केवल एक SQLAlchemy क्वेरी निष्पादित करता है जो मूल रूप से SELECT DISTINCT probe_ssid FROM probes WHERE device_mac=$mac करती है और परिणामों को एक सूची के रूप में लौटाती है। प्लग-इन के लौटाए गए मान आमतौर पर JSON प्रतिक्रिया के भाग के रूप में जोड़े जाते हैं। इसलिए परिणामों की एक सीमा यह है कि इसे JSON-अनुकूल होना चाहिए (जैसा कि Flask के jsonify() फ़ंक्शन द्वारा समर्थित है)।

इतना ही सरल!

फ्रंट-एंड

क्लाइंट डेटा के लिए फ्रंट-एंड प्लग-इन को क्लाइंट डेटा हैंडलर कहा जाता है। उन्हें Snoopy.registerPlugin(sectionName, dataHandler) के माध्यम से पंजीकृत किया जाता है फ़ंक्शन। sectionName उस डेटा अनुभाग का नाम है जिसे डेटा हैंडलर संभालना चाहता है। यह नाम उस बैक-एंड प्लग-इन नाम के समान है जिसने डेटा उत्पन्न किया। dataHandler निम्नलिखित हस्ताक्षर वाला एक फ़ंक्शन होना चाहिए: function($section, clientData) {...}। $section उस div तत्व का एक jQuery ऑब्जेक्ट है जहां डेटा हैंडलर डेटा प्रदर्शित कर सकता है या परिवर्तन कर सकता है। क्लाइंट डेटा (बैक-एंड प्लग-इन द्वारा उत्पन्न) clientData पैरामीटर में दिया गया है।

चूंकि डेटा हैंडलर का एकमात्र अनुमत आउटपुट दिए गए div में परिवर्तन है ($section), इसलिए किसी रिटर्न मान की आवश्यकता नहीं है।

टूल डाउनलोड करें
root@kitploit:~
 haxor@drone001# wget http://snoopy-server.com/secretdir/drone001.tar.gz
 haxor@drone001# tar xzvf drone001.tar.gz
 haxor@drone001# cd snoopy && ./setup_n900.sh
  • SSID स्थान खोजना www.wigle.net पर एक खाता बनाएँ, और 'Configure server options' के माध्यम से अपनी क्रेडेंशियल्स सेट करें।

  • वेब इंटरफ़ेस आप वेब इंटरफ़ेस को http://your-snoopy-server:5000/ के माध्यम से एक्सेस कर सकते हैं। डेटा को ट्रैवर्स करने और प्रदर्शित करने के लिए आप अपने स्वयं के प्लग-इन लिख सकते हैं। Walter ने इसे आपके लिए आसान बना दिया है (इस दस्तावेज़ का परिशिष्ट देखें)।

  • Maltego के साथ डेटा एक्सप्लोर करना Snoopy सर्वर मेनू में 'Configure Server Options' > 'Maltego' पर जाएँ। यहाँ आपको Snoopy एंटिटी, मशीन और ट्रांसफ़ॉर्म के URL डाउनलोड करने के लिए दिखाई देंगे। Maltego ट्रांसफ़ॉर्म का उपयोग करने के लिए आपको यह करना होगा:

    • Maltego में Snoopy एंटिटी जोड़ें
    • http://cetas.paterva.com/TDS/ पर एक खाता बनाएँ
    • cetas.paterva.com/TDS/ में लॉगिन करें
    • cetas.paterva.com/TDS/ पर एक सीड (seed) बनाएँ
    • बनाए गए सीड में ट्रांसफ़ॉर्म URL जोड़ें
    • Maltego में सीड जोड़ें (Manage > Discover Transforms (Advanced)
    • नाम 'Snoopy' और सीड URL के रूप में अपना सीड दर्ज करें
    • मशीन अनुभाग में Snoopy मशीनें जोड़ें