
تصحيحات وقت التشغيل لـ algertc/alpr-dashboard: إصلاح مسجل غير متزامن وتخفيف CVE-2025-29927 nginx
تصحيحان جاهزان للإدراج لمشروع Docker algertc/alpr-dashboard. كلاهما قابل للنشر دون تعديل أو إعادة بناء الصورة الأساسية.
logger-fix/ — مسجل غير متزامن + تحديد سرعة التنظيفيستبدل نقل السجل المتزامن المدمج (قراءة الملف بالكامل + إعادة كتابته في كل استدعاء سجل) بكاتب appendFileSync لكل استدعاء واقتطاع مؤجل مرة واحدة في الدقيقة. كما يحد من معدل فحص تنظيف الصور لكل طلب POST.
التأثير المُقاس (حمولة صورة base64 بحجم 130 كيلوبايت، مطابقة لتنبيهات Blue Iris الحقيقية): معدلات قراءة لوحة مستدامة جعلت الخادم الأصلي غير قادر على الاستجابة (0 من 60 طلب POST اكتملت في نافذة الاختبار) تعمل الآن مع وحدة معالجة مركزية ثابتة وإنتاجية كاملة.
مخطط السطح الكامل والبيانات الأولية في logger-fix/perf/.
middleware-exploit-mitigation/ — تراكب nginx لـ CVE-2025-29927الصورة المُرسلة تستخدم Next.js 15.0.3، والتي هي عرضة لـ CVE-2025-29927 (CVSS 9.1، تجاوز المصادقة عبر رأس x-middleware-subrequest). تم إصلاحها في المصدر العلوي في Next.js >= 15.2.3، ولكن لا يمكن تصحيحها دون تحديث الصورة الأصلية.
يضيف هذا التصحيح حاوية nginx:alpine جانبية أمام التطبيق تقوم بإزالة رأس التجاوز في كل طلب موجه. لا تغييرات في التطبيق، ولا إعادة بناء للصورة.
global.__loggerInitialized) وباستخدام fileStorage.cleanupOldFiles لـ fs/promises.readdir. يعمل حالياً ضد logger.js الحالي ورمز التخزين ولكنه ليس الإصلاح "الصحيح" — الإصلاح الصحيح هو استبدال LimitedLineTransport بتنفيذ غير معطل في الكود الأساسي. هذا التصحيح هو طريقة للتشغيل بأمان حتى يحدث ذلك.كلا التصحيحين سهل التثبيت وسهل التراجع، بشكل مستقل عن إصدارات المصدر العلوي.
تم اختباره ضد algertc/alpr-dashboard:latest اعتبارًا من 2026-04. قم بتثبيت علامة صورة معروفة وجيدة للاستقرار؛ تصحيح المسجل خاصة يعتمد على تفاصيل تنفيذ قد تتغير مع تحديثات المصدر العلوي.
MIT — انظر LICENSE.