
ARTi-C2 هو إطار عمل للاستغلال اللاحق يُستخدم لتنفيذ حالات اختبار Atomic Red Team مع قدرات نشر الحمولات وتنفيذها بسرعة عبر DLR الخاص بـ .NET.
أداة ARTC2 هي إطار عمل تنفيذي حديث يساعد فرق الأمن على توسيع نطاق تنفيذ سيناريوهات الهجوم من نقاط اختراق فردية ومتعددة. تهدف إلى إنتاج معلومات استخباراتية قابلة للتنفيذ حول الهجمات تعزز فعالية منتجات الأمن والاستجابة للحوادث.
يتم استيراد الميزات والقدرات الأساسية لـ ARTC2 من SILENTTRINITY، ويتم تنفيذ الاختبارات الذرية من خلال Boo من ATOMIC-RED-TEAM. جميع التحسينات الأخرى للميزات تم بناؤها لضمان عدم المساس بحرفية العمليات التشغيلية، والمرونة، وقابلية التوسع، والسرعة في التنفيذ.
| القدرة | الوصف |
|---|
| النشر السريع | أتمتة وتوسيع نطاق جهود الاختبار من نقاط اختراق فردية ومتعددة تقع في بيئات إقليمية مختلفة |
| التحكم والأوامر الحديث | اتصالات الحاقن (Implant) والخادم (Server): يستخدم قدرات الاتصال المشفرة لـ SILENTRINITY بتقنية ECDHE لتشفير حركة C2 عبر HTTPS. اتصالات العميل (Client) والخادم (Server): يستخدم Asyncio وWebSockets وواجهة CLI مبنية على prompt-toolkit. تشمل الميزات البارزة: - وضع علامات على موقع الحاقن: مفيد عند إدارة الإشارات ونقاط التوقف في مناطق مختلفة. تكامل NGROK - ممتاز لاستضافة الحمولات ونشرها باستخدام عناوين URL لـ ngrok |
| رأس التوقيع القياسي | JSON PID: , Date(UTC), IsHighIntegrity, HostName, CurrentUser , IsUserAdmin, IPv4, IPv6 |
| دعم تسجيل JSON | تبسيط وابتلاع وفك تشفير وتحليل الأدلة باستخدام مكدس ELK الخاص بك أو أي منصة تحليلات جاهزة لتحليل JSON. |
| تنفيذ الكود في الذاكرة بدون مراحل (Stageless) | تنفيذ اختبارات فريق الأحمر الذرية من عملية PowerShell غير مُدارة (unmanaged PowerShell process) بدرجات صلاحية منخفضة ومتوسطة وعالية. |
| تشكيلات هجومية ديناميكية | تنفيذ سلاسل الهجوم دون إعادة ترجمة أو إعادة تشغيل ARTC2. يدعم حالياً ثلاث وظائف هجومية مختلفة: سلاسل الهجوم، وملفات تعريف الهجوم، وسيناريوهات الهجوم. |
| توصيل حمولات معياري | يستخدم ARTC2 إطار عمل SILENTRINITY الذي يستخدم PowerShell غير مُدارة ومحملّات PowerShell عديمة المراحل لتجميع وتنفيذ حمولات اختبار الفريق الأحمر الذرية في الذاكرة، كما هي (AS IS). |
| الإدارة التشغيلية | يتم تضمين معرفات المهام (Job IDs) للتحكم في التنفيذ وجمع الأدلة. إنها رائعة لتحليل الأحداث وربط الأدلة. "job_id": "D3l820IWpyi67" |
| التحديثات الذرية | يتم تشغيل خط أنابيب نقل (port) ART من خلال تحديثات المستودع في ATOMIC-RED-TEAM |
تحتاج المؤسسات إلى:
بشكل افتراضي، تتم كتابة سجلات ARTIC-C2 في دليل العمل الحالي لـ ARTIC-C2 في ./logs/. تتضمن سجلات الجلسة:
utc_timestamp: طابع زمني UTCsession: GUID جلسة الهدفjob_id: معرف تنفيذ المهمة الفريدttp_data: معرف التقنيةevidence: دليل مشفر بـ Base64 تم جمعه من نقطة الاختراق المستهدفةevidence_status: حالة تشير إلى ما إذا كان TTP المنفذ قد تم حظره أم لا.
رأس توقيع التنفيذ
تُستخدم رؤوس توقيع التنفيذ للتحقق مما إذا كانت أي دفاعات قد حظرت الاختبارات الذرية. في بعض الأحيان، قد لا تُرجع الأوامر الذرية بيانات في STDOUT. ومع ذلك، إذا أعاد رأس توقيع التنفيذ معلومات الرأس، فهذا يشير إلى أن الكود المصدري تم تجميعه، وتحميله في CLR، وتنفيذه على نقطة الاختراق المستهدفة. يتضمن رأس توقيع التنفيذ:
PID: المستخدم أثناء تنفيذ التقنيةDate: طابع زمني UTC تم إنتاجه من نقطة الاختراق المستهدفةIsHighIntegrity: حالة سلامة العمليةHostName: اسم مضيف نقطة الاختراق المستهدفةCurrentUser: المستخدم الحالي. رائع للتتبع عند انتحال هوية المستخدمينIsUserAdmin: حالة المسؤولIPv4: معلومات عنوان IPv4IPv6: معلومات عنوان IPv6نموذج سجل حدث التنفيذ
تم تنفيذ T1069.001-2 في الذاكرة
2021-08-21 07:42:21,146 - {"utc_timestamp": "2021-08-21T07:42:21Z", "msg": "Technique executed:", "controller": "Discovery/T1069.001-2", "last_updated_by": "ARMADO, Inc.",
"ttp_id": "T1069.001", "ttp_opts": {"OutString": {"Description": "Appends Out-String to the PowerShellCode", "Required": false, "Value": true}, "BypassLogging":
{"Description": "Bypasses ScriptBlock and Techniques logging", "Required": false, "Value": true}, "BypassAmsi": {"Description": "Bypasses AMSI", "Required": false, "Value": true}},
"decompressed_file": "n/a", "file_name": "n/a", "gzip_file": "n/a", "language": "boo", "references": ["System.Management.Automation"], "run_in_thread": "n/a", "job_id": "B5ppBWed5NF6c"}
نموذج سجل جمع الأدلة
تم جمع الأدلة من نقطة الاختراق المستهدفة بعد تنفيذ T1069.001-2.
2021-08-21 07:42:25,076 - {"utc_timestamp": "2021-08-21T07:42:25Z", "session": "17ed378a-8cb9-4690-9087-e894c2b1e0a2", "job_id": "B5ppBWed5NF6c", "ttp_data": "T1069.001", "evidence": "IntQSUQ6IDU1NTYsIERhdGUoVVRDKTogMjAyMS0wOC0yMVQwNzo0MjoyNC45MDMyNDkyWiwgSXNIaWdoSW50ZWdyaXR5OiB0cnVlLCBIb3N0TmFtZTogYWQtZGMxLCBDdXJyZW50VXNlcjogZGVlcHJvb3RcXHJ1c3NlbF9oYW5jb2NrLCBJc1VzZXJBZG1pbjogdHJ1ZSwgSVB2NDogWzEwLjEuMC4xMDAsIDE2OS4yNTQuMTM0LjExMV0sIElQdjY6IFtmZTgwOjpkZGUxOjIyYTo3YmEzOmZlMGIlNSwgZmU4MDo6YjhmODpiNDIxOjI3Yzg6ODY2ZiUxMV19XHJcbk5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXNjcmlwdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4tLS0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuQ2VydCBQdWJsaXNoZXJzICAgICAgICAgICAgICAgICAgICAgICAgIE1lbWJlcnMgb2YgdGhpcyBncm91cCBhcmUgcGVybWl0dGVkIHRvIHB1Ymxpc2ggY2VydGlmaWNhdGVzIHRvIHRoZSBkaXJlY3RvcnkgICAgXHJcblJBUyBhbmQgSUFTIFNlcnZlcnMgICAgICAgICAgICAgICAgICAgICBTZXJ2ZXJzIGluIHRoaXMgZ3JvdXAgY2FuIGFjY2VzcyByZW1vdGUgYWNjZXNzIHByb3BlcnRpZXMgb2YgdXNlcnMgICAgICAgICAgICAgIFxyXG5BbGxvd2VkIFJPREMgUGFzc3dvcmQgUmVwbGljYXRpb24gR3JvdXAgTWVtYmVycyBpbiB0aGlzIGdyb3VwIGNhbiBoYXZlIHRoZWlyIHBhc3N3b3JkcyByZXBsaWNhdGVkIHRvIGFsbCByZWFkLW9ubHkgZG8uLi5cclxuRGVuaWVkIFJPREMgUGFzc3dvcmQgUmVwbGljYXRpb24gR3JvdXAgIE1lbWJlcnMgaW4gdGhpcyBncm91cCBjYW5ub3QgaGF2ZSB0aGVpciBwYXNzd29yZHMgcmVwbGljYXRlZCB0byBhbnkgcmVhZC1vbmx5Li4uXHJcbiI=",
"evidence_status": "1"}
نموذج رأس التوقيع
"{PID: 5556, Date(UTC): 2020-01-02T06:55:47Z, IsHighIntegrity: true, HostName: ad-dc1, CurrentUser: artic\\c2operator, IsUserAdmin: true,
IPv4: [10.1.0.100, 169.254.134.111], IPv6: [fe80::dde1:22a:7ba3:fe0b%5, fe80::b8f8:b421:27c8:866f%11]}
نموذج سجل أدلة مفكوك Base64
"{PID: 5556, Date(UTC): 2021-08-21T07:42:24.9073249Z, IsHighIntegrity: true, HostName: ad-dc1, CurrentUser: deeproot\\russel_hancock, IsUserAdmin: true,
IPv4: [10.1.0.100, 169.254.134.111], IPv6: [fe80::dde1:22a:7ba3:fe0b%5, fe80::b8f8:b421:27c8:866f%11]}
Name Description
---- -----------
Cert Publishers Members of this group are permitted to publish certificates to the directory
RAS and IAS Servers Servers in this group can access remote access properties of users
Allowed RODC Password Replication Group Members in this group can have their passwords replicated to all read-only do...
Denied RODC Password Replication Group Members in this group cannot have their passwords replicated to any read-only...
"
بشكل افتراضي، يرتبط المستمعون بواجهة النظام باستخدام HTTPS:443 و HTTP:80. يجب أن تكون قابلة للوصول من نقطة الاختراق المفترضة. قم بتعيين عناوين URL لرد الاتصال (Callback URLs) في سياق :> listeners قبل إنشاء أي محمل (stager).
git clone https://github.com/ARMADOinc/Atomic-Red-Team-intel-C2.gitcd ./Atomic-Red-Team-intel-C2./install.sh installخيارات النشر
يوفر ARTIC-C2 نماذج نشر مرنة لتناسب جميع متطلبات تنفيذ حالات الاختبار الذرية. على الرغم من وجود بعض التبعيات لوحدة تحكم العميل المتعلقة بالتخزين المؤقت، إلا أن وحدة تحكم العميل ليست مطلوبة للتشغيل على نفس نظام خادم الفريق. قريباً، سنقوم بحزم وإصدار عميل مخصص.
ملاحظة: تفترض الأمثلة أدناه أن ARTIC-C2 سيبدأ من نفس المثيل.
بدء WSS على المنفذ الافتراضي وإنشاء سجل مؤقت (adhoc)
artic2.py wss 127.0.0.1 Art1.c25rvr >> /var/log/artic2.log &artic2.py client wss://operator:[email protected]:5000بدء WSS على المنفذ الافتراضي في المقدمة
artic2.py wss 127.0.0.1 Art1.c25rvrartic2.py client wss://operator:[email protected]:5000بدء WSS على المنفذ 5443، والربط بـ 10.0.0.43، وإنشاء سجل مؤقت وربط عميلين
artic2.py wss 10.0.0.43:5443 Art1.c25rvr >> /var/log/artic2.log &artic2.py client wss://operator1:[email protected]:5443artic2.py client wss://operator2:[email protected]:5443