خانه » CVE-2025-54090

CVE-2025-54090

Apache HTTP Server: 'RewriteCond Expr' Always Evaluates To True

توسط Vulnerbyte Alerts
196 بازدید
هشدار سایبری CVE-2025-54090

چکیده

آسیب‌پذیری در Apache HTTP Server نسخه 2.4.64 باعث می‌شود تمام دستورات “RewriteCond expr..” به‌طور نادرست همیشه به‌عنوان true ارزیابی شوند. این ضعف می‌تواند منجر به دور زدن قوانین بازنویسی URL، کنترل دسترسی و سایر منطق‌های شرطی مبتنی بر expr شود و در سناریوهای امنیتی، دسترسی غیرمجاز یا تغییر عملکرد وب‌سرور را به‌همراه داشته باشد.

توضیحات

آسیب‌پذیری CVE-2025-54090 در ماژول mod_rewrite از Apache HTTP Server نسخه 2.4.64، ناشی از بررسی نادرست مقدار بازگشتی تابع مطابق با CWE-253 است. در این نسخه، مسیر پردازش مربوط به دستورات “RewriteCond expr …” که برای ارزیابی شرط‌ها از Apache Expression Language (AEL) استفاده می‌کنند، به دلیل استفاده از مقدار بازگشتی اشتباه، نتیجه‌ی واقعی ارزیابی را نادیده گرفته و همواره مقدار منطقی true را به موتور بازنویسی گزارش می‌دهد.

این خطا باعث ایجاد یک ضعف منطقی (Logic Flaw) در زنجیره بازنویسی می‌شود؛ به‌گونه‌ای که تمام قواعدی که به شرط‌های expr وابسته‌اند، بدون توجه به محتوای عبارت یا وضعیت واقعی ورودی، فعال می‌شوند. پیامد این عملکرد می‌تواند شامل دور زدن محدودیت‌های دسترسی مبتنی بر IP، هدرهای HTTP، کوکی‌ها، متغیرهای محیطی یا مسیرهای URL، همچنین اجرای ناخواسته قوانین بازنویسی و دسترسی غیرمجاز به مسیرهای محافظت‌شده باشد. در محیط‌هایی که منطق امنیتی و جریان ترافیک مبتنی بر mod_rewrite طراحی شده، این ضعف می‌تواند منجر به تغییر عملکرد وب‌سرور و اختلال در سیاست‌های کنترلی شود.

بهره‌برداری از این ضعف نیازمند احراز هویت یا تعامل کاربر نیست و مهاجم می‌تواند با ارسال درخواست‌های استاندارد HTTP از راه دور و با پیچیدگی پایین، منطق شرطی مبتنی بر AEL را دور بزند. اگرچه اثر مستقیم این آسیب‌پذیری بر محرمانگی و یکپارچگی داده‌ها محدود است، اما در ترکیب با پیکربندی‌های امنیتی متکی بر RewriteCond expr، می‌تواند منجر به دسترسی غیرمجاز، دور زدن سیاست‌ها و عملکرد غیرمنتظره اپلیکیشن‌ها شود.

این آسیب‌پذیری در نسخه Apache 2.4.65 با اصلاح نحوه بررسی مقدار بازگشتی ارزیاب AEL و بازگرداندن عملکرد صحیح در زنجیره شرطی mod_rewrite، به‌طور کامل پچ شده است.

CVSS

Score Severity Version Vector String
6.3 MEDIUM 3.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L

لیست محصولات آسیب پذیر

Versions Product
affected at 2.4.64 Apache HTTP Server

لیست محصولات بروز شده

Versions Product
Fixed in 2.4.65 Apache HTTP Server

استفاده محصول در ایران

در این جدول، تعداد صفحات ایندکس‌شده در گوگل با دامنه .ir که Apache HTTP Server را ذکر کرده اند، ثبت شده است. این داده صرفاً برای برآورد تقریبی حضور محصولات در وب ایران استفاده شده و نمایانگر میزان نصب دقیق و استفاده واقعی نیست.

Approx. Usage in .ir Domain via Google

(Total Pages)

Search Query (Dork) Product
8,170 site:.ir “Apache HTTP Server” Apache HTTP Server

نتیجه گیری

این آسیب‌پذیری با شدت متوسط در Apache HTTP Server امکان دور زدن منطق‌های امنیتی مبتنی بر دستورهای شرطی پیشرفته (RewriteCond expr) را فراهم می‌کند و می‌تواند منجر به دسترسی غیرمجاز یا عملکرد غیرمنتظره وب‌سرور شود. با توجه به انتشار پچ رسمی، اجرای اقدامات زیر برای جلوگیری از بهره‌برداری ضروری است:

  • به‌روزرسانی فوری: تمام سرورهای Apache را به نسخه 2.4.65 یا بالاتر به روزرسانی کنید. به روزرسانی، مؤثرترین و قطعی‌ترین راهکار برای رفع آسیب‌پذیری است و باید در اولویت قرار گیرد. سایر اقدامات نقش مکمل را دارند و می‌توانند به کاهش ریسک این آسیب پذیری و مقابله با حملات مشابه کمک کنند.
  • بررسی پیکربندی موجود: تمام فایل‌های .htaccess و پیکربندی های VirtualHost را برای وجود دستور RewriteCond expr بررسی کنید و در صورت امکان، منطق شرطی را به Require expr یا سایر روش های شرطی امن تر کنترل دسترسی تغییر دهید.
  • استفاده از Require expr: به‌جای RewriteCond expr، از دستورات ماژول mod_authz_core مانند Require expr برای کنترل دسترسی استفاده کنید، زیرا این دستورات تحت تاثیر این آسیب پذیری نیستند.
  • محدودسازی محدودسازی قابلیت بازنویسی (Rewrite): در پیکربندی اصلی سرور، مقدار AllowOverride را به حداقل برسانید و فعال‌سازی RewriteEngine را فقط در VirtualHostهایی انجام دهید که واقعاً به آن نیاز دارند.
  • استفاده از فایروال اپلیکیشن وب (WAF): از فایروال‌هایی مانند ModSecurity برای فیلتر کردن درخواست‌های مشکوک و نظارت بر عملکرد ماژول mod_rewrite بهره ببرید.
  • نظارت و ثبت لاگ: سطح لاگ mod_rewrite را به DEBUG افزایش دهید و با ابزارهایی مانند Fail2Ban یا ELK Stack ، هرگونه عملکرد غیرعادی مرتبط با بازنویسی URL را بررسی کنید.
  • تست امنیتی: پیکربندی را با ابزارهایی مانند OWASP ZAP یا Nikto اسکن کنید تا اطمینان حاصل شود که هیچ شرط expr به صورت دائم true باقی نمانده است.
  • آموزش تیم: توسعه‌دهندگان و مدیران سرور باید با تفاوت بین RewriteCond expr و روش‌های امن‌تر کنترل دسترسی آشنا شوند تا از ایجاد آسیب‌پذیری‌های مشابه در آینده جلوگیری شود.

اجرای این اقدامات، به‌ویژه به‌روزرسانی سریع و بازبینی پیکربندی Rewrite، ریسک بهره‌برداری از این آسیب‌پذیری را به‌طور کامل کاهش داده و امنیت وب‌سرورهای Apache را به‌طور قابل‌توجهی افزایش می‌دهد.

امکان استفاده در تاکتیک های Mitre Attack

Initial Access (TA0001)

مهاجم با ارسال درخواست‌های HTTP طراحی‌شده به وب‌سرور، منطق Rewrite آسیب‌پذیر را هدف می‌گیرد؛ اگر RewriteCond expr به‌صورت ناخواسته true شود، مهاجم می‌تواند به مسیرهایی دسترسی پیدا کند که اساساً نیاز به احراز هویت دارند یا باید مسدود باشند. این ورودی‌ها نقطه ورود اولیه به سرویس وب محسوب می‌شوند.

Credential Access (TA0006)

اگر مسیر‌های احراز هویت یا فایل‌های پیکربندی به‌صورت اشتباه از طریق RewriteCond expr باز شوند، مهاجم می‌تواند به صفحات login‑bypass، token endpoints یا فایل‌های شامل session secret ها دسترسی پیدا کند و داده‌های حساس مرتبط با احراز هویت را استخراج کند.

Discovery (TA0007)

با سوءاستفاده از مسیرهای بازشده، مهاجم می‌تواند ساختار فایل‌ها، مسیرهای داخلی، APIهای غیرداکیومنت، و منطق‌های پنهان اپلیکیشن را شناسایی کند. این مرحله به او امکان می‌دهد توپولوژی کامل لایه وب را شناسایی کرده و مسیرهای حمله بعدی را تنظیم کند.

Defense Evasion (TA0005)

مهاجم با craft کردن درخواست‌هایی که RewriteCond expr آن‌ها را به‌صورت همیشگی true تفسیر می‌کند، می‌تواند محدودیت‌های دسترسی (Access Deny/Allow) را بایپس کند و دور زدن کنترل‌های اعمال‌شده در لایه rewrite را انجام دهد. همچنین می‌تواند از مسیرهای log-bypass استفاده کند.

Lateral Movement (TA0008)

در سناریوهایی که فایل‌های داخلی یا APIهای backend با rewrite اشتباه باز شوند، مهاجم قادر است به سرویس‌های داخلی متصل به وب‌سرور (مانند سرویس احراز هویت، پایگاه داده، microservices داخلی) متصل شود و حرکت جانبی انجام دهد.

Collection (TA0009)

دسترسی بازشده به فایل‌ها یا endpointهای محافظت‌شده می‌تواند منجر به جمع‌آوری اطلاعات حساسی مثل config ها، محیط‌های staging، فایل‌های لاگ، tokenها، و داده‌های کاربران شود.

Exfiltration (TA0010)

از طریق مسیرهای بازشده یا endpointهای حساس، مهاجم می‌تواند داده‌های جمع‌آوری‌شده را به‌صورت مستقیم از طریق پاسخ HTTP استخراج کند، بدون اینکه نیاز به عبور از کنترل‌های استاندارد اپلیکیشن داشته باشد.

Impact (TA0040)

پیامد نهایی شامل دسترسی غیرمجاز، بایپس کامل کنترل دسترسی HTTP، نشت داده‌های محرمانه، قابلیت تغییر پیکربندی‌ها، و در برخی معماری‌ها اجرای غیرمستقیم کد در backend است. این ضعف می‌تواند باعث اختلال سرویس، افشای داده، و تخریب منطقی ساختار امنیتی وب‌سرور شود.

منابع

  1. https://www.cve.org/CVERecord?id=CVE-2025-54090
  2. https://www.cvedetails.com/cve/CVE-2025-54090/
  3. https://httpd.apache.org/security/vulnerabilities_24.html
  4. https://vulmon.com/vulnerabilitydetails?qid=CVE-2025-54090
  5. https://vuldb.com/?id.317421
  6. https://news.ycombinator.com/item?id=44666896
  7. https://lists.debian.org/debian-lts-announce/2025/08/msg00009.html
  8. http://www.openwall.com/lists/oss-security/2025/07/24/2
  9. https://nvd.nist.gov/vuln/detail/cve-2025-54090
  10. https://cwe.mitre.org/data/definitions/253.html

همچنین ممکن است دوست داشته باشید

پیام بگذارید