ثغرات NGINX لأكتوبر 2026: كيف بتعرف من nginx.conf إذا سيرفرك متأثر؟

NGINX 1.30.6 و1.31.7 سكّروا خمس ثغرات بـ 14 أكتوبر 2026، وكل وحدة إلها إعداد بيفتحها. الأمر nginx -T مع grep بيلقط أنماط أغلبهن، والترقية بتسكّر الخمسة.

نُشر في 12 دقيقة قراءة#NGINX#تحديثات أمنية#Docker

إذا عندك <span dir="ltr">NGINX</span> قدّام موقعك على <span dir="ltr">VPS</span> أو جوّا كونتينر <span dir="ltr">Docker</span>، الخبر وصلك غالباً هيك: خمس ثغرات، وتلاتة منهن درجتهن 9.2. أغلب هالثغرات ما بتنفتح إلا مع إعداد معيّن، فقبل ما تقرر إذا الموضوع بيخصك، شغّل nginx -v وnginx -T وقارن النتيجة بالجدول تحت.

شو سكّرت <span dir="ltr">NGINX 1.30.6</span> و<span dir="ltr">1.31.7</span>؟

<span dir="ltr">NGINX 1.30.6</span> على خط الـ <span dir="ltr">stable</span> و<span dir="ltr">1.31.7</span> على خط الـ <span dir="ltr">mainline</span> طلعوا بـ 14 أكتوبر 2026، وسكّروا خمس ثغرات: تلاتة بإدارة الذاكرة، ووحدة بالـ <span dir="ltr">TLS</span>، ووحدة بالـ <span dir="ltr">HTTP/3</span>. أي نسخة من 0.1.29 لحد 1.30.5 على الـ <span dir="ltr">stable</span>، أو لحد 1.31.6 على الـ <span dir="ltr">mainline</span>، بتوقع بمدى وحدة منهن على الأقل.

الإصدار مكتوب بـ أخبار <span dir="ltr">nginx.org</span> بنفس اليوم، ومعه <span dir="ltr">njs 1.0.2</span> بإصلاحين لقراءة الـ <span dir="ltr">XML</span>. واليوم، 21 أكتوبر، طلعت <span dir="ltr">1.31.8</span> على الـ <span dir="ltr">mainline</span>، وسجل تغييراتها ما فيه إصلاحات أمنية جديدة. نشرة الأمان كاتبة «<span dir="ltr">1.31.7+</span>» تحت «<span dir="ltr">Not vulnerable</span>»، فـ <span dir="ltr">1.31.8</span> كمان مش متأثرة.

وإذا كنت مأجّل الترقية من الصيف، <span dir="ltr">1.30.6</span> بتسكّر كمان ثغرات أقدم. منها <span dir="ltr">CVE-2026-42533</span>، صنّفتها <span dir="ltr">NGINX</span> «<span dir="ltr">major</span>» وانسكّرت بـ <span dir="ltr">1.30.4</span> و<span dir="ltr">1.31.3</span> بـ 15 يوليو 2026.

أي إعداد بيشغّل كل ثغرة؟

كل ثغرة من الخمسة بتنفتح مع تركيبة إعدادات محددة. بس <span dir="ltr">CVE-2026-93479</span> إلها كمان طريق تاني ما شرحت <span dir="ltr">F5</span> شروطه، فهي الوحيدة يلي الإعدادات لحالها ما بتبرّيك منها.

<span dir="ltr">F5</span> هي الجهة يلي بتصدر أرقام الـ <span dir="ltr">CVE</span> لـ <span dir="ltr">NGINX</span>، ونشرت الشروط والحلول المؤقتة بـ 14 أكتوبر. مدى النسخ من نشرة أمان <span dir="ltr">nginx.org</span>:

الثغرة

الإعداد يلي بيشغّلها

النسخ المتأثرة

الحل المؤقت لحد ما ترقّي

<span dir="ltr">CVE-2026-15176</span>: <span dir="ltr">heap overflow</span>

location فيها alias، وrewrite بيغيّر الـ <span dir="ltr">URI</span>، وشي بيقرا $request_filename (return أو set أو if أو add_header أو log_format)

0.1.29 لـ 1.31.6

شيل alias من هالـ location، أو ما تستعمل $request_filename

<span dir="ltr">CVE-2026-93479</span>: <span dir="ltr">heap overflow</span>

map فيها <span dir="ltr">regex</span>، والـ root أو log_format بيقرا الـ <span dir="ltr">captures</span> تبعها قبل متغير ناتج الـ map

1.30.0 لـ 1.30.5، و1.31.2 لـ 1.31.6

<span dir="ltr">named captures</span> بدل المرقّمة، وبس جوّا البلوك يلي فيه الـ <span dir="ltr">regex</span>

<span dir="ltr">CVE-2026-97205</span>: <span dir="ltr">use-after-free</span>

aio مفعّل، وصفحات <span dir="ltr">SSI</span> فيها include virtual، ببعض الإعدادات

0.8.11 لـ 1.31.6

طفّي aio، أو وقّف تخديم صفحات <span dir="ltr">SSI</span>

<span dir="ltr">CVE-2026-97629</span>: تزوير جلسة <span dir="ltr">TLS</span>

ssl_session_cache shared:… بلا ssl_session_ticket_key

1.23.2 لـ 1.31.6

شيل سطر ssl_session_cache shared:… كله، أو حمّل مفاتيح ثابتة من ملف بـ ssl_session_ticket_key. ومع ssl_session_tickets off السيرفر مش متأثر

<span dir="ltr">CVE-2026-95101</span>: بايتات زيادة بالطلب للـ <span dir="ltr">backend</span>، وتجاوز client_max_body_size

<span dir="ltr">HTTP/3</span> مع <span dir="ltr">proxy</span> وproxy_request_buffering on، وهي القيمة الافتراضية

1.25.0 لـ 1.31.6

proxy_request_buffering off

الـ <span dir="ltr">commit</span> يلي سكّر ثغرة الـ <span dir="ltr">alias</span> فيه هالمثال، والطلب /foo/1 كان بيعمل <span dir="ltr">buffer overflow</span>:

location /foo/ {
    alias /bar/;
    rewrite ^/foo/.*$ /x;
    return 200 $request_filename;
}

الـ rewrite غيّر الـ <span dir="ltr">URI</span> لـ /x، و<span dir="ltr">NGINX</span> لسا ما اختار <span dir="ltr">location</span> جديدة. بهالفترة، تحويل الـ <span dir="ltr">URI</span> لمسار ملف ممكن يكتب برّا الذاكرة المحجوزة إذا بادئة الـ <span dir="ltr">location</span> (هون /foo/) أطول من الـ <span dir="ltr">URI</span> الجديد.

بثغرة الـ <span dir="ltr">TLS</span>، كل <span dir="ltr">worker</span> عنده تلات خانات لمفاتيح الـ <span dir="ltr">session tickets</span>، بس تدوير المفاتيح كان بينسخ خانتين، فالتالتة بتضل ذاكرة مش مهيّأة (الـ <span dir="ltr">commit</span> تبع الإصلاح). <span dir="ltr">F5</span> بتقول إنو المهاجم ممكن يستعملها ليتجاوز التحقق من شهادة العميل، والتزوير بيصير بطريقة عشوائية ما بيتحكم فيها. فإذا سيرفرك بيطلب شهادة عميل بـ ssl_verify_client، رقّي هالسيرفر أول واحد.

ليش <span dir="ltr">NGINX</span> بتقول «<span dir="ltr">medium</span>» و<span dir="ltr">F5</span> بتعطي 9.2؟

التقييمين من نظامين مختلفين. نشرة <span dir="ltr">nginx.org</span> بتعطي كل ثغرة كلمة، والخمسة «<span dir="ltr">medium</span>». و<span dir="ltr">F5</span> بتحسب درجة <span dir="ltr">CVSS</span>: التلاتة يلي بالذاكرة أخدوا 9.2 على <span dir="ltr">CVSS v4.0</span> و8.1 على <span dir="ltr">v3.1</span>.

الـ <span dir="ltr">CVSS</span> مقياس من 0 لـ 10 بيوصف الثغرة حسب طريقة الهجوم وأثره، والـ 9.0 وفوق اسمها <span dir="ltr">Critical</span>. مواصفة <span dir="ltr">CVSS v4.0</span> بتقول إنو الدرجة الأساسية بتفترض أسوأ أثر معقول بين بيئات التشغيل المختلفة، مش بيئتك إنت، وفيها مقاييس بيئة (<span dir="ltr">Environmental</span>) لحتى كل حدا يعدّل الدرجة على وضعه.

حسب الـ <span dir="ltr">vector</span> تبع <span dir="ltr">F5</span> للتلاتة، الهجوم من الشبكة، بلا تسجيل دخول ولا تفاعل من حدا، بس تعقيده عالي (<span dir="ltr">AC:H</span>). بالمواصفة، هالقيمة معناها إنو الهجوم بيحتاج يتجاوز حماية متل الـ <span dir="ltr">ASLR</span>. ووصف <span dir="ltr">F5</span> إلهن بيقول إنو الـ <span dir="ltr">worker</span> ممكن يوقع أو يعيد تشغيله، وتنفيذ الكود ممكن إذا الـ <span dir="ltr">ASLR</span> مطفي أو المهاجم قدر يتجاوزه. ثغرة الـ <span dir="ltr">TLS</span> أخدت 8.3 وثغرة الـ <span dir="ltr">HTTP/3</span> أخدت 6.9، الاتنين على <span dir="ltr">v4.0</span>.

نشرة <span dir="ltr">nginx.org</span> ما بتشرح كيف بتختار الكلمة، بس نفس الصفحة بتعطي «<span dir="ltr">major</span>» لثغرات تانية، متل <span dir="ltr">CVE-2026-42533</span>.

عملياً، نسختك والنمط بإعداداتك هني يلي بيحددوا وضعك. إذا النمط موجود والنسخة بالمدى، رقّي اليوم أو طبّق الحل المؤقت هلق. وإذا النمط مش موجود، رقّي بأقرب صيانة، لأنو الإعدادات بتتغيّر والـ <span dir="ltr">grep</span> ما بيلقط كل شي.

كيف بتفحص سيرفرك بـ <span dir="ltr">nginx -v</span> و<span dir="ltr">nginx -T</span>؟

الأمر nginx -v بيطبع النسخة، وnginx -T بيفحص الإعدادات وبيطبعها كلها مع كل ملف داخل بـ include، فبتفتّش عن الأنماط الخمسة بملف واحد.

  1. شغّل nginx -v. إذا طلع 1.30.6 أو أحدث على الـ <span dir="ltr">stable</span>، أو 1.31.7 أو أحدث على الـ <span dir="ltr">mainline</span>، الخمسة متسكّرين عندك. إذا النسخة من حزمة توزيعتك، الرقم لحاله ما بيكفي، والسبب بقسم الترقية تحت.

  2. اطبع الإعدادات كلها لملف بـ sudo nginx -T > ~/nginx-full.conf. بـ <span dir="ltr">Docker</span>: docker exec <container> nginx -T > ~/nginx-full.conf، أو docker compose exec <service> nginx -T > ~/nginx-full.conf. حسب توثيق أوامر <span dir="ltr">NGINX</span>، الـ -T بيعمل متل -t وبيطبع ملفات الإعدادات كمان.

  3. شغّل الأوامر تحت على الملف، وكل سطر بيطلع اقراه ضمن الـ server أو الـ location يلي هو فيها.

# CVE-2026-15176
grep -nwE 'alias|rewrite' ~/nginx-full.conf
grep -n 'request_filename' ~/nginx-full.conf

# CVE-2026-93479
grep -nw 'map' ~/nginx-full.conf
grep -nE '\$[1-9]' ~/nginx-full.conf

# CVE-2026-97205
grep -nwE 'aio|ssi' ~/nginx-full.conf

# CVE-2026-97629
grep -nE 'ssl_session_(cache|ticket_key|tickets)' ~/nginx-full.conf

# CVE-2026-95101
grep -nE 'quic|proxy_pass|proxy_request_buffering' ~/nginx-full.conf

# njs
grep -nE 'js_(import|content|set)' ~/nginx-full.conf

كيف تقرا النتيجة

  • إذا alias وrewrite بنفس الـ location، ومعهن $request_filename بنفس الـ location أو بـ log_format، هاد نمط <span dir="ltr">CVE-2026-15176</span>.

  • الـ $1 لحالها عادية، لأنها بتطلع بكتير أسطر rewrite. يلي بيهمك $1 جوّا root أو log_format بإعدادات فيها map بـ ~. حسب الـ <span dir="ltr">commit</span> تبع إصلاحها، أثر مسار الـ <span dir="ltr">log</span> محدود ببايت فاضي واحد بينكتب برّا الحد، والمسار الأخطر هو حساب الـ root من متغيرات. وإذا ما لقيت شي، الطريق التاني يلي ما انشرح بيضل، فالـ <span dir="ltr">grep</span> هون ما بيبرّيك.

  • aio on أو aio threads مع ssi on شغّالين على نفس الـ location، حتى لو واحد منهن مكتوب بالـ http أو الـ server والـ location ورثته: دوّر بالصفحات يلي بتمرق منها عن include virtual.

  • ssl_session_cache shared: بلا ssl_session_ticket_key وبلا ssl_session_tickets off هو نمط <span dir="ltr">CVE-2026-97629</span>. إذا شهادتك من <span dir="ltr">Let's Encrypt</span> عن طريق <span dir="ltr">certbot</span>، الملف options-ssl-nginx.conf بنسخته الحالية بمستودع <span dir="ltr">certbot</span> فيه ssl_session_cache shared:le_nginx_SSL:10m ومعه ssl_session_tickets off. تأكد إنو السطر التاني طالع عندك.

  • quic بسطر listen، ومعه proxy_pass بنفس الـ server، وما في proxy_request_buffering off: هاد نمط <span dir="ltr">CVE-2026-95101</span>. موديول الـ <span dir="ltr">HTTP/3</span> ما بينبنى افتراضياً لما تبني من المصدر، وnginx -V بيقلك إذا نسختك فيها --with-http_v3_module.

  • إذا طلع js_import أو js_content أو js_set، إنت بتستعمل <span dir="ltr">njs</span>، وإلها تحديث لحالها هو <span dir="ltr">njs 1.0.2</span>.

إذا عندك كذا سيرفر وإعداداتهن بمستودع <span dir="ltr">git</span>، فيك تعطي نفس الأوامر لوكيل برمجة متل <span dir="ltr">Claude Code</span> يمرق عليهن ويجمعلك النتيجة بجدول. وقسم مهارات <span dir="ltr">AI</span> بالمتجر فيه مهارات لـ <span dir="ltr">Claude Code</span> ووكلاء البرمجة.

كيف بترقّي حسب طريقة التثبيت؟

الترقية لـ 1.30.6 أو 1.31.7 أو أحدث بتسكّر الخمسة كلهن، والطريق بيختلف حسب من وين جاي <span dir="ltr">NGINX</span> عندك: مستودع <span dir="ltr">nginx.org</span>، أو حزمة التوزيعة، أو صورة <span dir="ltr">Docker</span>.

من مستودع <span dir="ltr">nginx.org</span>

إذا ركّبت من مستودعات <span dir="ltr">nginx.org</span>، الترقية حزمة عادية. المستودع فيه حزم لـ <span dir="ltr">Debian</span> 12 و13 و<span dir="ltr">Ubuntu</span> 22.04 و24.04 و26.04 و<span dir="ltr">RHEL</span> 8 لـ 10 وغيرهن، والـ <span dir="ltr">mainline</span> إلو مسار mainline/ بالرابط. على <span dir="ltr">Debian</span> و<span dir="ltr">Ubuntu</span>:

sudo apt update && sudo apt install --only-upgrade nginx
nginx -v
sudo systemctl restart nginx

بعد الترقية اعمل <span dir="ltr">restart</span> مش <span dir="ltr">reload</span>. حسب توثيق التحكم بـ <span dir="ltr">NGINX</span>، الـ <span dir="ltr">reload</span> بيقرا الإعدادات من جديد وبيشغّل <span dir="ltr">workers</span> جداد بنفس الملف التنفيذي، والملف الجديد بيحتاج إشارة <span dir="ltr">USR2</span> أو تشغيل من جديد.

من حزمة التوزيعة

<span dir="ltr">Debian</span> بينقل الإصلاح للنسخة يلي عنده بدل ما يرفع الرقم، ومتتبّعه معلّم الخمسة «<span dir="ltr">fixed</span>» بـ <span dir="ltr">forky</span> بالنسخة 1.30.4-8، وهي أقل من 1.30.6. لهيك رقم nginx -v من حزمة توزيعة ما بينقارن بجدول <span dir="ltr">nginx.org</span>، والمرجع متتبّع الأمان تبع توزيعتك.

وبالعكس، حزمة رقمها برّا المدى ممكن تكون متأثرة. حسب تحديث الأمان <span dir="ltr">DSA-6575-1</span> يلي نشره <span dir="ltr">Debian</span> بـ 21 أكتوبر 2026، الكود المتأثر بـ <span dir="ltr">CVE-2026-93479</span> دخل حزمة <span dir="ltr">trixie</span> (<span dir="ltr">Debian</span> 13) لما نقلوا إصلاح أمني أقدم، مع إنو مداها بنشرة <span dir="ltr">nginx.org</span> بيبلّش من 1.30.0. ونفس التحديث بيسكّر الخمسة بـ <span dir="ltr">trixie</span> بالنسخة <span dir="ltr">1.26.3-3+deb13u10</span>، فعلى <span dir="ltr">Debian</span> 13، apt upgrade من مستودع الأمان بيجيبلك الإصلاح.

على <span dir="ltr">bookworm</span> (<span dir="ltr">Debian</span> 12، النسخة 1.22.1)، متتبّع <span dir="ltr">Debian</span> لسا كاتب «<span dir="ltr">vulnerable</span>» للخمسة لحد 21 أكتوبر. حسب نشرة <span dir="ltr">nginx.org</span>، 1.22.1 برّا مدى تلاتة منهن (<span dir="ltr">CVE-2026-93479</span> و<span dir="ltr">CVE-2026-95101</span> و<span dir="ltr">CVE-2026-97629</span>)، بس بعد يلي صار بـ <span dir="ltr">trixie</span>، اعتمد على المتتبّع. ومتتبّع <span dir="ltr">Ubuntu</span> كاتب «<span dir="ltr">Needs evaluation</span>» للخمسة على كل نسخه. على هالنسخ، apt upgrade لحاله ما رح يجيبلك الإصلاح هلق، وعندك خيارين: تنقل لمستودع <span dir="ltr">nginx.org</span>، أو تطبّق الحل المؤقت من الجدول لكل نمط لقيته وتراقب المتتبّع.

بـ <span dir="ltr">Docker</span>

الصور الرسمية على <span dir="ltr">Docker Hub</span> صار فيها الإصلاح. لحد 21 أكتوبر 2026، الوسمين nginx:stable وnginx:1.30 عندهم نفس الـ <span dir="ltr">digest</span> تبع nginx:1.30.6، والوسوم nginx:mainline وnginx:latest وnginx:1.31 نفس nginx:1.31.7، ونسخ الـ <span dir="ltr">alpine</span> كمان. بس الصورة يلي بنيتها قبل هيك بتضل على النسخة القديمة لحد ما تبنيها من جديد:

# image: nginx:... used directly
docker compose pull
docker compose up -d

# Dockerfile with FROM nginx:...
docker compose build --pull
docker compose up -d

docker compose exec <service> nginx -v

انتبه للوسوم المثبّتة على خط قديم. الوسم nginx:1.28 آخر مرة انرفع بـ 7 أبريل 2026، قبل أسبوع من <span dir="ltr">1.30.0</span> (14 أبريل)، ونسخة 1.28 بتوقع بمدى أربعة من الخمسة. هون إعادة البناء ما بتجيب شي جديد: غيّر الوسم لـ nginx:1.30 أو أحدث.

إذا بتستعمل <span dir="ltr">njs</span>

الـ <span dir="ltr">njs</span> هو موديول <span dir="ltr">JavaScript</span> تبع <span dir="ltr">NGINX</span>، بيشتغل بـ js_import وjs_content. <span dir="ltr">njs 1.0.2</span> طلعت بـ 14 أكتوبر وسكّرت ثغرتين بقراءة الـ <span dir="ltr">XML</span>، والنسخ المتأثرة 0.7.10 لـ 1.0.1 حسب نشرة أمان <span dir="ltr">njs</span>:

  • <span dir="ltr">CVE-2026-101025</span>: كل مرة بيفشل فيها xml.parse() مع <span dir="ltr">XML</span> مكسور، بتضل ذاكرة محجوزة بالـ <span dir="ltr">worker</span>، فالذاكرة بتكبر بلا حد. بتصيب المحرك المدمج بس، والحل المؤقت حسب <span dir="ltr">F5</span> هو js_engine qjs.

  • <span dir="ltr">CVE-2026-101019</span>: بالـ <span dir="ltr">XML</span> الموقّع، قيمة <span dir="ltr">attribute</span> ممكن تطلع غايبة أو مقطوعة والتوقيع بيضل صحيح. بتصيب المحركين، <span dir="ltr">njs</span> و<span dir="ltr">QuickJS</span>، فـ js_engine qjs ما بيحلها، والحل هو <span dir="ltr">njs 1.0.2</span>. <span dir="ltr">F5</span> بتقول إنو <span dir="ltr">nginx-saml</span> مع المحرك المدمج متأثر أكيد.

شو لسا مش معروف عن ثغرات <span dir="ltr">NGINX</span> هدول؟

لحد 21 أكتوبر 2026 ما في استغلال منشور لأي وحدة من ثغرات <span dir="ltr">NGINX</span> الخمسة. والمعلومات الناقصة لحد اليوم هي الشروط الكاملة لتنتين منهن، ومدى النسخ القديمة بسجلات <span dir="ltr">F5</span>، وموعد الإصلاح على <span dir="ltr">Ubuntu</span> و<span dir="ltr">Debian</span> 12.

سجل <span dir="ltr">CVE-2026-93479</span> بيقول إنو نفس الـ <span dir="ltr">overflow</span> ممكن يصير كمان من متغير ما بتنحفظ قيمته (بلغة <span dir="ltr">NGINX</span>: <span dir="ltr">non-cacheable</span>) جوّا تعبير نصي، «<span dir="ltr">under certain conditions</span>»، والسجل ما بيسمّي هالشروط. حسب دليل مطوّري <span dir="ltr">NGINX</span>، هيك متغير بتنحسب قيمته من جديد كل مرة بينقرا، متل $time_local. وسجل <span dir="ltr">CVE-2026-97205</span> بيقول إنو الـ aio بيفتحها «<span dir="ltr">in certain configurations</span>» بس، وما بيعدّد هالإعدادات. يعني إذا الـ <span dir="ltr">grep</span> لقى aio وssi سوا، سيرفرك ممكن يكون متأثر والسجل ما بيحسمها؛ وإذا ما لقى نمط <span dir="ltr">CVE-2026-93479</span>، هاد ما بيبرّيك منها. بالحالتين، الترقية بتسكّر الثغرة.

سجلات <span dir="ltr">F5</span> للخمسة فيها ملاحظة إنها ما بتقيّم النسخ يلي خلص دعمها التقني (<span dir="ltr">End of Technical Support</span>). وبعض المدى فيها أضيق من نشرة <span dir="ltr">nginx.org</span>: سجل <span dir="ltr">CVE-2026-97205</span> بيبلّش من 1.30.0 والنشرة من 0.8.11، وسجل <span dir="ltr">CVE-2026-97629</span> من 1.23.3 والنشرة من 1.23.2. إذا أداة فحص أو موقع ثغرات قلّك إنو نسخة قديمة برّا المدى، قارنها بنشرة <span dir="ltr">nginx.org</span>، لأنها نشرة المشروع نفسه للنسخة المفتوحة المصدر.

على <span dir="ltr">Ubuntu</span>، صفحة كل ثغرة من الخمسة كاتبة «<span dir="ltr">Needs evaluation</span>» على كل النسخ، وآخر تحديث إلها بالمتتبّع كان بـ 15 أكتوبر. حسب صفحة شرح الحالات عند <span dir="ltr">Ubuntu</span>، هالحالة معناها إنو لسا ما معروف إذا الحزمة متأثرة على هالنسخة أو لأ.

من وين تبلّش هلق؟

بلّش بـ nginx -v على كل سيرفر وكل كونتينر عندك، لأنو النسخة، إذا جاية من <span dir="ltr">nginx.org</span> أو <span dir="ltr">Docker</span>، بتحسم إذا الخمسة متسكّرين قبل أي <span dir="ltr">grep</span>؛ ومن حزمة توزيعة، المرجع متتبّع توزيعتك.

  1. سجّل النسخة لكل سيرفر وكونتينر، ومن وين جاي: <span dir="ltr">nginx.org</span> أو التوزيعة أو <span dir="ltr">Docker</span>.

  2. شغّل nginx -T والأوامر فوق، وعلّم كل نمط من الجدول لقيته.

  3. رقّي لـ 1.30.6 أو 1.31.7 أو أحدث، أو لحزمة التوزيعة يلي متتبّعها كاتب «<span dir="ltr">fixed</span>». إذا الترقية مش ممكنة اليوم، طبّق الحل المؤقت للنمط يلي لقيته، وبعدها sudo nginx -t && sudo systemctl reload nginx.

  4. ابني صورك من جديد بـ --pull، وتأكد بـ nginx -v جوّا الكونتينر الشغّال.

الإعدادات طبقة وحدة من السيرفر. كود التطبيق ورا <span dir="ltr">NGINX</span> إلو ثغراته بالصلاحيات و<span dir="ltr">IDOR</span>، وحزمة المهارات الأمنية بتراجع هالكود قبل النشر، وهي لسا قيد التحضير.

وإذا منصتك فيها دفع أو بيانات مستخدمين، وبدك حدا يفحص الإعدادات والتطبيق متل ما بيجرّبهم مهاجم ويسلّمك خطة إصلاح، هاد شغل مُحَصَّن. شو طلع معك بالـ <span dir="ltr">grep</span>: أي نمط من الخمسة موجود بإعداداتك؟

أسئلة شائعة

هل في هجمات معروفة على ثغرات NGINX هدول؟

لحد 21 أكتوبر 2026 ما في شي منشور. كتالوج CISA للثغرات المستغلة (KEV) ما فيه ولا وحدة من الخمسة، وتقييم CISA بسجلاتهن بـ 15 أكتوبر كاتب إنو ما في استغلال معروف. وحسب The Hacker News، لا NGINX ولا F5 بلّغوا عن هجمات.

ركّبت NGINX من مستودع Ubuntu أو Debian، بيكفيني apt upgrade؟

إي، إذا عندك Debian 13 (trixie): تحديث Debian الأمني DSA-6575-1 بـ 21 أكتوبر 2026 بيجيب النسخة 1.26.3-3+deb13u10، وفيها إصلاح الخمسة. على Debian 12 (bookworm) وUbuntu لسا لأ: متتبّع Debian كاتب vulnerable على bookworm، ومتتبّع Ubuntu كاتب Needs evaluation للخمسة على كل النسخ. لحد ما يوصل الإصلاح، انقل لمستودع nginx.org أو طبّق الحل المؤقت لكل نمط لقيته بإعداداتك.

صورتي مبنية على nginx:1.28، بيكفي أبنيها من جديد؟

لأ. وسم nginx:1.28 على Docker Hub آخر مرة انرفع بـ 7 أبريل 2026، ونسخة 1.28 بتوقع بمدى أربعة من الخمسة حسب نشرة nginx.org. غيّر الوسم لـ nginx:1.30 أو nginx:stable، وبعدها ابني الصورة.

كيف بعرف إذا NGINX عندي شغّال بـ HTTP/3؟

دوّر على سطر listen فيه quic بإعداداتك، والأمر nginx -V بيقلك إذا نسختك مبنية مع --with-http_v3_module. الموديول ما بينبنى افتراضياً لما تبني NGINX من المصدر، وإذا ما في quic بأي listen، الثغرة CVE-2026-95101 ما بتلمسك.

بعد ما رقّيت، بيكفي nginx -s reload؟

لأ. الـ reload بيقرا الإعدادات من جديد بس بنفس الملف التنفيذي، فالنسخة القديمة بتضل شغّالة. اعمل restart للخدمة، مثلاً systemctl restart nginx، أو بدّل الملف التنفيذي بإشارة USR2 متل ما بيشرح توثيق NGINX.

مقالات أخرى