ما هو Checkmarx؟
Checkmarx هي منصة لاختبار أمان التطبيقات (AST) على مستوى المؤسسات مصممة لمساعدة المؤسسات على تأمين برامجها من خلال تحديد ومعالجة الثغرات الأمنية طوال دورة حياة تطوير البرمجيات (SDLC). توفر حلاً موحدًا يدمج اختبار أمان التطبيقات الثابت (SAST)، وتحليل تكوين البرامج (SCA)، واختبار أمان التطبيقات التفاعلي (IAST)، مما يمكّن المطورين من بناء كود أكثر أمانًا منذ البداية ويمنح فرق الأمان رؤية شاملة لمخاطر التطبيقات.
الميزات الرئيسية
- اختبار أمان التطبيقات الثابت (SAST): يفحص الكود المصدري لتحديد الثغرات الأمنية، مثل حقن SQL، والبرمجة النصية عبر المواقع (XSS)، والتكوينات غير الآمنة، دون الحاجة إلى تشغيل التطبيق.
- تحليل تكوين البرامج (SCA): يحدد المكونات مفتوحة المصدر ومكتبات الطرف الثالث داخل قاعدة الكود الخاصة بك، ويبلغ عن الثغرات المعروفة وقضايا الامتثال للتراخيص.
- اختبار أمان التطبيقات التفاعلي (IAST): يحلل التطبيقات في الوقت الفعلي أثناء اختبار التشغيل لاكتشاف الثغرات التي لا يمكن اكتشافها إلا من خلال التفاعل الديناميكي.
- أمان البنية التحتية ككود (IaC): يفحص قوالب IaC (مثل Terraform و Kubernetes و CloudFormation) بحثًا عن التكوينات الخاطئة التي قد تؤدي إلى فجوات أمنية في البيئات السحابية.
- تكامل سلس مع CI/CD: يتكامل مباشرة في سير عمل المطورين وخطوط أنابيب CI/CD (مثل Jenkins و GitLab و Azure DevOps)، مما يوفر ملاحظات سريعة وفحصًا آليًا.
- أفضل موقع للإصلاح (Best Fix Location): يحدد بذكاء المكان الأمثل في الكود لإصلاح ثغرات متعددة بتغيير واحد، مما يوفر وقتًا كبيرًا للمطورين.
حالات الاستخدام
- تطبيق DevSecOps: دمج فحوصات الأمان الآلية مباشرة في خط أنابيب CI/CD لاكتشاف الثغرات في وقت مبكر وبشكل متكرر.
- الامتثال والتدقيق: إنشاء تقارير لإثبات الامتثال لمعايير الصناعة مثل PCI DSS و HIPAA و GDPR.
- إدارة مخاطر المصادر المفتوحة: الحصول على رؤية للتبعيات مفتوحة المصدر لإدارة الثغرات وضمان الامتثال للتراخيص.
- تأمين التطبيقات السحابية الأصلية: تحليل الخدمات المصغرة والحاويات وقوالب IaC لتأمين البنى الحديثة القائمة على السحابة.
- فرز ومعالجة الثغرات: تزويد فرق الأمان والمطورين بمنصة مركزية لتحديد أولويات وإصلاح العيوب الأمنية بكفاءة.
البدء
Checkmarx هي منصة تجارية تتطلب التثبيت والتكوين. يتضمن مثال “Hello World” دمجها في خط أنابيب CI. فيما يلي مثال مفاهيمي لما قد تبدو عليه خطوة فحص Checkmarx في ملف gitlab-ci.yml.
```yaml
.gitlab-ci.yml
stages:
- build
- test
build_job: stage: build script: - echo “بناء التطبيق…” # خطوات البناء هنا
checkmarx_sast_scan:
stage: test
script:
- echo “تشغيل فحص SAST من Checkmarx…”
- |
/opt/cx/runCxScan.sh
–projectname=”${CI_PROJECT_NAME}”
–cxserver=”${CX_SERVER_URL}”
–cxuser=”${CX_USER}”
–cxpassword=”${CX_PASSWORD}”
–locationtype=git
–giturl=”${CI_REPOSITORY_URL}”
–branch=”${CI_COMMIT_REF_NAME}”
–preset=”Checkmarx Default”
–comment=”فحص CI من GitLab”
–asynchronous
rules:
- if: ‘$CI_COMMIT_BRANCH == “main”’
ملاحظة: هذا مثال توضيحي. سيختلف البرنامج النصي والمعلمات الفعلية بناءً على إعداد Checkmarx المحدد وبيئة CI/CD الخاصة بك. الخطوة الأولى عادة هي الاتصال بـ Checkmarx للحصول على عرض توضيحي ورخصة تجريبية.
التسعير
يعمل Checkmarx بنموذج تسعير مدفوع (قائم على الاشتراك). تعتمد التكلفة عادةً على عوامل مثل عدد المطورين، وعدد التطبيقات التي يتم فحصها، والمنتجات المحددة المطلوبة (SAST، SCA، IAST، إلخ). يقدمون عروض أسعار مخصصة للمؤسسات ولا ينشرون قائمة أسعار ثابتة بشكل عام.