System Security & Configuration Overview

Technical overview of the current architecture, security controls, and active configuration for the Ministry of Defense web platform.

System
Syrian Ministry of Defense Web Platform
Document Date
March 2026
Prepared By
Development Team
Audience
Cyber Security Review Team

1. Purpose / الغاية من الوثيقة

High-level context and intended use of this document.

English

This document provides a technical overview of the current architecture, system configuration, and security controls implemented in the Ministry of Defense web platform. It is intended to support cyber security review, validation, and risk assessment activities.

العربية

توضح هذه الوثيقة البنية التقنية الحالية للنظام، والإعدادات التشغيلية، ووسائل الحماية المطبقة ضمن منصة وزارة الدفاع. والغرض منها دعم فريق الأمن السيبراني في المراجعة الفنية وتقييم الضوابط والمخاطر.

2. General Architecture / البنية العامة للنظام

Main components and how they interact.

Public Landing Website

Angular-based public website serving institutional content and public pages.

Website Domain: https://mod-cli.gift-ly.net

Administrative Dashboard

Angular-based administration panel for authenticated staff and content management.

Dashboard Domain: https://mod-dash.gift-ly.net

Backend API

ASP.NET Core REST API serving both the landing website and the dashboard.

API Domain: https://mod.gift-ly.net

Request Flow: Browser → Reverse Proxy (Nginx) → ASP.NET Core API → Database

English

The platform is structured as a three-part system consisting of a public website, an internal dashboard, and a shared backend API. Both frontend applications communicate with the backend over HTTPS.

العربية

يتكون النظام من ثلاثة أجزاء رئيسية: موقع عام للزوار، ولوحة تحكم داخلية، وخادم خلفي موحد. ويتواصل كل من الموقع العام ولوحة التحكم مع الخادم الخلفي عبر HTTPS.

3. Technology Stack / التقنيات المستخدمة

Core technologies currently in use.

Layer Technology الوصف
Backend ASP.NET Core 9, Entity Framework Core, SQL Server, ASP.NET Identity, JWT الخادم الخلفي وقاعدة البيانات والمصادقة
Landing Website Angular 20 الموقع العام الخاص بالزوار
Dashboard Angular 20 لوحة التحكم الخاصة بالإدارة
Hosting Kestrel + Nginx Reverse Proxy بيئة الاستضافة والتوجيه

4. Authentication & Access Control / المصادقة والتحكم بالوصول

Authentication model and account protection.

English

  • The administrative dashboard uses JWT-based authentication.
  • User credentials are validated through ASP.NET Identity.
  • JWT tokens are issued after successful login.
  • Refresh tokens are used to renew sessions.
  • Logout clears the stored refresh token from the database.
  • Role-based authorization is enforced on protected endpoints.

العربية

  • تستخدم لوحة التحكم آلية مصادقة تعتمد على JWT.
  • يتم التحقق من بيانات الدخول من خلال ASP.NET Identity.
  • يصدر الخادم رمز JWT بعد نجاح عملية تسجيل الدخول.
  • يتم استخدام Refresh Token لتجديد الجلسة.
  • عند تسجيل الخروج يتم إلغاء صلاحية Refresh Token المخزن.
  • يتم فرض الصلاحيات على نقاط الوصول المحمية حسب الدور.
Account Protection: 5 failed login attempts trigger a 15-minute lockout. Password policy requires minimum length, uppercase characters, and numeric characters.

5. CORS & Domain Communication / إعدادات CORS والتواصل بين النطاقات

Cross-origin communication between the landing site, dashboard, and API.

Item Current Configuration الإعداد الحالي
Allowed Origins https://mod-cli.gift-ly.net, https://mod-dash.gift-ly.net السماح للموقع العام ولوحة التحكم فقط
Methods AllowAnyMethod() السماح بجميع أنواع الطلبات
Headers AllowAnyHeader() السماح بجميع الترويسات
Credentials AllowCredentials() السماح ببيانات الاعتماد عند الحاجة
The backend API is configured to allow the public landing site and the admin dashboard to communicate with it from their production domains only.

6. Rate Limiting / تحديد عدد الطلبات

Protection against abuse, automated requests, and excessive traffic.

English

  • Rate limiting is implemented using AspNetCoreRateLimit.
  • Different limits are applied to authentication, public landing, and admin endpoints.
  • Public landing traffic is configured with more permissive limits to support normal browsing.
  • Authentication endpoints have stricter limits to reduce brute-force attempts.
  • Administrative endpoints use separate limits appropriate for dashboard usage.

العربية

  • تم تطبيق تحديد عدد الطلبات باستخدام AspNetCoreRateLimit.
  • تم فصل القواعد بين واجهات المصادقة والواجهات العامة وواجهات الإدارة.
  • تم منح واجهات الموقع العام حدوداً أوسع لتجنب التأثير على تصفح الزوار.
  • تم تشديد حدود طلبات تسجيل الدخول للحماية من محاولات التخمين.
  • تم تخصيص حدود مختلفة لواجهات لوحة التحكم بما يناسب الاستخدام الإداري الطبيعي.
Any future adjustment to rate limits should be validated against real frontend request patterns to avoid false positives for legitimate users.

7. Logging & Monitoring / التسجيل والمراقبة

Active logging mechanisms in the backend.

API Request Logs

Track API requests, paths, status codes, durations, and related operational information.

Visitor Logs

Track public visitor activity for landing endpoints.

Audit Logs

Track create, update, and delete operations at the entity level.

Security Attempt Logs

Track suspicious or blocked requests such as bot-like traffic or flood patterns.

English

The system maintains multiple logging layers to support troubleshooting, operational monitoring, and security review.

العربية

يحتفظ النظام بعدة أنواع من السجلات بهدف دعم المراقبة التشغيلية، والتحقيق الفني، ومراجعة الحوادث الأمنية.

8. Security Headers / رؤوس الأمان

HTTP response headers applied by the backend.

Header Purpose الغرض
X-Content-Type-Options Prevents MIME type sniffing منع المتصفح من تخمين نوع الملف
Referrer-Policy Controls referrer information sent by the browser التحكم بالمعلومات المرجعية المرسلة من المتصفح
Permissions-Policy Restricts browser features such as camera and microphone تعطيل أو تقييد خصائص المتصفح غير المطلوبة
Content-Security-Policy Reduces script injection and content-loading risks تقليل مخاطر تحميل المحتوى غير الموثوق أو حقن السكربتات
Strict-Transport-Security Forces HTTPS in supported browsers فرض استخدام HTTPS
X-Frame-Options Helps reduce clickjacking risk تقليل خطر تضمين الموقع ضمن إطارات خارجية

9. File Upload & Static Files / رفع الملفات والملفات الثابتة

Controls applied to uploaded files and public asset delivery.

English

  • Uploaded files are validated before being saved.
  • Allowed extensions are restricted to approved image types.
  • Magic-byte validation is used to verify real file content.
  • Path traversal protection is implemented.
  • Maximum upload size is limited to 10 MB.
  • Public images are served through configured static file handling.

العربية

  • يتم التحقق من الملفات قبل حفظها على الخادم.
  • يتم السماح فقط بامتدادات الصور المعتمدة.
  • يتم استخدام فحص المحتوى الفعلي للملف عبر Magic Bytes.
  • تمت إضافة حماية ضد محاولات Path Traversal.
  • الحد الأقصى لحجم الملف المرفوع هو 10 ميغابايت.
  • يتم تقديم الصور العامة من خلال إعدادات static files المعتمدة.

10. Error Handling / معالجة الأخطاء

Safe handling of exceptions in production.

English

A global exception middleware is used to handle unhandled errors. Internal details are logged on the server side, while the client receives a controlled and safe response format.

العربية

يتم استخدام Global Exception Middleware لمعالجة الأخطاء غير المعالجة. ويتم تسجيل تفاصيل الخطأ داخلياً، بينما يحصل المستخدم على استجابة آمنة ومنضبطة دون كشف معلومات حساسة من الخادم.

11. Log Retention / سياسة الاحتفاظ بالسجلات

Automatic cleanup of older logs.

Log Type Retention Period مدة الاحتفاظ
Visitor Logs 30 Days 30 يوماً
API Request Logs 60 Days 60 يوماً
Audit Logs 180 Days 180 يوماً
Cleanup is handled automatically by a scheduled background process to prevent uncontrolled log growth.

12. Current Security Controls / الضوابط الأمنية الحالية

Summary of implemented controls.

English

  • HTTPS enforcement
  • HSTS enabled in production
  • JWT authentication
  • Account lockout
  • CORS origin restriction
  • Rate limiting
  • Security headers
  • Upload validation
  • Global exception handling
  • API, visitor, and audit logging

العربية

  • فرض استخدام HTTPS
  • تفعيل HSTS في بيئة الإنتاج
  • المصادقة عبر JWT
  • قفل الحساب بعد المحاولات الفاشلة
  • تقييد الوصول بين النطاقات عبر CORS
  • تحديد عدد الطلبات
  • إضافة رؤوس أمان للردود
  • التحقق من الملفات المرفوعة
  • معالجة مركزية للأخطاء
  • تسجيل طلبات API والزوار والتعديلات

13. Items Recommended for Cyber Security Review / بنود مقترحة للمراجعة الأمنية

Areas that should be validated by the cyber security team.

English

  • JWT signing key management and storage
  • Authentication and token refresh workflow
  • CORS validation and origin restrictions
  • Rate limiting rules under real-world traffic
  • File upload validation and SVG handling
  • Static file exposure review
  • Security headers validation
  • Privacy impact of logs and visitor data

العربية

  • إدارة مفتاح توقيع JWT ومكان تخزينه
  • مراجعة تدفق المصادقة وتجديد الجلسات
  • التحقق من CORS وتقييد النطاقات المسموحة
  • اختبار فعالية Rate Limiting تحت الاستخدام الحقيقي
  • مراجعة أمان رفع الملفات وخاصة SVG
  • مراجعة إمكانية الوصول إلى الملفات الثابتة
  • فحص صحة Security Headers
  • مراجعة تأثير السجلات وبيانات الزوار على الخصوصية

14. Conclusion / الخلاصة

Summary statement for review handoff.

English

The system currently includes multiple layers of technical and operational protection, including HTTPS enforcement, JWT-based authentication, rate limiting, structured logging, upload validation, and security headers. A dedicated cyber security review is recommended to verify the current implementation, validate assumptions, and identify any remaining risks.

العربية

يتضمن النظام حالياً عدة طبقات من الحماية التقنية والتشغيلية، مثل فرض HTTPS، والمصادقة عبر JWT، وتحديد عدد الطلبات، والسجلات المنظمة، والتحقق من الملفات المرفوعة، ورؤوس الأمان. ويوصى بإجراء مراجعة أمنية متخصصة للتأكد من سلامة التطبيق الحالي واكتشاف أي مخاطر متبقية أو نقاط تحتاج إلى تحسين.