
डिवाइस की पसंदीदा नेटवर्क सूची से SSIDs को कैप्चर और प्रदर्शित करने के लिए एक रिकॉनिसेंस टूल।

प्रिफर्ड नेटवर्क लिस्ट स्निफर (PNLS) एक रेड टीम वाई-फाई ऑडिटिंग टूल है जिसमें एक सरल वेब इंटरफेस है जो डिवाइस की प्रिफर्ड नेटवर्क लिस्ट (PNL)[^2] से SSIDs[^1] को इंटरसेप्ट करने में सक्षम है। यह आस-पास के क्षेत्र में प्रोब रिक्वेस्ट को स्निफ करके प्राप्त किया जाता है, जिन्हें बाद में SSID और अन्य जानकारी के लिए पार्स किया जाता है और अंततः वेब UI पर प्रसारित किया जाता है। इस परियोजना का प्राथमिक उद्देश्य 802.11 प्रोब रिक्वेस्ट और उनके द्वारा प्रेषित डेटा से जुड़े गोपनीयता जोखिमों की जांच करना था।
चित्र 1: PNLS सिस्टम अवलोकन
[!WARNING] इस परियोजना की सभी सामग्री केवल सुरक्षा अनुसंधान उद्देश्यों के लिए है।
[!NOTE]
यह परियोजना वाई-फाई नेटवर्क में गोपनीयता संरक्षण पर मेरे चल रहे शोध का हिस्सा है।
PNLS पर चल रहे कार्य की निगरानी के लिए, परियोजना का बोर्ड देखें।
इस परियोजना को डुप्लिकेट और तैनात करने के लिए आपको हार्डवेयर और सॉफ्टवेयर दोनों घटकों की आवश्यकता होगी। एक बार जब आपका कार्य वातावरण तैयार हो जाए, तो सेटअप अनुभाग पर जाएं।
sudo airmon-ng start wlan0 [2]।[!NOTE]
Kali इमेज Re4son के कर्नेल का उपयोग करती है, जिसमें बाहरी वाई-फाई कार्ड के लिए ड्राइवर और RPi 3 और 4 [3] पर बिल्ट-इन वायरलेस कार्ड के लिए Nexmon फर्मवेयर शामिल है।
चित्र 2: PNLS एक RPi 4 पर बाहरी एंटीना और बैटरी बैंक के साथ चल रहा है
चित्र 3: PNLS एक RPi 4 पर AWUS036ACS एंटीना वाले केस के साथ चल रहा है
चित्र 4: PNLS एक RPi 4 पर AWUS036ACM एंटीना के साथ चल रहा है
यदि आप Docker का उपयोग नहीं करना चाहते हैं, तो Docker के बिना सेटअप पर जाएं।
एक डेवलपमेंट इंस्टेंस जल्दी से सेटअप करें:
# First clone this repo.
git clone https://github.com/AleksaMCode/Preferred-Network-List-Sniffer.git
# Move to the project root folder.
cd Preferred-Network-List-Sniffer
# Build backend and frontend image.
docker compose build
# Bring up both the backend and the frontend server.
docker compose up
# Move into the sniffer folder.
cd sniffer
# Run the Sniffer service.
sudo python3 sniffer.py
वर्तमान में, मल्टी-प्लेटफ़ॉर्म इमेज उपलब्ध नहीं हैं, और परियोजना केवल ARM64v8 आर्किटेक्चर का समर्थन करती है। नवीनतम पूर्व-निर्मित इमेज GitHub कंटेनर रजिस्ट्री से डाउनलोड करें और उन्हें स्थानीय रूप से चलाएं।
# First clone this repo.
git clone https://github.com/AleksaMCode/Preferred-Network-List-Sniffer.git
# Move to the project root folder.
cd Preferred-Network-List-Sniffer
# Download the prebuild images.
docker pull ghcr.io/aleksamcode/pnls-backend-ghcr:latest
docker pull ghcr.io/aleksamcode/pnls-frontend-ghcr:latest
# Bring up both the backend and the frontend server.
docker compose up
# Move into the sniffer folder.
cd sniffer
# Run the Sniffer service.
sudo python3 sniffer.py
बैकएंड: ASGI और Redis सर्वर शुरू करने और आवश्यक सेवाओं को चलाने के लिए, ये निर्देश देखें।
फ्रंटएंड: React सर्वर चलाने के लिए, ये निर्देश देखें।
जब सब कुछ "मैन्युअल रूप से" चलाया गया था, तब का एक स्क्रीनशॉट यहाँ है:
चित्र 5: PNLS स्क्रीनशॉट