
Perl में कार्यान्वित सरल TCP/UDP हनीपॉट
Perl में कार्यान्वित TCP/UDP हनीपॉट प्रोग्राम
malbait के लिए README, 2/10/17
(वैसे मेरा बिटकॉइन पता है 3A7yuqBcPAcVEM59bNAVQdTCmkxRb5JRgE )
(यहाँ एक विकल्प है, BTC के लिए भी, क्योंकि मुझे कुछ बिटकॉइन वॉलेट्स द्वारा कुछ पतों का समर्थन नहीं करने की रिपोर्ट मिल रही है: 1PEDKUiUTxGNJ3XTPfXCTAjpzVzX1VZAme )
malbait में आपका स्वागत है, आपका एक-स्टॉप, सरल perl हनीपॉट!
Malbait एक हनीपॉट, या "मैलवेयर चारा" प्रोग्राम है। इसे हैकर्स का समय बर्बाद करने और इंटरनेट (या आपके LAN) पर शत्रुतापूर्ण ट्रैफ़िक की निगरानी करने के लिए डिज़ाइन किया गया है।
Malbait चयनित या डिफ़ॉल्ट TCP और, यदि चुना गया हो, UDP पोर्ट्स पर नकली सर्वरों की एक श्रृंखला बनाता है। यदि कोई या कुछ भी उनसे जुड़ता है, तो उनका इनपुट लॉगफ़ाइलों में दर्ज किया जाएगा।
ये पृष्ठभूमि प्रक्रियाओं के रूप में चलते हैं, इसलिए आपको या तो अपना कंप्यूटर बंद करना होगा या उन्हें हटाने के लिए शेल की "kill" (या, बेहतर अभी भी, "skill") कमांड का उपयोग करना होगा। आप उन्हें netstat से मॉनिटर कर सकते हैं। मेरी सलाह है:
sudo netstat -anp|grep perl
यह देखने के लिए कि क्या सुन रहा है, और
sudo skill -9 perl
जब आपका मन भर जाए तो उन्हें खत्म करने के लिए।
नोट: यदि आप इस प्रोग्राम को इंस्टॉल करने के लिए install.sh का उपयोग करते हैं, तो आपको चलाना होगा
sudo skill -9 malbait
इसके बजाय। हालाँकि आप इसे अभी भी मॉनिटर कर सकते हैं: sudo netstat -anp|grep perl
वैकल्पिक रूप से आप केवल मशीन बंद कर सकते हैं। जाहिर है, perl का उपयोग किसी और काम के लिए करते समय malbait का उपयोग न करें! मैं एक समर्पित "चारा" मशीन की सलाह देता हूँ, या तो Raspberry Pi जैसी छोटी चीज़ जो डिफ़ॉल्ट पोर्ट्स पर चल रही हो, या एक बड़ा कंप्यूटर जो उतने पोर्ट्स पर सुन सकता है जितने आप चाहें (अधिमानतः उन सभी पर)।
Malbait डिफ़ॉल्ट रूप से TCP है, लेकिन यह अकेले UDP का समर्थन कर सकता है और दोनों को साथ-साथ चला सकता है।
यह अत्यधिक अनुशंसित है कि आप इस प्रोग्राम को सुपरयूज़र मोड में उपयोग करें, या तो gainroot (sudo gainroot) को लागू करके या इसे sudo करके (sudo malbait)। पहले 1024 पोर्ट्स में से कोई भी खोलने के लिए आपके पास सुपरयूज़र अनुमतियाँ होनी चाहिए।
इसे इस प्रकार चलाया जाता है
malbait -foo
यदि आप इसे बिना पैरामीटर के चलाते हैं तो यह उपयोग को आगे समझाने वाला एक लंबा पाठ उगल देगा। यदि आप "बॉक्स से बाहर" शुरू करना चाहते हैं तो चलाएँ
malbait -defaults
यह इसके डिफ़ॉल्ट पोर्ट खोलेगा और जहाँ संभव हो सर्वर बनाएगा।
Malbait Telnet, FTP, SMTP, POP3, BGP, HTTP (बहुत शानदार नहीं), TR-69 (बहुत शानदार नहीं), imap, systat, echo और पुराने ascii "time" सर्वर के लिए नकली सर्वर बना सकता है। डिफ़ॉल्ट रूप से ये उनके सभी डिफ़ॉल्ट पोर्ट्स पर खोले जाते हैं, लेकिन आप उनके लिए पोर्ट निर्दिष्ट कर सकते हैं।
आप पोर्ट्स की एक श्रृंखला भी खोल सकते हैं, यानी,
malbait -ports:1-1024
पोर्ट 1-1024 ("well-known" या "प्रतिबंधित" पोर्ट) खोलेगा और जहाँ उपयुक्त हो वहाँ नकली सर्वर बनाएगा।
malbait का उपयोग केवल आपके पास उपलब्ध मेमोरी की मात्रा से सीमित है। -trans_proto:tcpudp और -ports: विकल्प आपको हर एक पोर्ट देखने की शक्ति देते हैं, यदि आपके पास पर्याप्त रूप से शक्तिशाली मशीन है; या यदि नहीं है तो आपके कंप्यूटर को क्रैश करने की। मुझे लगता है कि मेरा छोटा Lenovo x200 नोटपैड लगभग 6000 पोर्ट्स को संभाल सकता है, इससे पहले कि वह पागल होने लगे, लेकिन आपकी स्थिति अलग हो सकती है। देखना चाहते हैं कि आपका नया बॉक्स वास्तव में कितना शक्तिशाली है? Malbait एक बेंचमार्क प्रदान कर सकता है - व्यक्तिगत रूप से मैं यह देखना पसंद करूँगा कि एक मशीन पर क्या होता है जो चला रही है
malbait -ports:1-65535 -trans_proto:tcpudp
एक बहुत शक्तिशाली कंप्यूटर पर - मेरे अनुभव में उसके केवल 10% के साथ, वहाँ निश्चित रूप से अधिक दुर्भावनापूर्ण UDP ट्रैफ़िक है (मुख्य रूप से बेवकूफ लोग मुफ्त फोन कॉल्स की ठगी करने की कोशिश कर रहे हैं, ऐसा लगता है), और telnet एक पूर्ण पेट्री डिश है, लेकिन मैं उससे आगे के अनदेखे क्षेत्र का सर्वेक्षण देखना पसंद करूँगा, यदि किसी के पास शक्ति (और अपने फ़ायरवॉल को पूरी तरह से अक्षम करने की क्षमता और हिम्मत) है!
यदि आप, मान लीजिए, FTP सर्वर को UDP मोड में खोलने की कोशिश करते हैं, ( malbait -proto:ftp -trans_proto:udp ) तो यह डिफ़ॉल्ट पोर्ट खोलेगा - लेकिन आपको एक नकली FTP सर्वर नहीं मिलेगा! UDP केवल UDP-संगत सेवाओं के लिए सर्वर बनाएगा, जो हैं asciitime, systat, echo और विशेष "hacktime" और "fuzz" मेटा-प्रोटोकॉल।
Hacktime फिल्म "Kung Fury" से प्रेरित एक मज़ाक है। यह NTP टाइम सर्वर बनाता है, दोनों पुराने ज़माने के और नए, और या तो सभी 1s या सभी FFs प्रसारित करता है, विचार यह है कि Unix मिलेनियम ("hacktime-2036") या एक नई बूट की गई प्रणाली ("hacktime-1900") के लिए रोलओवर तिथि का अनुकरण किया जाए। जाहिर है NTP सर्वर उससे कहीं अधिक जटिल है और यह शायद काम नहीं करेगा, लेकिन यह निश्चित रूप से उन हैकर्स को भ्रमित करेगा जो आप पर हमला करते हैं, यह सोचकर कि आप एक NTP सर्वर हैं!
Fuzz बस यही है - स्वचालित हमलों को उन पर यादृच्छिक कचरा फेंककर गड़बड़ करने का एक प्रयास। फिर से, यह प्रयोगात्मक है और मैं इसे बहुत गंभीरता से नहीं लेता, लेकिन मैंने सोचा कि किसी को यह उपयोगी लग सकता है इसलिए यह बना रहता है।
HTTP सर्वर "webpage.html" नामक फ़ाइल की तलाश करता है। यदि इसे नहीं मिलती है, तो यह इसके बजाय एक सरल 404 पेज उत्पन्न करता है। फिर से, यह शानदार नहीं है - यह प्रोग्राम आपको उन विदेशी, यादृच्छिक क्लाइंट्स की जाँच करने में मदद करने के बारे में अधिक है जो आपसे जुड़ने की कोशिश करते हैं, न कि उबाऊ पुराने वेब स्पाइडरों के बारे में।
ध्यान दें कि यदि आप इसे वेब ब्राउज़र में खोलते हैं तो आपको सामग्री के नीचे बहुत सारे "HTTP/1.1 200 OK" स्ट्रिंग्स दिखाई देंगे; ऐसा इसलिए है क्योंकि इसे वेब ब्राउज़र में खोले जाने के लिए नहीं बनाया गया है, इसे संभावित दुर्भावनापूर्ण वेबक्रॉलिंग बॉट्स को यथासंभव लंबे समय तक लाइन पर रखने के लिए बनाया गया है।
बेशक, डिफ़ॉल्ट webpage.html को अपने स्वयं के साथ बदलने के लिए स्वतंत्र महसूस करें - जबकि आप इसका उपयोग करने के लिए स्वागत करते हैं, यह प्रदर्शन उद्देश्यों के लिए डिज़ाइन किया गया है।
-transblank विकल्प आपको नकली सर्वर निर्माण को ओवरराइड करने की अनुमति देते हैं। इसलिए यदि आप चलाते हैं
malbait.pl -port:23 -proto:transblank
या
malbait.pl -proto:telnet -transblank
malbait ग्राहकों को एक खाली प्रतिक्रिया (एक अकेला कैरिज रिटर्न) के सबसे करीब की चीज़ प्रसारित करेगा, बजाय "Telnet सर्वर" बनाने के।
कंप्यूटर विचित्रताओं के प्रेमियों के लिए विभिन्न विकल्प प्रदान किए गए हैं।