
पैदल Wi-Fi सुरक्षा जाँचों को लूप में करने के लिए Bash टूल, जिसमें साक्ष्य रिपोर्टें शामिल हैं। (पुनः आविष्कृत wifi WarDriving)
CyclePatrol एक Bash स्क्रिप्ट, cp.sh है। यह टर्मिनल के लिए एक Wi-Fi सुरक्षा मूल्यांकन उपकरण है।
यह Linux और Android (Kali NetHunter) पर चलता है। इसे root की आवश्यकता होती है।
उपकरण एक लूप में चलता है। प्रत्येक राउंड में यह:
केवल अधिकृत उपयोग। CyclePatrol सक्रिय वायरलेस हमले चलाता है। इसका उपयोग केवल उन नेटवर्क पर करें जिनके आप स्वामी हैं या जिनका परीक्षण करने के लिए आपके पास लिखित अनुमति है।
यह दस्तावेज़ स्रोत कोड से लिखा गया है। यह नेटवर्क पर हमला करने का तरीका नहीं सिखाता। यह बताता है कि उपकरण कैसे बनाया गया है, डेटा कैसे प्रवाहित होता है, और सुरक्षा लॉजिक कहाँ निवास करता है।
| आइटम | मान | स्रोत |
|---|---|---|
| उपकरण का नाम | CyclePatrol | TOOL_NAME |
| संस्करण | 1.6 | VERSION |
| SAR / रिपोर्ट संस्करण | 1 / 5 | SAR_VERSION / REPORT_VERSION |
| भाषा | Bash 5+ | स्क्रिप्ट हेडर |
| विशेषाधिकार | root आवश्यक | run_precheck |
| डिफ़ॉल्ट इंटरफ़ेस | wlan2 | DEF_IFACE |
| डिफ़ॉल्ट लॉग डिर | /sdcard/Download/wifi | DEF_LOG_DIR |
| ट्रैक की गई फ़ाइलें | cp.sh, vendor/oui.json, vendor/vendors.json, README.md, LICENSE, docs/ | रेपो रूट |
| कॉन्फ़िग | केवल पर्यावरण चर + CLI फ़्लैग | main |
# 1. get the code
git clone https://github.com/buybitart/cyclepatrol
cd cyclepatrol
# 2. make it runnable
chmod +x cp.sh
# 3. start (root required)
sudo ./cp.sh
सहायता और पूरी विकल्प सूची:
./cp.sh --help
flowchart TD
M[main parse CLI] --> AI[auto_install_deps apt]
AI --> PC[run_precheck validate_env root iface tmp dirs allowlists]
PC --> RC{recon mode?}
RC -- "--recon" --> RE[run_recon airodump-ng] --> RPT1[report_recon_*.html] --> END1[exit]
RC -- default --> R0[run_recon once at start]
R0 --> LOOP[run_scan_loop]
LOOP --> MAC[stealth MAC rotate]
MAC --> SCAN[scan_band 2.4 / 5 / 6E via iw scan]
SCAN --> PARSE[parse_scan awk -> targets]
PARSE --> PT[process_target per AP, up to MAX_TARGETS]
PT --> REP[make_report report_*.html]
REP --> SLEEP[sleep COOLDOWN] --> LOOP
विवरण के लिए docs/architecture.md और docs/data-flow.md देखें।
| घटक | फ़ंक्शन (उदाहरण) | कार्य |
|---|---|---|
| स्टार्टअप / कॉन्फ़िग | main, validate_env, run_precheck, auto_install_deps | फ़्लैग पार्स करना, root + इंटरफ़ेस + टूल जाँचना, अस्थायी डायरेक्टरी बनाना |
| इंटरफ़ेस नियंत्रण | ensure_mode, iface_set_type, iface_set_channel, iface_do_scan | मॉनिटर/मैनेज्ड मोड, चैनल, iw स्कैन |
| स्टेल्थ | stealth_mac_rotate, stealth_gen_mac, stealth_wps_id_block | रैंडम MAC, रैंडम WPS UUID |
| स्कैन + पार्स | scan_band, parse_scan | iw scan आउटपुट एकत्र करना, बीकन को फ़ील्ड में पार्स करना |
| संवर्धन | get_chip, get_cves, detect_dpp_vulns, वेंडर KB लुकअप | OUI → वेंडर → चिपसेट, CVE संकेत, DPP जाँच |
| स्कोप गेट | active_attack_permitted, allowlist_init_active | तय करना कि किसी BSSID पर सक्रिय मॉड्यूल चल सकता है या नहीं |
| आकलन मॉड्यूल | attack_pixie, attack_vendor, attack_pmkid, attack_deauth_handshake, attack_wpa_psk_brute, attack_wpa_enterprise_eviltwin | वायरलेस परीक्षण (बाहरी टूल को रैप करते हैं) |
| ऑफ़लाइन क्रैक | offline_crack, _hashcat_22000, _aircrack_cap | कैप्चर किए गए PMKID / हैंडशेक को क्रैक करना |
| साक्ष्य + आउटपुट | sar_store_record, save_proof, make_report, recon_report | JSONL तथ्य, प्रूफ़ फ़ाइलें, HTML रिपोर्ट |
| स्थान | location_fix, location_nmea_feeder | वॉर-ड्राइविंग के लिए GPS टैगिंग (Android / gpsd) |
पूर्ण फ़ंक्शन मैप: docs/project-structure.md।
CyclePatrol एक ऑर्केस्ट्रेटर है। यह मानक Linux वायरलेस टूल को सबप्रोसेस के रूप में कॉल करता है।
| टूल | किसके द्वारा उपयोग | उद्देश्य |
|---|---|---|
iw, ip, nmcli, macchanger | इंटरफ़ेस + स्टेल्थ | स्कैन, मोड, चैनल, MAC |
reaver | attack_pixie, attack_vendor, attack_null, attack_empty, attack_user_pin | WPS रजिस्ट्रार एक्सचेंज |
pixiewps | attack_pixie | WPS ऑफ़लाइन PIN रिकवरी |
wpa_supplicant, wpa_cli, wpa_passphrase | WPS, verify_psk_live, attack_wpa_psk_brute | एसोसिएशन, लाइव कुंजी जाँच |
hcxdumptool, hcxpcapngtool | attack_pmkid, attack_pmkid_active | PMKID कैप्चर → hashcat 22000 |
tcpdump | eapol_passive_capture | निष्क्रिय EAPOL कैप्चर |
airodump-ng, aireplay-ng, mdk4 | attack_deauth_handshake, run_recon | कैप्चर, डीऑथ, रिकॉन |
hashcat, aircrack-ng | offline_crack | कैप्चर का ऑफ़लाइन क्रैक |
eaphammer, hostapd-wpe | attack_wpa_enterprise_eviltwin | 802.1X ईविल-ट्विन क्रेडेंशियल कैप्चर |
dragondrain, dragontime | sae_dos_dragondrain, sae_timing_dragontime | WPA3 / SAE जाँच। फ़ंक्शन परिभाषित हैं लेकिन कभी कॉल नहीं किए जाते (डेड कोड), देखें docs/security.md |
tshark, airgraph-ng | recon_report | अपटाइम पार्स, ग्राफ़ |
gpsd, termux-location, gpspipe | स्थान | GPS फ़िक्स / टैगिंग |
jq | वेंडर KB | JSON लुकअप (वैकल्पिक) |
मॉड्यूल विवरण और गेटिंग: docs/modules.md।
सब कुछ LOG_DIR के अंतर्गत लिखा जाता है (डिफ़ॉल्ट /sdcard/Download/wifi)।
डायरेक्टरी chmod 700 के साथ बनाई जाती है। आउटपुट फ़ाइलें chmod 600 का उपयोग करती हैं।
| पथ | क्या |
|---|---|
sar.jsonl | प्रति-AP तथ्य, प्रति पंक्ति एक JSON ऑब्जेक्ट |
cp_audit.log | ऑडिट लॉग: AP, विधि, परिणाम |
report_*.html | आकलन रिपोर्ट (निष्कर्ष, गंभीरता, साक्ष्य) |
report_recon_*.html | निष्क्रिय रिकॉन सर्वेक्षण रिपोर्ट |
proof/proof_*.conf | पुष्ट निष्कर्ष का प्रमाण: PIN, PSK, SHA-256, लाइव-वेरिफ़ाई |
proof/proofs.jsonl | चेन-ऑफ़-कस्टडी मैनिफ़ेस्ट: प्रति प्रूफ़ फ़ाइल एक पंक्ति, उसके SHA-256 के साथ |
proof/handshake_*.cap | कैप्चर किया गया 4-way हैंडशेक |
proof/pmkid_*.22000 | hashcat 22000 रूप में PMKID |
known_bssids.txt, processed_bssids.txt | स्थिति (पहले से पूर्ण को छोड़ें) |
रिपोर्ट की गंभीरता Critical / High / Medium / Low / Info होती है। कोई निष्कर्ष Critical तभी होता है
जब वास्तव में कोई key पुनर्प्राप्त हुई हो और उसके लिए एक proof फ़ाइल मौजूद हो। रिपोर्ट एक Simple
view में खुलती है जो proof-समर्थित निष्कर्ष दिखाती है। एक Technical view टॉगल posture निष्कर्ष,
साक्ष्य तालिका, और डायग्नोस्टिक लॉग जोड़ता है। Posture निष्कर्ष (Medium / Low / Info) उन मापे गए
beacon तथ्यों को साथ रखते हैं जो उनकी रेटिंग का आधार हैं। फ़ील्ड स्कीमा और रिपोर्ट मॉडल
docs/outputs.md में हैं।