آخرین اخبار
همهٔ اخبار
امنیت وب و نرم‌افزار گزارش بحرانیت ۳/۱۰

آسیب‌پذیری DoS در ماژول HTTP::Server::PSGI؛ خطر از کار افتادن سرورهای مبتنی بر Perl

آسیب‌پذیری DoS در ماژول HTTP::Server::PSGI؛ خطر از کار افتادن سرورهای مبتنی بر Perl

یک آسیب‌پذیری امنیتی در ماژول HTTP::Server::PSGI (نسخه‌های قبل از 1.0056) برای زبان برنامه‌نویسی Perl شناسایی شده است که می‌تواند منجر به از کار افتادن کامل سرور شود.

این نقص امنیتی به مهاجم اجازه می‌دهد تا تنها با ارسال یک درخواست واحد، سرور را دچار اختلال کند. مشکل زمانی رخ می‌دهد که مهاجم از طریق هدر Content-Length، مقدار بسیار بزرگی را اعلام می‌کند. در فرآیند خواندن بدنه درخواست، فراخوانی‌های sysread() بر اساس مقدار باقی‌مانده از Content-Length تنظیم می‌شوند. از آنجایی که زبان Perl سعی می‌کند بافر خواندن (Read Buffer) را پیش از رسیدن داده‌ها، مطابق با طول اعلام شده بزرگ کند، سرور تلاش می‌کند حجم عظیمی از حافظه را تخصیص دهد.

یک مهاجم از راه دور می‌تواند با ارسال یک درخواست حاوی Content-Length بسیار بالا و تنها چند بایت داده در بدنه، سرور را با خطای Out-of-Memory (OOM) مواجه کرده و باعث خروج ناگهانی و از کار افتادن آن شود. این حمله از نوع Denial of Service (DoS) دسته‌بندی می‌شود.