
reNgine هو إطار عمل استطلاع آلي لتطبيقات الويب يركز على عملية استطلاع مبسطة وقابلة للتكوين بدرجة عالية عبر المحركات، وربط وتنظيم بيانات الاستطلاع، والمراقبة المستمرة، مدعوم بقاعدة بيانات، وواجهة مستخدم بسيطة وبديهية. يجعل reNgine من السهل على مختبر الاختراق جمع معلومات الاستطلاع بأقل قدر من التكوين، وبفضل خاصية الربط في reNgine، يصبح الاستطلاع سهلاً.
يأتي reNgine 2.2.0 مع bounty hub حيث يمكنك مزامنة واستيراد برامج hackerone الخاصة بك، إشعارات داخل التطبيق، chaos كأداة تعداد النطاقات الفرعية، القدرة على رفع أنماط nuclei و gf متعددة، دعم regex في تكوين النطاقات الفرعية خارج النطاق، قالب تقرير PDF إضافي والمزيد. اطلع على ما الجديد في reNgine 2.2.0!
غالبًا ما تقصر أدوات الاستطلاع التقليدية في قابلية التكوين والكفاءة. تعالج reNgine هذه القصور وتظهر كبديل ممتاز للأدوات التجارية الحالية.
تم إنشاء reNgine لمعالجة قيود أدوات الاستطلاع التقليدية وتوفير بديل أفضل، يتفوق حتى على بعض العروض التجارية. سواء كنت صائد مكافآت، أو مختبر اختراق، أو فريق أمني في شركة، فإن reNgine هو الحل الأمثل لأتمتة وتعزيز جهود جمع المعلومات.
شاهد فيديو إطلاق reNgine 2.0-jasper هنا!

التوثيق المفصل متاح على https://rengine.wiki


reNgine ليست مجرد مجموعة استطلاع عادية؛ إنها تغيير لقواعد اللعبة! لقد قمنا بتعزيز سير العمل التقليدي بميزات مبتكرة من شأنها أن تسهل لعبة الاستطلاع الخاصة بك. تعيد reNgine تعريف فن الاستطلاع من خلال محركات المسح القابلة للتكوين بدرجة عالية، وربط بيانات الاستطلاع، والمراقبة المستمرة، وتقارير الثغرات المدعومة بـ GPT، وإدارة المشاريع، والتحكم في الوصول القائم على الأدوار، وغير ذلك.
🦾 تمتلك reNgine قدرات استطلاع متقدمة، تستغل مجموعة من أدوات المصادر المفتوحة لتقديم تجربة استطلاع شاملة لتطبيقات الويب. بفضل واجهة المستخدم البديهية، تتفوق في اكتشاف النطاقات الفرعية، وتحديد عناوين IP والمنافذ المفتوحة، وجمع endpoints، واختبار الدلائل والملفات، والتقاط لقطات الشاشة، وإجراء فحص الثغرات. باختصار، تقوم بإجراء استطلاع شامل من البداية إلى النهاية. مع تحديد WHOIS واكتشاف WAF، تقدم رؤى عميقة حول النطاقات المستهدفة. بالإضافة إلى ذلك، تحدد reNgine أيضًا دلاء S3 ذات التهيئة الخاطئة وتجد النطاقات الفرعية وعناوين URL المثيرة للاهتمام، بناءً على كلمات رئيسية محددة لمساعدتك في تحديد هدفك التالي، مما يجعلها الأداة المثلى للاستطلاع الفعال.
🗃️ وداعًا لفوضى بيانات الاستطلاع! تتكامل reNgine بسلاسة مع قاعدة بيانات، مما يوفر لك ربطًا وتنظيمًا لا مثيل له للبيانات. انسَ عناء البحث في ملفات json أو txt أو csv. بالإضافة إلى ذلك، تتيح لك لغة الاستعلام المخصصة لدينا تصفية بيانات الاستطلاع بسهولة باستخدام عوامل تشغيل تشبه اللغة الطبيعية مثل تصفية جميع النطاقات الفرعية النشطة باستخدام http_status=200 وأيضًا تصفية جميع النطاقات الفرعية النشطة التي تحتوي على admin في الاسم http_status=200&name=admin
🔧 تقدم reNgine مرونة لا مثيل لها من خلال محركات المسح القابلة للتكوين بدرجة عالية، استنادًا إلى تهيئة YAML. إنها توفر حرية إنشاء وتخصيص محركات مسح الاستطلاع بناءً على أي نوع من المتطلبات، يمكن للمستخدمين تخصيصها لأهدافهم وتفضيلاتهم المحددة، بدءًا من إدارة الخيوط إلى إعدادات المهلة وتكوينات حدود المعدل، كل شيء قابل للتخصيص. بالإضافة إلى ذلك، تقدم reNgine مجموعة من محركات المسح المهيأة مسبقًا الجاهزة للاستخدام، بما في ذلك المسح الكامل، والمسح السلبي، وجمع لقطات الشاشة، ومحرك مسح OSINT. تلغي هذه المحركات الجاهزة الحاجة إلى إعداد يدوي واسع النطاق، وتتوافق تمامًا مع مهمة reNgine الأساسية المتمثلة في تبسيط عملية الاستطلاع وتمكين المستخدمين من الوصول بسهولة إلى بيانات الاستطلاع الصحيحة بأقل جهد.
💎 المسوحات الفرعية (Subscans): تعد الماسحات الفرعية ميزة تغير قواعد اللعبة في reNgine، مما يميزها كأداة المصادر المفتوحة الوحيدة من نوعها التي تقدم هذه الإمكانية. مع الماسحات الفرعية، أصبح الانتظار حتى اكتمال خط الأنابيب بأكمله شيئًا من الماضي. الآن، يمكن للمستخدمين الاستجابة بسرعة للاكتشافات الجديدة أثناء الاستطلاع. سواء صادفت نطاقًا فرعيًا مثيرًا للاهتمام ورغبت في إجراء فحص منافذ مركز، أو أردت التعمق أكثر بتقييم الثغرات، فإن reNgine تغطي احتياجاتك.
📃 تقارير PDF: بالإضافة إلى قدراتها القوية في الاستطلاع، تذهب reNgine خطوة إضافية بتبسيط عملية إنشاء التقارير، إدراكًا للدور الحاسم الذي تلعبه تقارير PDF في مجال الاستطلاع الشامل. يمكن للمستخدمين بسهولة إنشاء وتخصيص تقارير PDF لتناسب احتياجاتهم الدقيقة. سواء كان تقرير مسح كامل، أو تقرير ثغرات، أو تقرير استطلاع موجز، توفر reNgine المرونة لاختيار نوع التقرير الذي ينقل نتائجك بأفضل شكل. علاوة على ذلك، فإن مستوى التخصيص لا مثيل له، مما يسمح للمستخدمين باختيار ألوان التقرير، وضبط الملخصات التنفيذية، وحتى إضافة لمسات شخصية مثل أسماء الشركات والتذييلات. مع تكامل GPT، لا تكون تقاريرك مجرد تقارير، بل مع خطوات المعالجة والتأثيرات، تحصل على رؤية 360 درجة للثغرات التي اكتشفتها.
🔖 قل مرحبًا للمشاريع! يقدم reNgine 2.0 إضافة قوية تمكنك من تنظيم جهود استطلاع تطبيقات الويب بكفاءة. باستخدام هذه الميزة، يمكنك إنشاء مساحات مشاريع متميزة، كل منها مصمم لغرض محدد، مثل صيد المكافآت الشخصي، أو مهام العملاء، أو أي مهمة استطلاع متخصصة أخرى. سيكون لكل مشروع لوحة تحكم منفصلة وستكون جميع نتائج المسح منفصلة عن كل مشروع، بينما ستتم مشاركة محركات المسح والتكوين عبر جميع المشاريع.
⚙️ الأدوار والأذونات! في reNgine 2.0، أخذنا استطلاع تطبيقات الويب الخاص بك إلى مستوى جديد تمامًا من التحكم والأمان. الآن، يمكنك تعيين أدوار متميزة لأعضاء فريقك—مسؤول النظام، ومختبر الاختراق، والمدقق—لكل منها صلاحيات محددة بدقة لتخصيص وصولهم وإجراءاتهم داخل نظام reNgine.
🚀 توليد تقارير الثغرات باستخدام GPT: استعد لمستقبل تقارير اختبار الاختراق مع ميزة reNgine الرائدة: "توليد التقارير المدعومة بـ GPT"! بقوة OpenAI's GPT، توفر reNgine الآن أوصافًا تفصيلية للثغرات، واستراتيجيات المعالجة، وتقييمات التأثير التي تبدو وكأنها كتبها خبير أمن بشري! ولكن هذا ليس كل شيء! تذهب تقاريرنا المدعومة بـ GPT إلى أبعد من ذلك من خلال البحث في الويب عن المقالات الإخبارية ذات الصلة والمدونات والمراجع، لذلك لديك رؤية 360 درجة للثغرات التي اكتشفتها. مع reNgine 2.0، أحدث ثورة في لعبة اختبار الاختراق وأبهر عملاءك بتقارير ليست مفيدة فقط ولكنها جذابة وشاملة مع تحليل مفصل لتقييم التأثير واستراتيجيات المعالجة.
🥷 توليد سطح الهجوم المدعوم بـ GPT: مع reNgine 2.0، تتكامل reNgine بسلاسة مع GPT لتحديد الهجمات التي يمكنك تنفيذها على نطاق فرعي. باستخدام بيانات الاستطلاع مثل عنوان الصفحة، والمنافذ المفتوحة، واسم النطاق الفرعي، يمكن لـ reNgine أن تنصحك بالهجمات التي يمكنك تنفيذها على الهدف. ستقدم reNgine أيضًا الأساس المنطقي لسبب احتمالية نجاح الهجوم المحدد.
🧭 المراقبة المستمرة: تعد المراقبة المستمرة جوهر مهمة reNgine، وتضمن ميزة المراقبة المستمرة القوية أن أهدافهم تحت المراقبة المستمرة. بفضل المرونة في جدولة عمليات المسح على فترات منتظمة، يمكن لمختبر الاختراق البقاء على اطلاع دائم بأهدافه. ما يميز reNgine هو تكاملها السلس مع قنوات الإشعارات الشائعة مثل Discord وSlack وTelegram، مما يوفر تنبيهات فورية للنطاقات الفرعية المكتشفة حديثًا، أو الثغرات، أو أي تغييرات في بيانات الاستطلاع.



HailBytes - دعم reNgine المؤسسي
تتوفر خدمات الدعم والنشر والصيانة الرسمية على المستوى المؤسسي لـ reNgine من خلال HailBytes.
يمكنك أيضًا العثور على فيديو الغوص العميق حول كيفية استخدام وتثبيت reNgine من هنا reNgine Deep Dive by HailBytes

استنساخ المستودع
git clone https://github.com/yogeshojha/rengine && cd rengine
تكوين البيئة
nano .env
تأكد من تغيير POSTGRES_PASSWORD للأمان.
(اختياري) للتثبيت غير التفاعلي، قم بتعيين بيانات اعتماد المسؤول في .env
DJANGO_SUPERUSER_USERNAME=yourUsername
[email protected]
DJANGO_SUPERUSER_PASSWORD=yourStrongPassword
إذا كنت بحاجة إلى تنفيذ تثبيت غير تفاعلي، يمكنك إعداد اسم المستخدم والبريد الإلكتروني وكلمة المرور لمسؤول واجهة الويب مباشرة من ملف .env (بدلاً من تعيينها يدويًا من المطالبات أثناء عملية التثبيت). هذا الخيار يمكن أن يكون مفيدًا للتثبيت الآلي (عبر ansible, vagrant, إلخ).
DJANGO_SUPERUSER_USERNAME: اسم مستخدم مسؤول واجهة الويب (يستخدم لتسجيل الدخول إلى واجهة الويب).
DJANGO_SUPERUSER_EMAIL: بريد إلكتروني لمسؤول واجهة الويب.
DJANGO_SUPERUSER_PASSWORD: كلمة مرور مسؤول واجهة الويب (تستخدم لتسجيل الدخول إلى واجهة الويب).
ضبط توسع عمال Celery في .env
ما لم تكن على فرع التطوير، يُرجى عدم الوصول إلى reNgine عبر أي منافذ
لنظام Mac أو Windows أو الأنظمة الأخرى، يُرجى الرجوع إلى دليل التثبيت المفصل https://reNgine.wiki/install/detailed/
إذا واجهت أي مشاكل أثناء التثبيت أو تفضل دليلاً مرئياً، فقد قام أحد أعضاء مجتمعنا بإنشاء فيديو تثبيت ممتاز لتثبيت Kali Linux. يمكنك العثور عليه هنا: https://www.youtube.com/watch?v=7OFfrU6VrWw
يرجى ملاحظة: هذا المحتوى من إعداد المجتمع وليس مملوكاً لـ reNgine. قد تتغير عملية التثبيت، لذا يُرجى الرجوع إلى الوثائق الرسمية للحصول على أحدث التعليمات.
لتحديث reNgine، قم بتشغيل:
cd rengine && sudo ./update.sh
إذا كان update.sh يفتقر إلى أذونات التنفيذ، استخدم:
sudo chmod +x update.sh

لدى reNgine مجتمع نابض بالحياة غالباً ما ينشئ محتوى مفيداً حول التثبيت والميزات والاستخدام. فيما يلي مجموعة من الفيديوهات التي أعدها المجتمع وقد تجدها مفيدة. يُرجى ملاحظة أن هذه الفيديوهات ليست محتوى رسمياً لـ reNgine، وقد تصبح المعلومات التي تحتويها قديمة مع تطور reNgine.
يُرجى دائماً الرجوع إلى الوثائق الرسمية للحصول على أحدث المعلومات وأكثرها دقة. إذا قمت بإنشاء فيديو عن reNgine وتود عرضه هنا، فيُرجى إرسال طلب سحب (pull request) لتحديث هذا الجدول.
نقدر مساهمات المجتمع في إنشاء هذه الموارد.



نرحب بجميع أنواع المساهمات! مجتمع المصادر المفتوحة يزدهر بالتعاون، ومدخلاتك لا تقدر بثمن. سواء كنت تصحح خطأً مطبعياً، أو تحسن واجهة المستخدم، أو تضيف ميزات جديدة، كل مساهمة مهمة.
كيف يمكنك المساهمة:
للبدء:
تذكر، لا توجد مساهمة صغيرة جداً. جهودك تساعد في جعل reNgine أفضل للجميع!

عند تقديم المشكلات، قدم أكبر قدر ممكن من المعلومات القيمة لمساعدة المطورين في حل المشكلة بسرعة. اتبع هذه الخطوات لجمع معلومات تصحيح مفصلة:
تفعيل وضع التصحيح:
web/entrypoint.sh في جذر المشروعexport DEBUG=1 في أعلى الملف:
#!/bin/bash
export DEBUG=1
python3 manage.py migrate
python3 manage.py runserver 0.0.0.0:8000
exec "$@"
docker-compose restart webعرض مخرجات التصحيح:
make logs لرؤية تتبع المكدس الكاملمثال على مخرجات التصحيح:
web_1 | File "/usr/local/lib/python3.10/dist-packages/celery/app/task.py", line 411, in __call__
web_1 | return self.run(*args, **kwargs)
web_1 | TypeError: run_command() got an unexpected keyword argument 'echo'
تقديم مشكلتك:
تعطيل وضع التصحيح:
DEBUG=0 في web/entrypoint.shمن خلال تقديم هذه المعلومات التفصيلية، فإنك تساعد المطورين بشكل كبير في تحديد المشكلات وإصلاحها بكفاءة أكبر.

reNgine هو مشروع مفتوح المصدر يرحب بالمساهمين من جميع مستويات الخبرة، بما في ذلك المبتدئين. إذا لم تكن قد ساهمت في المصادر المفتوحة من قبل، فنحن نشجعك على البدء هنا!
مساهمتك، مهما كانت صغيرة، ذات قيمة بالنسبة لنا.

قبل طلب الدعم:
إذا كنت لا تزال بحاجة إلى مساعدة:
يُرجى ملاحظة:

reNgine هو مشروع شغف تم تطويره في وقت فراغي، بجانب وظيفتي اليومية. دعمك يساعد في إبقاء هذا المشروع حياً ومتنامياً. إليك كيف يمكنك المساهمة:
دعمك، سواء من خلال التبرعات أو مجرد إعطاء نجمة، يخبرني بأن reNgine مفيد لك. إنه يحفزني على مواصلة التحسين وإضافة الميزات لجعل reNgine الأداة المفضلة للاستطلاع.
شكراً لدعمك!

نحن نقدر جهودك في الإفصاح المسؤول عن اكتشافاتك وسنبذل قصارى جهدنا للإقرار بمساهماتك.
للإبلاغ عن ثغرة أمنية، يُرجى اتباع الخطوات التالية:
لا تفصح عن الثغرة علناً على مشكلات GitHub أو أي منتدى عام آخر.
اذهب إلى علامة التبويب الأمان في مستودع reNgine.
انقر على "الإبلاغ عن ثغرة أمنية" لفتح نموذج الإبلاغ الخاص عن الثغرات في GitHub.
قدم وصفاً مفصلاً للثغرة، بما في ذلك:
سأقوم بمراجعة تقريرك والرد بأسرع وقت ممكن، عادةً خلال 48-72 ساعة.
يُرجى السماح ببعض الوقت للتحقيق في الثغرة ومعالجتها قبل الإفصاح عنها للآخرين.
نحن ملتزمون بالعمل مع باحثي الأمن للتحقق من أي ثغرات محتملة يتم الإبلاغ عنها ومعالجتها. بعد إصلاح المشكلة، سنعترف علناً بإفصاحك المسؤول، إلا إذا كنت تفضل البقاء مجهولاً.
شكراً لمساعدتك في الحفاظ على أمان reNgine ومستخدميه!

موزع بموجب رخصة GNU GPL v3. راجع LICENSE لمزيد من المعلومات.

ملاحظة: تمت كتابة أو تحسين أجزاء من هذا الملف README باستخدام نماذج لغوية ذكاء اصطناعي.
MAX_CONCURRENCY=80
MIN_CONCURRENCY=10
MAX_CONCURRENCY: تحدد هذه المعلمة الحد الأقصى لعدد عمليات العامل المتزامنة (Celery worker) التي يمكن إنشاؤها. في هذه الحالة، تم تعيينها على 80، مما يعني أن التطبيق يمكنه استخدام ما يصل إلى 80 عملية عامل متزامنة لتنفيذ المهام بشكل متزامن. هذا مفيد للتعامل مع حجم كبير من عمليات المسح أو عندما ترغب في زيادة قدرة المعالجة خلال فترات الطلب العالي. إذا كان لديك عدد أكبر من أنوية وحدة المعالجة المركزية (CPU)، ستحتاج إلى زيادة هذا لتحقيق أقصى أداء.
MIN_CONCURRENCY: من ناحية أخرى، تحدد MIN_CONCURRENCY الحد الأدنى لعدد عمليات العامل المتزامنة التي يجب الحفاظ عليها، حتى خلال فترات الطلب المنخفض. في هذا المثال، تم تعيينها على 10، مما يعني أنه حتى عندما يكون هناك مهام أقل للمعالجة، سيتم الاحتفاظ بـ 10 عمليات عامل على الأقل قيد التشغيل. يساعد هذا في ضمان أن التطبيق يمكنه الاستجابة بسرعة للمهام الواردة دون عبء بدء وإيقاف عمليات العامل بشكل متكرر.
تسمح هذه الإعدادات بالتوسع الديناميكي لعمال Celery، مما يضمن أن التطبيق يدير عبء العمل بكفاءة من خلال ضبط عدد العمال المتزامنين بناءً على حجم وتعقيد عبء العمل.
إليك القيمة المثالية لـ MIN_CONCURRENCY و MAX_CONCURRENCY اعتمادًا على كمية RAM التي يمتلكها جهازك:
MAX_CONCURRENCY=10MAX_CONCURRENCY=30MAX_CONCURRENCY=50هذه مجرد قيمة مثالية اختبرها المطورون وجربوها وهي تعمل! لكن لا تتردد في اللعب بالقيم. يتم تحديد الحد الأقصى لعدد عمليات المسح بواسطة عوامل مختلفة، مثل عرض النطاق الترددي للشبكة، وذاكرة الوصول العشوائي (RAM)، وعدد وحدات المعالجة المركزية (CPU) المتاحة، إلخ.
تشغيل سكريبت التثبيت:
sudo ./install.sh
للتثبيت غير التفاعلي: sudo ./install.sh -n
*ملاحظة: إذا لزم الأمر، قم بتشغيل chmod +x install.sh لمنح أذونات التنفيذ.*يمكن الآن الوصول إلى reNgine من https://127.0.0.1 أو إذا كنت على VPS https://your_vps_ip_address
| عنوان الفيديو | اللغة | الناشر | التاريخ | الرابط |
|---|
| تثبيت reNgine على Kali Linux | الإنجليزية | Secure the Cyber World | 2024-02-29 | مشاهدة |
| نتائج ReNgine - أتمتة الاستطلاع | البرتغالية | Guia Anônima | 2023-04-18 | مشاهدة |
| مقدمة عن reNgine | العربية المغربية | Th3 Hacker News Bdarija | 2021-07-27 | مشاهدة |
| استطلاع آلي؟ ReNgine - أدوات الهاكر | الإنجليزية | Intigriti | 2021-08-24 | مشاهدة |