
يقوم بتنزيل وتجميع بيانات الثغرات المعروفة المستغلة من CVSS وEPSS وCISA في ملفات JSON/CSV موحدة وقاعدة بيانات SQLite. يثري تقارير ماسحات الثغرات (مثل OpenVAS) لتحديد أولويات التصحيح. يتضمن خط أنابيب Logstash اختياريًا وقالب لوحة تحكم PowerBI.
نظام تسجيل نقاط الضعف المشترك (CVSS) هو معيار صناعي مجاني ومفتوح لتقييم خطورة ثغرات أمن أنظمة الحاسوب.
نظام توقع استغلال الثغرات (EPSS) يقدّر احتمالية استغلال ثغرة برمجية في البيئة الحقيقية.
تنشر وكالة CISA قائمة بالثغرات المعروفة التي تم استغلالها.
يقوم هذا المشروع بتنزيل المعلومات من المصادر الثلاثة ودمجها في قائمة واحدة.
تظهر لك الماسحات رقم CVE ودرجة CVSS، لكنها غالبًا لا تصدّر التفاصيل الكاملة مثل "exploitabilityScore" أو "userInteractionRequired". بإضافة درجة EPSS تحصل على خيارات إضافية لاختيار ما يجب فعله أولاً والتصفية بناءً على الحدود المناسبة لبيئتك.
يمكنك استخدام المعلومات لإثراء المعلومات المقدمة من ماسح الثغرات الخاص بك مثل OpenVAS لتحديد أولويات الإصلاح.
يمكنك استخدام أدوات مثل PowerBI لدمج نتائج ماسح الثغرات مع المعلومات التي تم تنزيلها بواسطة السكريبت الموجود في المستودع.
بعد التنزيل، سيتم استخراج المعلومات المطلوبة، وتنسيقها، وإنشاء ملفات المخرجات.
سيتوفر ملف CVSS وملف EPSS وملف مشترك لجميع معلومات CVE. المخرجات متوفرة بصيغ json و csv.
بالإضافة إلى ذلك، يتم استيراد المعلومات إلى قاعدة بيانات sqlite.
لم يكن الهدف هو الأداء أو الكفاءة.
بدلاً من ذلك، كُتب السكريبت بطريقة بسيطة. تم إجراء خطوات متعددة لتسهيل الفهم والتتبع. يتم كتابة الملفات من الخطوات الوسيطة على القرص لتسهيل تعديل الأوامر حسب احتياجاتك.
يستخدم فقط bash و jq و sqlite3 ليكون مناسبًا جدًا للمبتدئين ويوضح استخدام jq.
يحتوي هذا المستودع على مجلد تجريبي يحتوي على ملف قالب PowerBI. يقوم بإنشاء لوحة تحكم يمكنك تعديلها حسب احتياجاتك.

يجب أن يكون تقرير OpenVAS بصيغة csv لكي يعمل الاستيراد.

سيستخدم PowerBI ملف CVE.json الذي تم إنشاؤه وسينشئ علاقة:

يمكنك تنزيل PowerBI مجانًا من https://aka.ms/pbiSingleInstaller ولا تحتاج إلى حساب Microsoft لاستخدامه.
يمكنك إما انتظار cron لتنفيذ سكريبت التنزيل وفقًا لجدول زمني.
أو يمكنك تنفيذ سكريبت التنزيل يدويًا عن طريق تشغيل:
docker exec -it vulnerability-tables-cron bash /opt/scripts/download.sh
هناك ثلاث حاويات Docker.
تقوم حاوية cron بتنزيل المعلومات مرة واحدة أسبوعيًا (الإثنين الساعة 06:00) وتخزين الملفات في دليل المخرجات.
تستخدم curl و wget لتنزيل الملفات. يستخدم jq للعمل مع json.
تقوم حاوية filebeat بقراءة ملفات json وإعادة توجيهها إلى حاوية logstash.
يمكن استخدام حاوية logstash لإرسالها إلى مثيل OpenSearch، أو رفعها إلى Azure Log Analytics، أو مخرجات أخرى مدعومة.
تعتبر filebeat و logstash اختياريتين ومضمنتين فقط للراحة.
سيتم إنشاء عدة ملفات مخرجات. إليك تقدير:
316K CISA_known_exploited.csv
452K CISA_known_exploited.json
50M CVSS.csv
179M CVSS.json
206M CVE.json
56M CVE.csv
6.7M EPSS.csv
12M EPSS.json
49M database.sqlite
يمكنك توقع هذه المعلومات لكل CVE:
grep -i 'CVE-2021-44228' CVE.json | jq
{
"CVE": "CVE-2021-44228",
"CVSS2_accessComplexity": "AV:N/AC:M/Au:N/C:C/I:C/A:C",
"CVSS2_accessVector": "NETWORK",
"CVSS2_authentication": "MEDIUM",
"CVSS2_availabilityImpact": "NONE",
"CVSS2_baseScore": "COMPLETE",
"CVSS2_baseSeverity": "COMPLETE",
"CVSS2_confidentialityImpact": "COMPLETE",
"CVSS2_exploitabilityScore": "9.3",
"CVSS2_impactScore": "null",
"CVSS2_integrityImpact": "8.6",
"CVSS2_vectorString": "10",
"CVSS3_attackComplexity": "null",
"CVSS3_attackVector": "null",
"CVSS3_availabilityImpact": "null",
"CVSS3_baseScore": "null",
"CVSS3_baseSeverity": "null",
"CVSS3_confidentialityImpact": "null",
"CVSS3_exploitabilityScore": "null",
"CVSS3_impactScore": "null",
"CVSS3_integrityImpact": "null",
"CVSS3_privilegesRequired": "null",
"CVSS3_scope": "null",
"CVSS3_userInteraction": "null",
"CVSS3_vectorString": "null",
"CVSS3_acInsufInfo": "null",
"CVSS3_obtainAllPrivilege": "null",
"CVSS3_obtainUserPrivilege": "null",
"CVSS3_obtainOtherPrivilege": "null",
"CVSS3_userInteractionRequired": "null",
"EPSS": "0.97095",
"EPSS_Percentile": "0.99998",
"CISA_dateAdded": "2021-12-10",
"CISA_RequiredAction": "For all affected software assets for which updates exist, the only acceptable remediation actions are: 1) Apply updates; OR 2) remove affected assets from agency networks. Temporary mitigations using one of the measures provided at https://www.cisa.gov/uscert/ed-22-02-apache-log4j-recommended-mitigation-measures are only acceptable until updates are available."
}