Home/Hire/مساهمات في أمان NodeSecure (مفتوح المصدر)

Case Study · الربع الأول 2026

TypeScriptتحليل ASTاكتشاف SSRFNode.jsأمانمفتوح المصدر

مساهمات في أمان NodeSecure (مفتوح المصدر)

بحث أمني · مفتوح المصدر (Open Source)

7طلبات سحب مقبولة (Merged PRs)

The Problem

مشروع NodeSecure هو نظام للفحص الأمني يستخدمه المطورون حول العالم لتحليل أكواد JavaScript و Node.js لاكتشاف الثغرات. كانت الأدوات بحاجة إلى تحسين في مجالات عدة: اكتشاف أفضل لأنماط الأكواد غير الآمنة (مثل التوليد العشوائي غير الآمن للأرقام)، واكتشاف أذكى لثغرات SSRF (تزوير الطلبات من جانب الخادم)، وتوفير إمكانية ضبط حساسية الفحص، وإعداد نظام قياس (Benchmarking) لتتبع سرعة التحليل بمرور الوقت.

The Solution

ساهم حامد بـ 7 طلبات سحب (PRs) في مستودعات NodeSecure (js-x-ray و scanner)، استهدف كل منها تحسيناً معيناً: بناء مجسات أمنية (Probes) جديدة تكتشف أنماط الأكواد الخطرة، تحسين تحليل الروابط للإيقاع بمخاطر SSRF، إضافة مستويات حساسية قابلة للتخصيص ليتمكن المطورون من الاختيار بين الفحص الصارم أو المرن، وتأسيس نظام لقياس الأداء لتقييم سرعة التحليل بشكل مستمر.

Technologies Used

  • TypeScript (جميع المساهمات)
  • تحليل شجرة البنية المجردة (AST Analysis)
  • NodeSecure js-x-ray (محرك تحليل الكود)
  • NodeSecure scanner (فاحص المشروع الكامل)
  • mitata (مكتبة قياس الأداء Benchmarking)
  • أنماط الأمان في بيئة عمل Node.js

Results

PR #452 — مجس التوليد العشوائي غير الآمن

بناء مجس ينبه المطورين عند استخدام Math.random() في سياقات أمنية حساسة، متلافياً خطأ تشفيرياً شائعاً.

PR #462 — اكتشاف ثغرات SSRF

تحسين فاحص الروابط المشبوهة للتعرف بشكل أفضل على روابط localhost وأنماط الروابط المعرضة لثغرات SSRF.

PR #456 — خيارات حساسية الفحص

إضافة وضعيات فحص صارمة ومرنة (conservative/aggressive) عبر وحدات التحليل المختلفة — دون تعطيل السلوك الافتراضي.

PR #467 — معالجات رئيسية بأسماء محددة

تطبيق نمط Named Main Handlers لتنظيم الكود وجعل المجسات تتعامل مع سيناريوهات تحقق متعددة بنظافة.

PR #468 — اكتشاف السلاسل النصية للبريد

تنفيذ جامع لعناوين البريد الإلكتروني باستخدام واجهة CollectableSet، مع 5 حالات اختبار شاملة.

PR #496 — البنية التحتية لقياس الأداء (Benchmarking)

بناء إعداد قياس أداء متكامل باستخدام mitata لتتبع أداء تحليل الـ AST عبر إصدارات NodeSecure.

What This Proves

هذه المساهمات عامة ويمكن التحقق منها على GitHub ضمن منظمة NodeSecure. وهي تُثبت قدرة حامد على العمل على أدوات أمنية حقيقية، وفهم أكواد تحليل الـ AST المعقدة، وتقديم تحسينات نظيفة ومُختبرة لمشروع إنتاجي مفتوح المصدر يستخدمه مطورون في جميع أنحاء العالم.

إذا كنت بحاجة إلى خبرة أمنية لحماية تطبيقك — مراجعة كود، فحص ثغرات، أو هيكلة أمنية — حامد يمكنه المساعدة.