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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
degas — كشف النطاقات المولدة بواسطة خوارزميات DGA باستخدام نماذج التعلم العميق | Kitploit
أدوات/GitHubGitHub/matthoffman/degas
استخبارات التهديداتتعلم الآلةالأوراق والأبحاثالتعلم والتعليمتحليل DNSكشف الشذوذ
GitHubmatthoffman/degas

degas

كشف النطاقات المولدة بواسطة خوارزميات DGA باستخدام نماذج التعلم العميق

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

الأكثر شعبية

عرض الكل →

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

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

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

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

Degas

كشف النطاقات المولدة بواسطة DGA باستخدام نماذج التعلم العميق

Edgar Degas, "أربع راقصات"

التشغيل

أنا حالياً أستخدم Conda (Anaconda/Miniconda) للتطوير، لكن يجب أن تكون قادراً على استخدام Pipenv أو virtualenv أيضاً باستخدام ملف requirements.txt المرفق.

conda:

root@kitploit:~
conda env create -f environment.yml
conda activate degas

Pipenv:

root@kitploit:~
pipenv install -r requirements.txt
pipenv shell

Virtualenv مشابه، لكن لا يوجد حقاً سبب لاستخدام virtualenv بدلاً من Pipenv بعد الآن.

إعادة تدريب النموذج

يوجد نموذج مدرب موجود في الدليل models. إذا كنت ترغب في تدريب نموذج خاص بك، ستحتاج أولاً إلى تنزيل بيانات التدريب من S3:

root@kitploit:~
python degas/runner download-data

معالجة البيانات إلى شكل CSV البسيط الذي يتوقعه باني النموذج:

root@kitploit:~
python degas/runner process-data data/raw data/processed

هذه الخطوات تحتاج إلى تشغيلها مرة واحدة فقط، إلا إذا قمت بتغيير بيانات التدريب.

لإعادة تدريب النموذج باستخدام مجموعة البيانات المولدة، قم أولاً بتثبيت tensorflow-gpu باستخدام مدير الحزم الذي تختاره (conda install tensorflow-gpu أو pip install tensorflow-gpu) بحيث يكون التدريب مسرّعاً بواسطة GPU.

ثم، قم بتشغيل:

root@kitploit:~
python degas/runner train-model data/processed

قم بتشغيل python degas/runner train-model --help لبعض خيارات الضبط المتاحة. يستغرق هذا حوالي ساعة ونصف على بطاقة GTX 1070. يعمل فقط حوالي 9 دورات قبل أن يقصر؛ يمكنك تشغيله مثلاً لـ 5 دورات وستحصل على دقة جيدة مع نصف وقت التدريب: python degas/runner train-model --epochs 5 data/processed

عمل التنبؤات

نظراً لأن هذا المشروع يستخدم Tensorflow كمكتبة تعلم عميق أساسية، الطريقة الموصى بها لاستخدام هذا للاستدلال هي استخدام Tensorflow Serving.

يجب أن تكون قادراً على تشغيله باستخدام:

root@kitploit:~
docker run -p 8501:8501 \
  --mount type=bind,source=models/degas,target=/models/degas\
  -e MODEL_NAME=degas -t tensorflow/serving

انظر وثائق Tensorflow Serving لمزيد من المعلومات حول الخيارات المتاحة.

حول Degas

لماذا التعلم العميق لهذه المهمة؟ لأنه يعمل بشكل جيد، وليس من الصعب تنفيذه. من Byu et al, 2018:

"Deep neural networks have recently appeared in the literature on DGA detection Woodbridge et al. (2016); Saxe & Berlin (2017); Yu et al. (2017). إنها تتفوق بشكل كبير على طرق التعلم الآلي التقليدية في الدقة، على حساب زيادة تعقيد تدريب النموذج والحاجة إلى مجموعات بيانات أكبر."

نظراً لوجود كمية كبيرة من البيانات المتاحة للتدريب، فإن إنشاء نموذج تعلم عميق يكون بنفس السهولة أو أسهل من البدائل.

المراجع

https://openreview.net/forum?id=BJLmN8xRW&noteId=BJLmN8xRW http://faculty.washington.edu/mdecock/papers/byu2018a.pdf

لماذا "Degas"؟

  • لأنه من الممتع أكثر العمل على مشروع له اسم، بدلاً من "كاشف DGA" أو شيء من هذا القبيل.
  • ربما تسمية المشروع على اسم رسام انطباعي سيجعله يبدو أكثر إثارة للإعجاب؟
  • كانت النتيجة الأولى من خوارزمية تسمية Samba الكلاسيكية ( egrep -i '^d.*g.*a.* /usr/share/dict/words )

للتسجيل، أنا أنطقها "de-gah"، كما في إدغار ديغا، وليس "de-gas"، كما في "إزالة كل الغاز."

تنزيل الأداة