
एक अत्यधिक पोर्टेबल बॉटनेट फ्रेमवर्क जिसमें Django-आधारित C2 सर्वर है। क्लाइंट C++ में लिखा गया है, जबकि वैकल्पिक क्लाइंट Rust, Bash, और Powershell में लिखे गए हैं।
बॉटनेट का C2 सर्वर Django फ्रेमवर्क को बैकएंड के रूप में उपयोग करता है। यह सबसे कुशल वेब सर्वर से बहुत दूर है, लेकिन इसकी भरपाई निम्नलिखित से होती है:
aura-server फ़ोल्डर के भीतर स्थित हैं।http://your_server:server_port/admin पर स्थित एडमिन साइट तक सुपरयूज़र सेट अप करने के बाद पहुँचा जा सकता है (नीचे देखें)।
C2 सर्वर वर्तमान में SQLite3 डेटाबेस, bots.sqlite3 का उपयोग करने के लिए कॉन्फ़िगर किया गया है। वर्तमान कॉन्फ़िगरेशन को aura-server/aura/settings.py में बदला जा सकता है। आप इसके बजाय MySQL, या PostgreSQL का भी उपयोग करना चाह सकते हैं; Django के पोर्टेबल डेटाबेस API के कारण यह आसान है।
प्राथमिक क्लाइंट C++ में लिखा गया है, और CMake का उपयोग करके Linux या Windows दोनों के लिए संकलित किया जा सकता है। वैकल्पिक क्लाइंट Rust, Bash और Powershell में लिखे गए हैं, लेकिन उनमें कुछ कार्यक्षमता का अभाव हो सकता है क्योंकि वे अधिकतर असमर्थित हैं। मैं मेरे ध्यान में आने वाले किसी भी बड़े बग को ठीक करूंगा, लेकिन वे फिलहाल कुछ सुविधाओं की कमी जारी रखेंगे, जैसे विभिन्न शेल में कमांड चलाना।
क्लाइंट प्रासंगिक सिस्टम जानकारी एकत्र करेगा और नए बॉट को पंजीकृत करने के लिए इसे C2 सर्वर पर भेजेगा। पहचान शुरू में यादृच्छिक डेटा वाली एक फ़ाइल बनाकर की जाती है - जिसे कोड में auth file कहा जाता है - जिसे क्लाइंट चलने पर पहचान के लिए हैश किया जाएगा और C2 सर्वर के साथ प्रमाणित किया जाएगा। फिर यह कोड में निर्दिष्ट फ़ोल्डर में सभी फ़ाइलें स्थापित करेगा, और क्लाइंट को चलाने वाले समान विशेषाधिकारों के साथ सिस्टम सेवा प्रारंभ करेगा या कार्य शेड्यूल करेगा। डिफ़ॉल्ट सेटिंग्स में क्लाइंट और अन्य फ़ाइलें कॉन्फ़िगरेशन फ़ाइलों के रूप में छिपी हुई हैं।
चूंकि यह परीक्षण उद्देश्यों के लिए है, C2 सर्वर को क्लाइंट और वेब डिलीवरी फ़ाइलों में हार्ड-कोडेड होना चाहिए। यह वर्तमान में सभी फ़ाइलों पर localhost पर सेट है। ऐसा इसलिए है क्योंकि एक वास्तविक बॉटनेट क्लाइंट साइड पर बदलते डोमेन की धारा को पंजीकृत किए जा रहे डिस्पोजेबल डोमेन की धारा के साथ सिंक करने के लिए डोमेन जनरेशन एल्गोरिदम (DGA) जैसा कुछ उपयोग करेगा - या मूल मिराई बॉटनेट जैसी वास्तव में बुलेटप्रूफ होस्टिंग।
कोड अस्पष्ट भी नहीं है और न ही रिवर्स इंजीनियरिंग को रोकने के लिए कोई प्रयास किया गया है; यह परीक्षण और प्रदर्शनों के लिए बॉटनेट होने के उद्देश्य को विफल कर देगा।
killswitch फ़ोल्डर में आपके उपकरणों पर परीक्षण करते समय आसान क्लाइंट हटाने के लिए स्क्रिप्ट हैं।