
isms-builder v1.37.2
نظام إدارة أمن المعلومات المستضاف ذاتيًا — ISO 27001, NIS2, GDPR/DSGVO, BSI IT-Grundschutz

ISMS Builder
نظام إدارة أمن المعلومات مستضاف ذاتيًا — مفتوح المصدر، لا يتطلب سحابة
⚠️ تحذير أمني: مستودعات مزيفة ونسخ توزّع برمجيات خبيثة
لا يحتوي ISMS Builder على "إصدارات" مجمّعة أو مثبّتات أو ملفات ZIP قابلة للتنزيل — المصدر الشرعي الوحيد هو هذا المستودع، عن طريق الاستنساخ أو التنزيل المباشر من GitHub كشفرة مصدرية عادية. نحن على علم بوجود مستودع خبيث واحد على الأقل ينتحل صفة هذا المشروع (README مزيف، وزر "تنزيل" وهمي يشير إلى ملف ZIP متنكّر بهيئة لقطة شاشة، يحتوي على محمّل برمجيات خبيثة لنظام Windows — سلسلة حمولة
.cmd→.exe→ Lua-DLL). لا تنزّل أو تشغّل أي ملف ZIP أو مثبّت أو exe باسم "isms_builder" من أي مكان آخر غير هذا المستودع. إذا وجدت مستودعًا أو موقعًا مشبوهًا ينتحل صفة هذا المشروع، فيرجى فتح issue أو مناقشة حتى نتمكن من التنبيه إليه.
الحالة: تطوير نشط — ليس منتجًا نهائيًا بعد. الوحدات الأساسية تعمل وتُستخدم فعليًا، لكن بعض الميزات غير مكتملة ولا تزال المنصة في طور النمو. المساهمات والملاحظات والاختبارات الواقعية مرحّب بها جدًا — وهذا هو بالضبط سبب فتح المصدر لهذا المشروع.
ما هو ISMS Builder؟
ISMS Builder هو منصة ويب مستضافة ذاتيًا لإدارة نظام إدارة أمن المعلومات (ISMS). يغطي دورة الامتثال الكاملة — من صياغة السياسات إلى أدلة التدقيق — لمعايير ISO 27001:2022 وNIS2 وGDPR/DSGVO وBSI IT-Grundschutz وأطر أخرى.
لا سحابة. لا رسوم SaaS. بياناتك تبقى على خادمك.
مصمَّم للشركات الصغيرة والمتوسطة وفرق تقنية المعلومات والاستشاريين الذين يحتاجون أداة ISMS حقيقية دون عقد مورد بتكلفة خماسية الأرقام.
الاستخدام المقصود والنطاق
بدأ هذا المشروع كأداة عمل لممارس ISMS واحد ثم تطوّر من هناك. وهو مفتوح المصدر لأن العمل قد يكون مفيدًا للآخرين — وليس لأنه منتج تجاري مقنّع. الوضوح الصريح في هذا الأمر يساعدك على تحديد ما إذا كان يناسب وضعك.
لأي غرض صُمم. فريق ISMS صغير — غالبًا شخص واحد، وأحيانًا عدد قليل — يقوم بتأليف وصيانة توثيق نظام الإدارة: السياسات، المخاطر، الأصول، الضوابط، الأدلة. من المتوقع أن يبقى عدد الأشخاص الذين يحتاجون حسابًا صغيرًا. أما الوصول إلى جمهور واسع فيتم دون حسابات: تُرسَل إقرارات السياسات كروابط قائمة على رموز (token)، فيقرأ المستلمون المستند ويؤكدونه دون تسجيل الدخول أبدًا، ودون الظهور في أي قائمة مستخدمين.
ما يتوقعه منك. ISMS Builder مستضاف ذاتيًا، وكل ما يترتب على ذلك يقع على عاتقك: النشر، TLS، التحصين، النسخ الاحتياطية، التحديثات، التحكم في الوصول، والتزامات حماية البيانات مهما كان ما تخزّنه فيه. يوفّر المشروع إعدادًا افتراضيًا معقولًا، وليس خدمة مُدارة.
ما ليس كذلك. لا يوجد عرض SaaS مستضاف، ولا عقد دعم تجاري، ولا اتفاقية مستوى خدمة. إنه ليس منتج استضافة متعددة المستأجرين (multi-tenant). لا يمنحك شهادة امتثال لأي معيار، وليس استشارة قانونية — إنه يساعدك على تنظيم العمل وتقديم الأدلة عليه، لكن التقييم يبقى مسؤوليتك أنت ومدقّقك.
من يصونه. شخص واحد، إلى جانب وظيفة بدوام كامل. تتم قراءة القضايا (issues) والمناقشات والرد عليها، عادةً في غضون أيام؛ وتحظى تقارير الأمان بالأولوية. طلبات الميزات مرحّب بها وتشكّل خارطة الطريق فعليًا، لكنها تتنافس على أمسيات محدودة. إذا كانت مؤسستك تعتمد على جدول زمني ثابت أو استجابة مضمونة، فإن اللجوء إلى مورد تجاري هو التوصية الصادقة — وهذا ليس سببًا لتجنّب المشروع، بل فقط سببًا للتخطيط بواقعية.
لقطات الشاشة
| تسجيل الدخول | لوحة التحكم |
|---|---|
![]() | ![]() |
| بيان القابلية للتطبيق | إدارة المخاطر |
|---|---|
![]() | ![]() |
| GDPR وحماية البيانات | إدارة الأصول |
|---|---|
![]() | ![]() |
| الإرشادات والتوثيق | التقارير |
|---|---|
![]() | ![]() |
شغّل
npm startوافتحhttps://localhost:3000لاستكشاف مجموعة البيانات التجريبية الكاملة محليًا.
نظرة عامة على الميزات
| الوحدة | الوصف | المعايير |
|---|---|---|
| إدارة السياسات | عمليات CRUD للقوالب، التحكم في الإصدارات، دورة الحياة (مسودة → مراجعة → معتمدة → مؤرشف)، التسلسل الهرمي للمساحات، المرفقات | ISO 27001 §5 |
| بيان القابلية للتطبيق | 313 ضابطًا عبر 8 أطر، تحرير مباشر في الصفحة، تحليل الفجوات، الربط المتقاطع | ISO 27001 A / BSI / NIS2 / EUCS / EUAI / ISO 9001 / CRA |
| إدارة المخاطر | سجل المخاطر، خطط المعالجة، دور المدقق | ISO 27001 §6.1 |
| أهداف الأمان | تتبع مؤشرات الأداء (KPI) مع أشرطة التقدم، التكامل مع التقويم | ISO 27001 §6.2 |
| GDPR والخصوصية | VVT، عقود AV، DSFA، TOMs، قائمة انتظار DSAR، مؤقّت 72 ساعة، سجل الحذف مع تنبيهات البريد الإلكتروني | DSGVO Art. 13–35 |
| إدارة الأصول | سجل الأصول، أنواع أصول قابلة للتحرير، أهداف الحماية (CIA + الأصالة) مع توريث التبعيات، مستويات التصنيف، تتبع نهاية العمر (EoL) | ISO 27001 A.5.9–5.12 |
| BCM / BCP | تحليل تأثير الأعمال، خطط الاستمرارية، التمارين | ISO 27001 A.5.29–5.30 / NIS2 |
| سجلات التدريب | كتالوج التدريب، تتبع الإنجاز، رفع الشهادات | ISO 27001 A.6.3 |
| إدارة المورّدين | سجل البائعين، جدولة التدقيق، تقييم المخاطر | ISO 27001 A.5.19–5.22 |
| القانونية والعقود | العقود، اتفاقيات عدم الإفصاح (NDA)، سياسات الخصوصية، تقويم تواريخ الانتهاء | |
| صندوق وارد الحوادث | صندوق وارد CISO + نموذج إبلاغ عام (بدون الحاجة إلى تسجيل الدخول) | NIS2 / BSI |
| الحوكمة | مراجعات الإدارة، تتبع الإجراءات | ISO 27001 §9.3 |
| التقارير | مصفوفة الامتثال (ضابط × كيان)، تقرير الفجوات، دورات المراجعة، تصدير CSV | |
| نتائج التدقيق | سجل النتائج (IST→SOLL→المخاطر→التوصيات)، خطط الإجراءات، تتبع الخطورة/الحالة، مرجع FIND-YYYY-NNNN | ISO 27001 §9.2 |
| إمكانية التتبع | كل سجل يرتبط بضوابط SoA ووثائق السياسات — بشكل ثنائي الاتجاه | |
| البحث الدلالي | بحث محلي بالذكاء الاصطناعي عبر Ollama (nomic-embed-text) مع خيار احتياطي بالكلمات المفتاحية | |
| تعدد الكيانات | شجرة الهيكل التنظيمي، قابلية تطبيق الضوابط والسياسات لكل كيان | |
| واجهة متعددة اللغات وبيانات تجريبية | واجهة ومحتوى تجريبي كامل بـ 🇩🇪 DE / 🇬🇧 EN / 🇫🇷 FR / 🇳🇱 NL؛ يتحكم المشرف في اللغات المتاحة |
⚠ مهم: ضوابط ISO تتطلب تثبيتًا يدويًا من قِبل المشرف
ISO 27001:2022 وISO 9000:2015 وISO 9001:2015 معايير محمية بحقوق النشر تصدرها المنظمة الدولية للتوحيد القياسي (ISO، © ISO). تعريفات الضوابط (العناوين والأوصاف ونص المتطلبات) غير مضمّنة في هذا البرنامج ويجب عدم إعادة توزيعها دون ترخيص ISO صالح.
ماذا يعني هذا عمليًا: وحدات SoA الخاصة بـ ISO 27001 وISO 9000 وISO 9001 تُوفَّر دون محتوى الضوابط. يجب على المشرف استيراد الضوابط يدويًا قبل أن تصبح هذه الأطر قابلة للاستخدام:
- احصل على نسخة مرخَّصة من المعيار من iso.org أو جهة وطنية معتمدة
- جهّز ملف JSON بتعريفات الضوابط الخاصة بك (التنسيق موثّق في
scripts/import-iso-controls.sh) - شغّل سكربت الاستيراد:
bash scripts/import-iso-controls.sh path/to/iso-controls.json - أعد تشغيل خادم ISMS Builder
الأطر المضمّنة افتراضيًا (لا تتطلب ترخيص ISO): BSI IT-Grundschutz وEU NIS2 وEUCS وEU AI Act وCRA مبنية على تشريعات الاتحاد الأوروبي ومنشورات اتحادية ألمانية متاحة للعموم، وهي مثبّتة بالكامل مسبقًا.
تشغيل وحدات أطر ISO دون ترخيص صالح للمعيار المعني هو المسؤولية الوحيدة للمشغّل. لا يتحمل مشروع ISMS Builder ومساهموه أي مسؤولية عن الاستخدام غير المرخّص لمحتوى محمي بمعايير ISO.
البدء السريع
git clone https://github.com/coolstartnow/isms-builder.git
cd isms-builder
npm install
cp .env.example .env # set JWT_SECRET to a long random string
npm start # http://localhost:3000
سجّل الدخول باستخدام [email protected] / adminpass. عند أول تسجيل دخول ستُطلب منك لغة البيانات التجريبية (🇩🇪 DE / 🇬🇧 EN / 🇫🇷 FR / 🇳🇱 NL) أو البدء بنظام فارغ. غيّر كلمة مرور المشرف فورًا بعد ذلك.
للاستخدام في الإنتاج مع HTTPS:
# .env
JWT_SECRET=your-very-long-random-secret
STORAGE_BACKEND=json
SSL_CERT_FILE=/etc/ssl/certs/your.crt
SSL_KEY_FILE=/etc/ssl/private/your.key
هل تنتقل إلى الإنتاج بعد التقييم بالبيانات التجريبية؟ شغّل أداة التحضير للإنتاج التفاعلية بدلًا من البدء بتثبيت جديد — فهي تمسح المحتوى التجريبي/الاختباري وحدة بوحدة (أو كله دفعة واحدة)، بحيث لا تضطر إلى إعادة إدخال أي بيانات حقيقية أدخلتها بالفعل (مثل المخاطر والأصول):
bash stop.sh
node scripts/prepare-production.js
bash start.sh
تنشئ الأداة دائمًا نسخة احتياطية (data.bak.<timestamp>/، بجوار دليل data/ الخاص بك) قبل
تغيير أي شيء، ولا تلمس STORAGE_BACKEND أبدًا — بخلاف إجراء "Demo Reset" (إعادة تعيين البيانات
التجريبية) الخاص بالمشرف داخل التطبيق، المخصّص لمثيل العرض التجريبي والذي ما زال يتحوّل إلى
sqlite لأسباب تاريخية (انظر Issue #42).
Docker
docker compose up -d --build
# App runs at http://localhost:3000
المتطلبات
- Node.js 18+ (تم الاختبار على: 18، 20، 22)
- npm 9+
- (اختياري) Docker + Docker Compose
- (اختياري) Ollama للبحث الدلالي المحلي بالذكاء الاصطناعي
الإعداد (.env)
| المتغير | الافتراضي | الوصف |
|---|---|---|
JWT_SECRET | (مطلوب) | السر لتوقيع JWT — استخدم 32+ حرفًا عشوائيًا |
PORT | 3000 | منفذ الاستماع HTTP/HTTPS |
STORAGE_BACKEND | json | json (تطوير/عرض تجريبي) أو sqlite (إنتاج) |
SSL_CERT_FILE | — | المسار إلى شهادة TLS → يتيح HTTPS |
SSL_KEY_FILE | — | المسار إلى المفتاح الخاص TLS |
DATA_DIR | ./data | تجاوز دليل البيانات (وحدات تخزين Docker) |
SMTP_HOST | — | خادم SMTP لتنبيهات البريد الإلكتروني |
SMTP_PORT | 587 | منفذ SMTP |
SMTP_USER | — | اسم مستخدم SMTP |
SMTP_PASS | — | كلمة مرور SMTP |
SMTP_FROM | — | عنوان المرسل للإشعارات |
البنية المعمارية
server/
index.js — Express app setup, router mounts
auth.js — JWT auth, RBAC ranks, session
routes/ — 17 Express route modules (one per domain)
db/ — Data stores (jsonStore / sqliteStore / orgSettingsStore / …)
ai/ — Semantic search (embedder, embeddingStore, lexicalSearch)
reports.js — Report generation logic
ui/
index.html — SPA shell (Atlassian Dark Theme)
app.js — All render functions, ~6000 lines vanilla JS
style.css — CSS variables, dark theme
data/ — JSON files / SQLite DB (gitignored)
docs/
ISMS-build-documentation.md — Full architecture reference
architecture/ — C4 diagrams, data model, OpenAPI 3.0.3 spec
tests/ — Jest + Supertest (176 tests, --runInBand)
- المصادقة: ملف تعريف ارتباط JWT (
sm_session)، كلمات مرور bcrypt، TOTP للمصادقة الثنائية (2FA) (قابلة للفرض على مستوى المؤسسة) - RBAC:
reader→editor/dept_head→contentowner/auditor→admin - التخزين المستمر: ملفات JSON (افتراضي/عرض تجريبي) أو SQLite عبر
better-sqlite3 - الذكاء الاصطناعي: Ollama محلي اختياري (nomic-embed-text)؛ البحث بالكلمات المفتاحية متاح دائمًا كخيار احتياطي
- سجل التدقيق: كل عملية إنشاء/تحديث/حذف/تسجيل دخول تُسجَّل، مع إمكانية التصفية والتصدير
انظر docs/architecture/ لمخططات C4 ونموذج البيانات الكامل ومواصفات OpenAPI 3.0.3 (أكثر من 80 نقطة نهاية).
تشغيل الاختبارات
ملاحظة: مجموعة الاختبارات الموجودة في
tests/هي اختبارات التطوير الشخصية للمؤلف، وتُشحَن مع المشروع من أجل الشفافية. وهي ليست جزءًا من التطبيق نفسه وليست مطلوبة لتشغيل التطبيق. تغطي الاختبارات سلوك واجهة API الداخلية وتستخدم بيانات اعتماد اختبارية مثبتة في الكود لا وجود لها إلا في بيئة الاختبار المعزولة — ولا علاقة لها بأي بيانات إنتاج أو بيانات تجريبية.
npm test # runs all 423 tests
npm run preflight # exactly what CI gates on (tests + pinning + audit)
npm test -- --verbose # with test names
تستخدم الاختبارات دليلًا مؤقتًا معزولًا — لا يتم المساس بأي بيانات إنتاج.
المساهمة
المساهمات مرحّب بها جدًا! انظر CONTRIBUTING.md لمعرفة:
- إعداد بيئة التطوير (5 دقائق حتى أول تشغيل للاختبارات)
- أسلوب الكود والأعراف المتبعة
- كيفية فتح issue أو PR جيد
وجدت ثغرة أمنية؟ يرجى عدم فتح issue عام — استخدم الإبلاغ الخاص عن الثغرات. يصف SECURITY.md النطاق والملاذ الآمن وما يمكن توقعه بواقعية.
قضايا البداية الجيدة موسومة بـ good first issue في متتبع القضايا.
خارطة الطريق
| الحالة | الميزة |
|---|---|
| ✅ تم | البحث الدلالي (Ollama / nomic-embed-text) |
| ✅ تم | الواجهة الخلفية SQLite وDocker وCI/CD |
| ✅ تم | تنبيهات البريد الإلكتروني لسجل حذف GDPR |
| ✅ تم | حزم تجريبية متعددة اللغات (DE / EN / FR / NL) |
| ✅ تم | وحدة نتائج التدقيق مع خطط الإجراءات (V 1.37.2.0) |
| ✅ تم | ترجمات الإرشادات FR/NL + إعدادات اللغات للمشرف (V 1.37.2.0) |
| ✅ تم | الواجهة الخلفية MariaDB/MySQL (STORAGE_BACKEND=mariadb، V 1.37.2.1) |
| ✅ تم | الماسح → مسودة مخاطر (استيراد XML + PDF من Greenbone/OpenVAS، V 1.37.2.0) |
| ✅ تم | إقرار السياسات — يؤكد الموظفون السياسات رقميًا مع سجل تدقيق (V 1.37.2.0) |
| ✅ تم | عمليات CRUD للإرشادات — إنشاء وتحرير ورفع التوثيق الخاص بك (V 1.37.2.0) |
| ✅ تم | البحث في الإرشادات — بحث نصي كامل عبر الفئات مع مقتطف (V 1.37.2.0) |
| ✅ تم | أهداف حماية الأصول — CIA + الأصالة (1–4)، التبعيات ووراثة مبدأ الحد الأقصى وفق BSI (V 1.37.2.0) |
| ✅ تم | قائمة حوكمة NIS2 وفق المادة 21 (30 بندًا) والمواعيد النهائية للإبلاغ وفق المادة 23 مع تنبيهات تلقائية (V 1.37.2.0) |
| 🔜 التالي | مساعد سياسات بالذكاء الاصطناعي — يكتب Ollama محتوى السياسة انطلاقًا من العنوان + الإطار |
| 🔜 التالي | تقارير مجدولة — تقرير امتثال أسبوعي/شهري يُرسَل عبر البريد الإلكتروني |
| 🔜 التالي | واجهة خلفية PostgreSQL |
| 🔜 التالي | كشف الشذوذ في سجل التدقيق (معالجة LLM بالجملة) |
| 🚀 لاحقًا | تسجيل كمّي للمخاطر (قيم باليورو، مستوحى من FAIR) |
| 🚀 لاحقًا | بوابة تعاون المدققين — وصول خارجي للقراءة فقط للمدققين |
| 🚀 لاحقًا | تكامل ownCloud / Nextcloud |
| 🚀 لاحقًا | تحليل فجوات السياسات (LLM) |
| 🏁 V 2.x | فئات إرشادات قابلة للتكوين — يحدد المشرفون فئات مخصصة (مثل سير العمل والمستندات التنظيمية) |
عن المؤلف
Claude Hecker يعمل في مجال تقنية المعلومات منذ أكثر من 35 عامًا. بعد نحو 15 عامًا في منصب CIO، انتقل إلى أدوار CISO ومسؤول حماية البيانات (DSO/DSB). خلال مسيرته، صمّم ونفّذ بنية تحتية لتقنية المعلومات على مستوى المؤسسة واتصالًا بالشبكات واسعة النطاق (VPN، MPLS) لشركة أوروبية كبرى — مسؤولًا عن عمليات موثوقة وآمنة عبر مواقع وولايات قضائية متعددة.
نشأ ISMS Builder مباشرة من تلك التجربة: بناء وصيانة نظام ISMS متوافق في العالم الواقعي، عبر تدقيقات حقيقية، وتحت ضغط تنظيمي حقيقي. تعكس الأداة ما يحتاجه الممارسون فعلًا — وليس ما يظن مدير منتج أنهم يحتاجونه.
لماذا المصدر المفتوح؟ تستحق الشركات الصغيرة والمتوسطة الوصول إلى منصة ISMS مناسبة دون رسوم ترخيص خماسية الأرقام. جهد الإعداد والتأهيل (onboarding) حقيقي بغض النظر عن الأداة التي تختارها — لكن لا ينبغي أن تتفاقم هذه التكلفة بسبب احتجاز البائع (vendor lock-in) أو خروج البيانات من بنيتك التحتية. يقف هذا المشروع إلى جانب حرية البرمجيات ومبدأ أن بيانات امتثالك ملك لك.
إشعار مرجعية المعايير
يشير هذا البرنامج إلى معرّفات الضوابط وعناوينها المختصرة من المعايير المنشورة لأغراض قابلية التشغيل البيني وإدارة الامتثال فقط.
- ISO/IEC 27001 وISO 9000 وISO 9001 معايير تصدرها
المنظمة الدولية للتوحيد القياسي (ISO). تعريفات الضوابط
لهذه المعايير غير مضمّنة في توزيعة هذا البرنامج —
فحقوق نشر ISO لا تسمح بإعادة توزيع نصوص الضوابط. يجب على المستخدمين
توفير ملف JSON خاص بهم (انظر القسم أعلاه و
scripts/import-iso-controls.sh). يجب الحصول على المعايير من ISO أو موزّع وطني معتمد. - مادة BSI IT-Grundschutz منشورة من قبل المكتب الاتحادي الألماني لأمن المعلومات (BSI) ومتاحة مجانًا على bsi.bund.de.
- NIS2 وCRA وEUCS وEU AI Act تشريعات صادرة عن الاتحاد الأوروبي ومتاحة للعموم عبر eur-lex.europa.eu.
الترخيص
Copyright (C) 2026 Claude Hecker
هذا البرنامج برنامج حر مرخّص بموجب GNU Affero General Public License v3.0.
إذا قمت بتشغيل نسخة معدّلة كخدمة شبكة، فيجب عليك إتاحة الكود المصدري الكامل لمستخدمي تلك الخدمة (AGPL §13).
يتضمن هذا المشروع مكونات من أطراف ثالثة بموجب تراخيص MIT وBSD-2-Clause و Apache-2.0. انظر THIRD-PARTY-LICENSES.md للإسناد الكامل ونصوص الترخيص.






