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

آسیب‌پذیری تزریق دستور در ماژول HTTP::Session زبان Perl (CVE-2011-10042)

دربارهٔ Perl HTTP::Session ۱۴ مطلب دیگر دربارهٔ Perl ←

نسخه‌های پیش از 0.43 از ماژول HTTP::Session در زبان Perl، به دلیل عدم پالایش (Filtering) شناسه‌های نشست (Session IDs) در HTTP::Session::Store::Memcached، در برابر حملات تزریق دستور (Command Injection) در memcached آسیب‌پذیر هستند.

تحلیل فنی مکانیسم حمله

در این نقص امنیتی، شناسه نشست که از طریق کوکی‌های کاربر ارسال می‌شود، بدون هیچ‌گونه تغییر یا بررسی به عنوان کل حافظه پنهان (Cache Key) به memcached منتقل می‌گردد. در صورتی که مهاجم کاراکترهای CR (Carriage Return) و LF (Line Feed) را در شناسه نشست قرار دهد، دستور حافظه پنهان زودتر از موعد پایان می‌یابد و سرور، بایت‌های پس از آن را به عنوان دستورات جدید دریافت و اجرا می‌کند.

این وضعیت به مهاجم اجازه می‌دهد تا دستورات دلخواه خود را به سرویس memcached تزریق کرده و احتمالاً دسترسی غیرمجاز یا اختلال در سرویس ایجاد کند.