2012-05-30 17 views
5

मैं आरएसएसआई या वाईफाई पैकेट से सिग्नल शक्ति प्राप्त करने की कोशिश कर रहा हूं। मैं 'वाईफाई जांच अनुरोध' से आरएसएसआई भी चाहता हूं (जब कोई वाईफ़ाई हॉटस्पॉट खोज रहा हो)।स्कैपी - वाईफाई पैकेट से आरएसएसआई को पुनर्प्राप्त करना

मैं इसे किस्मत लॉग से देखने में कामयाब रहा लेकिन यह सुनिश्चित करने के लिए कि यह संभव है - मैं हर समय किस्मत का उपयोग नहीं करना चाहता।

'पूर्णकालिक स्कैनिंग' के लिए मैं स्कैपी का उपयोग कर रहा हूं। क्या किसी को पता है कि मैं आरएसएसआई या सिग्नल शक्ति (डीबीएम में) को स्कैपी से घिरे पैकेट से कहां पा सकता हूं? मुझे नहीं पता कि पूरा पैकेट कैसे बनाया गया है - और वहां बहुत सारे 'हेक्स' मान हैं जिन्हें मैं नहीं जानता कि कैसे पार्स/व्याख्या करना है।

मैं दोनों इंटरफेस पर स्नीफिंग कर रहा हूं - wlan0 (किसी को मेरे हॉटस्पॉट से कनेक्ट होने पर पता लगाना), और mon.wlan0 (पता लगाना जब कोई हॉटस्पॉट खोज रहा है)। हार्डवेयर (वाईफाई कार्ड) का उपयोग मैं प्रिज्म चिपसेट (आईएसएल 3886) पर आधारित हूं। हालांकि किस्मत के साथ परीक्षण एथरोस (एआर 2413) और इंटेल iwl4965 पर चलाया गया था।

Edit1: http://trac.secdev.org/scapy/browser/scapy/layers/dot11.py लाइन 92:

जैसे मैं किसी भी तरह PrismHeader में संग्रहीत जानकारी का उपयोग करने की जरूरत है लगता है?

कोई भी इस जानकारी को दर्ज करने के बारे में जानता है? packet.show() और packet.show2() इस वर्ग/लेयर

EDIT2 से कुछ भी नहीं दिखाते:

अधिक खुदाई ऐसा लगता है इंटरफेस सिर्फ सही ढंग से सेट नहीं है उसके बाद और है कि यह क्यों है सभी आवश्यक शीर्षलेख एकत्र नहीं करता है। अगर मैं किस्मत को चलाने और उसके बाद Scapy साथ कि इंटरफ़ेस से पैकेट सूंघ पैकेट में अधिक जानकारी है:

###[ RadioTap dummy ]### 
    version= 0 
    pad= 0 
    len= 26 
    present= TSFT+Flags+Rate+Channel+dBm_AntSignal+Antenna+b14 
    notdecoded= '8`/\x08\x00\x00\x00\x00\x10\x02\x94\t\xa0\x00\xdb\x01\x00\x00' 
    ... 

अब मैं केवल किस्मत का उपयोग किए बिना सही ढंग से इंटरफ़ेस सेट करना होगा।

उत्तर

2

संक्षेप में प्रस्तुत करना: क्योंकि कुछ रास्ता है कि 'पर नजर रखने के मोड' स्थापित किया गया था (सभी नहीं हेडर पारित किए गए/स्निफर्स द्वारा पार्स) में गलत था

  • सिग्नल की शक्ति दिखाई नहीं देती थी। यह मॉनिटर इंटरफेस hostapd द्वारा बनाया गया था।

  • अब मैं इंटरफ़ोन पर मॉनिटर मोड सेट कर रहा हूं जिसमें एयरमोन-एनजी - टीसीपीडम्प, स्कैपी शो थीज़ अतिरिक्त हेडर हैं।

+0

गए किसी भी परिवर्तन? क्या आप आरएसएसआई मूल्य प्राप्त करने में सक्षम थे? – alandalusi

+4

हाँ मैं था। यह पैकेट के अधिसूचित हिस्से में 'छुपा' है। मैं इसे निकालने वाला हूं: 'sig_str = - (256-ord (packet.notdecoded [-4: -3]))' – kaczor1984

+0

@ kaczor1984 मैंने कोशिश की: 'sig_str = - (256-ord (packet.notdecoded [ -4: -3])) और मुझे मूल्य मिलते हैं -69, -79, -81 आदि। आप इन मूल्यों की व्याख्या कैसे करते हैं? – zengr

0

तथ्य यह है कि यह कहते हैं, "RadioTap" पता चलता है कि डिवाइस Radiotap headers, नहीं प्रिज्म हेडर आपूर्ति कर सकते हैं, भले ही यह एक प्रिज्म चिपसेट है। The p54 driver एक "सॉफ़्टमैक ड्राइवर" प्रतीत होता है, इस मामले में यह शायद रेडियोटैप हेडर की आपूर्ति करेगा; क्या आप पी 54 ड्राइवर या पुराने प्रिज्म 54 ड्राइवर का उपयोग कर रहे हैं?

4

यहां एक मूल्यवान स्कैपी एक्सटेंशन है जो वर्तमान में डीकोडेड फ़ील्ड के scapy.layers.dot11.Packet की पार्सिंग में सुधार करता है।

https://github.com/ivanlei/airodump-iv/blob/master/airoiv/scapy_ex.py

बस का उपयोग करें:

import scapy_ex 

और:

packet.show() 

वह ऐसा दिखाई देगा:

###[ 802.11 RadioTap ]### 
    version = 0 
    pad  = 0 
    RadioTap_len= 18 
    present = Flags+Rate+Channel+dBm_AntSignal+Antenna+b14 
    Flags  = 0 
    Rate  = 2 
    Channel = 1 
    Channel_flags= 160 
    dBm_AntSignal= -87 
    Antenna = 1 
    RX_Flags = 0 
+1

आप गिट रेपो को क्लोन करना और एयरोइव निर्देशिका से 'आयात scapy_ex' चलाने के लिए सबसे अच्छे हैं क्योंकि वहां अन्य निर्भर फ़ाइलों को केवल scapy_ex.py (उदा। Printer.py) द्वारा आवश्यक है। फिर यह अच्छी तरह से काम करता है। – Pierz

0

मैं इसी तरह की समस्या है, मैं सेट अप मॉनिटर मो de airm-ng के साथ और मैं tcpdump में डीबीएम स्तर देख सकता हूं लेकिन जब भी मैं sig_str = -(256-ord(packet.notdecoded[-4:-3])) आज़माता हूं तो मुझे -256 मिलता है क्योंकि लौटाया गया मान 0 में दर्ज नहीं किया जाता है। पैकेट संरचना इस तरह दिखती है।

version = 0 
pad  = 0 
len  = 36 
present = TSFT+Flags+Rate+Channel+dBm_AntSignal+b14+b29+Ext 
notdecoded= ' \x08\x00\x00\x00\x00\x00\x00\x1f\x02\xed\x07\x05 
....... 
1

किसी कारण से पैकेट संरचना बदल गई है। अब डीबीएम_एन्ट सिग्नल नोडेडोडेड में पहला तत्व है।

मैं इस समाधान के 100% निश्चित नहीं हूं लेकिन मैंने पहले तत्व तक पहुंचने के लिए sig_str = -(256 - ord(packet.notdecoded[-2:-1])) का उपयोग किया और मुझे dBm_AntSignal लगता है जो मान प्राप्त करते हैं।

मैं TP-Link MR3020 में एक्स्ट्रोट और एडवर्ड किबल निष्क्रिय वाईफ़ाई मॉनीटरिंग प्रोजेक्ट के साथ कुछ संशोधनों के साथ उपयोग कर रहा हूं।

मैं scapy_ex.py का उपयोग करें और मैं इस जानकारी थी:

802.11 RadioTap 

    version = 0 

    pad  = 0 

    RadioTap_len= 36 

    present = dBm_AntSignal+Lock_Quality+b22+b24+b25+b26+b27+b29 

    dBm_AntSignal= 32 

    Lock_Quality= 8 
संबंधित मुद्दे