43 أسطر
4.7 KiB
Markdown
43 أسطر
4.7 KiB
Markdown
# Privacy & Security Assessment Report: mithal.space
|
|
**Auditor:** Mazen | **Role:** SecOps Engineer | **Date:** July 2026
|
|
|
|
## 1. DevTools Inspection Findings
|
|
|
|
فحص تقني مباشر لـ `mithal.space` باستخدام Chrome DevTools (Network, Application, Security tabs)، بالأدلة:
|
|
|
|
- **Cookies:** لا توجد أي ملفات ارتباط مسجّلة تحت `Application → Storage → Cookies` (`assets/cookies-empty.jpg`). توافق كامل مع مبدأ Privacy-by-Design.
|
|
|
|
- **Trackers:** لا توجد أي طلبات لدومينات تتبّع/إعلانات معروفة (لا Google Analytics ولا Meta Pixel) في قائمة الـ 20 طلب بالكامل (`assets/network-requests.jpg`). الاستثناء الوحيد: الـ CSP بترخّص الاتصال بعدة نطاقات فرعية على `*.hosted.ghaymah.systems` (searxng-service, translate, perplexica...) — دي مش Trackers، دي **خدمات Backend مملوكة للموقع نفسه** (بنية Meta-search/AI ذاتية الاستضافة)، فمفيش تسريب لطرف ثالث حقيقي هنا.
|
|
|
|
- **HTTPS/TLS:** شهادة صالحة وموثوقة من Let's Encrypt (Issued: 17 June 2026)، الاتصال بـ **TLS 1.3** باستخدام `X25519MLKEM768` — وده Hybrid Key Exchange بيدمج تشفير كلاسيكي مع خوارزمية مقاومة للحوسبة الكمية (Post-Quantum Ready)، حماية استباقية ضد هجمات "Harvest Now, Decrypt Later" (`assets/certificate.jpg`, `assets/security-overview.png`).
|
|
|
|
- **Security Headers:** الموقع مطبّق `X-Frame-Options: DENY`، `X-Content-Type-Options: nosniff`، `X-XSS-Protection`، وكمان `Permissions-Policy: geolocation=(), microphone=(), camera=()` (تعطيل كامل لهذه الـ APIs)، و`Referrer-Policy: strict-origin-when-cross-origin`. كمان لاحظت وجود `X-Ratelimit-Limit/Remaining/Reset` — يعني فيه Rate Limiting فعّال على مستوى الـ API (`assets/response-headers.jpg`). **الناقص الحقيقي: `Strict-Transport-Security` (HSTS) مش موجودة**، فالموقع عرضة لـ SSL Stripping في أول زيارة.
|
|
|
|
- **CSP:** موجودة ومفصّلة، وفيها `frame-ancestors 'none'` (طبقة حماية إضافية من الـ Clickjacking، تكرار جيد مع X-Frame-Options). لكن فيها نقطتين ضعف حقيقيتين (`assets/csp-header.jpg`):
|
|
1. `'unsafe-inline'` موجودة في كل من `script-src` و`style-src`، بتضعف الحماية من XSS.
|
|
2. `style-src`/`script-src` بترخّص تحميل موارد من `https://fonts.gstatic.com` (دومين جوجل)، وده تسريب لعنوان IP الزائر لجوجل عند تحميل الخطوط.
|
|
3. **الأخطر:** واحد من روابط الـ `connect-src` (خدمة `perplexica`) مسموح ليها تتصل عبر `http://` مش `https://` — يعني موقع مؤمّن بالكامل بـ TLS 1.3 لكن سياسة الـ CSP نفسها بتفتح ثغرة Mixed Content / Downgrade على endpoint واحد.
|
|
|
|
---
|
|
|
|
## 2. Privacy Comparison
|
|
|
|
| الميزة | Google | DuckDuckGo | mithal.space |
|
|
| :--- | :--- | :--- | :--- |
|
|
| استخدام الكوكيز | كثيف جداً | شبه معدوم | **معدوم تماماً** |
|
|
| اعتماد على أطراف خارجية | خوادم داخلية | خوادم داخلية | فقط خط جوجل واحد (`fonts.gstatic.com`) |
|
|
| HSTS مفروض | نعم | نعم | **لا** |
|
|
| CSP صارمة (بدون unsafe-inline) | نعم | نعم | لا (موجودة لكن بها ثغرات) |
|
|
| Permissions-Policy | جزئي | نعم | **نعم (شامل)** |
|
|
| المستوى العام | منخفض | عالي جداً | عالي، مع ثلاث نقاط ضعف قابلة للإصلاح |
|
|
|
|
---
|
|
|
|
## 3. Recommended Security Improvements
|
|
|
|
1. **فرض HTTPS بلا استثناء:** إضافة `Strict-Transport-Security: max-age=63072000; includeSubDomains; preload`، وفي نفس الوقت تحويل رابط `perplexica` في الـ `connect-src` من `http://` إلى `https://` — الاتنين وجهين لنفس المشكلة (فرض التشفير على كل الاتصالات بلا استثناء).
|
|
2. **تشديد الـ CSP:** إزالة `'unsafe-inline'` من `script-src` و`style-src`، واستخدام Nonces أو Hashes بدلها، لإغلاق الباب أمام أي XSS حتى لو حصل حقن كود.
|
|
3. **استضافة الخطوط ذاتياً بالكامل:** نقل ملفات الخطوط لتُخدَّم من نفس نطاق `mithal.space` (أو من بنية غيمة التحتية) بدل `fonts.gstatic.com`، عشان نقفل آخر تسريب IP متبقّي لطرف خارجي.
|
|
|
|
---
|