آسیب‌پذیری‌های چندگانه درPHP و اجازه اجرای کد دلخواه

آسیب‌پذیری‌های چندگانه درPHP  و اجازه اجرای کد دلخواه

اخیراً آسیب‌پذیری‌های متعددی در PHP کشف‌ شده است که شدید‌ترین آن می‌تواند به مهاجم اجازه‌ اجرای کد دلخواه را دهد. PHP یک زبان برنامه نویسی است که در اصل برای استفاده در برنامه‌های مبتنی بر وب با محتوای HTML طراحی شده است. پی اچ پی از طیف وسیعی از سیستم‌عامل‌ها پشتیبانی می‌کند و توسط برنامه‌های کاربردی متعدد مبتنی بر وب استفاده می‌شود. موفقیت در استفاده از بحرانی‌ترین این آسیب‌پذیری‌ها می‌تواند به اجرای کد دلخواه در زمینه برنامه آلوده شده منجر شود و بسته به امتیازات و مجوز‌های برنامه مهاجم می‌تواند برنامه‌ها را نصب کند، مشاهده کند، داده‌ها را تغییر دهد یا حذف‌ کند و یا حساب‌های جدید با حقوق کامل کاربر ایجاد کند و همچنین بهره‌برداری نادرست می‌تواند منجر به منع سرویس شود. سیستم‌های تحت‌تاثیر این آسیب‌پذیری‌ها : • PHP 7.2 تا 7.2.8 • PHP 7.1تا 7.1.20 • PHP 7.0 تا 7.0.31 • PHP 5.6 تا 5.6.37 ریسک‌پذیری و مخاطره : دولتی : موسسات دولتی بزرگ و متوسط : زیاد موسسات دولتی کوچک :‌ زیاد کسب‌‌وکار و تجارت : موسسات دولتی بزرگ و متوسط : زیاد موسسات دولتی کوچک : زیاد کاربران خانگی : کم خلاصه فنی: آسیب‌پذیری‌های متعددی در PHP کشف‌ شده است که بحرانی‌‌ترین آن‌ها می‌تواند به مهاجم اجازه‌ اجرای کد دلخواه را دهد. جزئیات این آسیب‌پذیری‌ها به شرح زیر است : نسخه 7.2.8 • Bug #71848 (getimagesize with $imageinfo returns false). • Bug #73342 (vulnerability in php-fpm by changing stdin to non-blocking). • Bug #74670 (integer underflow when unserializing GMP and possible other classes). • Bug #75231 (ReflectionProperty#getValue() incorrectly works with inherited classes). • Bug #76409 (heap use after free in _php_stream_free). • Bug #76423 (Int Overflow lead to Heap OverFlow in exif_thumbnail_extract of exif.c). • Bug #76459 (Windows linkinfo lacks openbasedir check). • Bug #76461 (OPSYS_Z_CPM defined instead of OPSYS_CPM). • Bug #76462 (Undefined property: DateInterval::$f). • Bug #76477 (Opcache causes empty return value). • Bug #76502 (Chain of mixed exceptions and errors does not serialize properly). • Bug #76505 (array_merge_recursive() is duplicating sub-array keys). • Bug #76520 (Object creation leaks memory when executed over HTTP). • Bug #76532 (Integer overflow and excessive memory usage in mb_strimwidth). • Bug #76534 (PHP hangs on 'illegal string offset on string references with an error handler). نسخه 7.1.20 • Bug #71848 (getimagesize with $imageinfo returns false). • Bug #73342 (Vulnerability in php-fpm by changing stdin to non-blocking). • Bug #74670 (Integer Underflow when unserializing GMP and possible other classes). • Bug #75231 (ReflectionProperty#getValue() incorrectly works with inherited classes). • Bug #76423 (Int Overflow lead to Heap OverFlow in exif_thumbnail_extract of exif.c). • Bug #76459 (windows linkinfo lacks openbasedir check). • Bug #76462 (Undefined property: DateInterval::$f). • Bug #76502 (Chain of mixed exceptions and errors does not serialize properly). • Bug #76505 (array_merge_recursive() is duplicating sub-array keys). • Bug #76532 (Integer overflow and excessive memory usage in mb_strimwidth). • Bug #76534 (PHP hangs on 'illegal string offset on string references with an error handler). • Bug #76536 (PHP crashes with core dump when throwing exception in error handler). • Bug #76548 (pg_fetch_result did not fetch the next row). • Bug #76556 (get_debug_info handler for BreakIterator shows wrong type). • Bug #76557 (heap-buffer-overflow (READ of size 48) while reading exif data). نسخه 7.0.31 • Bug #76423 (Int Overflow lead to Heap OverFlow in exif_thumbnail_extract of exif.c). • Bug #76459 (windows linkinfo lacks openbasedir check). • Bug #76557 (heap-buffer-overflow (READ of size 48) while reading exif data). نسخه 5.6.37 • Bug #76423 (Int Overflow lead to Heap OverFlow in exif_thumbnail_extract of exif.c). • Bug #76459 (windows linkinfo lacks openbasedir check). • Bug #76557 (heap-buffer-overflow (READ of size 48) while reading exif data). موفقیت در استفاده از بحرانی‌ترین این آسیب‌پذیری‌ها می‌تواند به اجرای کد دلخواه در زمینه برنامه آلوده شده منجر شود و بسته به امتیازات و مجوز‌های برنامه مهاجم می‌تواند برنامه‌ها را نصب کند، مشاهده کند، داده‌ها را تغییر دهد یا حذف‌کند و یا حساب‌های جدید با حقوق کامل کاربر ایجاد کند و همچنین بهره‌برداری نادرست می‌تواند منجر به منع سرویس شود. توصیه‌ها • بعد از یک تست مناسب سیستم را به آخرین نسخه پی اچ پی بروزرسانی دهید. • همه‌ نرم‌افزار‌ها را به عنوان یک کاربر بدون سطح دسترسی بالا (منظور شخصی است که سطوح دسترسی ادمین را ندارد)، برای کاهش اثرات یک حمله‌ موفق اجرا نمایید. • به کاربران یادآوری نمایید که از وب‌سایت‌های غیرمعتبر استفاده نکنند یا لینک‌های ارائه‌شده توسط منابع ناشناخته یا غیر‌معتبر را دنبال نکنند. • به کاربران آموزش دهید که به خطرهای ناشی از لینک‌های موجود در ایمیل‌ها یا پیوست‌ها به ویژه از منابع غیرقابل اعتماد توجه کنند. • از قاعده کمترین سطوح دسترسی برای تمامی سیستم‌ها و سرویس‌ها تبعیت کنید.