
إطار عمل بوت نت فائق القابلية للنقل مع خادم C2 يعتمد على Django. العميل مكتوب بلغة 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.
العميل الأساسي مكتوب بلغة C++، ويمكن تجميعه إما لنظام Linux أو Windows باستخدام CMake. العملاء البديلون مكتوبون بلغات Rust و Bash و Powershell، لكنهم قد يفتقرون إلى بعض الوظائف لأنهم غير مدعومين في الغالب. سأصلح أي أخطاء رئيسية تصل إلى علمي، لكنهم سيستمرون في الافتقار لبعض الميزات في الوقت الحالي، مثل تشغيل الأوامر في شلات مختلفة.
سيقوم العميل بجمع معلومات النظام ذات الصلة وإرسالها إلى خادم C2 لتسجيل البوت الجديد. يتم التعريف عن طريق إنشاء ملف يحتوي على بيانات عشوائية في البداية - يُشار إليه باسم ملف المصادقة في جميع أنحاء الكود - والذي سيتم تجزئته في كل مرة يعمل فيها العميل للتعرف على العميل والمصادقة مع خادم C2. ثم سيقوم بتثبيت جميع الملفات في المجلد المحدد في الكود، وتهيئة خدمة النظام أو جدولة مهمة بنفس الصلاحيات التي تم تشغيل العميل بها. الإعدادات الافتراضية تجعل العميل والملفات الأخرى تتنكر كملفات تهيئة.
نظرًا لأن هذا لأغراض الاختبار، يجب ترميز خادم C2 بشكل ثابت في ملفات العميل والتوصيل عبر الويب. تم ضبطه حاليًا على localhost في جميع الملفات. هذا لأن البوت نت الفعلي سيستخدم شيئًا مثل خوارزمية توليد النطاقات (DGA) لمزامنة تيار من النطاقات المتغيرة على جانب العميل مع تيار من النطاقات القابلة للتصرف التي يتم تسجيلها - أو مجرد استضافة قوية جدًا مثل بوت نت Mirai الأصلي.
الكود أيضًا غير مُبهم ولا يوجد أي جهد لمنع الهندسة العكسية؛ هذا سيهزم الغرض من كونها بوت نت للاختبار والعروض التوضيحية.
يحتوي مجلد killswitch على نصوص برمجية لإزالة العميل بسهولة عند الاختبار على أجهزتك.