۷۵ آسیب‌پذیری در پلتفرم تجارت الکترونیک Magento رفع شد

در یک پلتفرم باز برای سازماندهی تجارت الکترونیک مگنتو، که در حدود طول می کشد ٪۱۰۰ بازار سیستم های ایجاد فروشگاه های آنلاین، شناخته شده است آسیب پذیری هایی که ترکیبی از آنها به شما امکان می دهد برای اجرای کد خود بر روی سرور، حمله ای را انجام دهید، کنترل کامل فروشگاه آنلاین را به دست آورید و هدایت مجدد پرداخت ها را سازماندهی کنید. آسیب پذیری ها حذف شده است در مجنتو نسخه های 2.3.2، 2.2.9 و 2.1.18 را منتشر کرد که با هم 75 مشکل امنیتی را برطرف کردند.

یک مشکل به یک کاربر احراز هویت نشده اجازه می دهد تا جاوا اسکریپت (XSS) را که می تواند هنگام مشاهده تاریخچه خرید لغو شده در رابط مدیریت اجرا شود، به دست آورد. ماهیت این آسیب‌پذیری توانایی دور زدن عملیات پاکسازی متن با استفاده از تابع escapeHtmlWithLinks() هنگام پردازش یادداشت در فرم لغو در صفحه پرداخت است (با استفاده از برچسب "a href=http://onmouseover=..." تو در یک تگ دیگر). این مشکل هنگام استفاده از ماژول داخلی Authorize.Net که برای پذیرش پرداخت های کارت اعتباری استفاده می شود، ظاهر می شود.

برای به دست آوردن کنترل کامل با استفاده از کد جاوا اسکریپت در زمینه جلسه فعلی یک کارمند فروشگاه، آسیب پذیری دوم مورد سوء استفاده قرار می گیرد که به شما امکان می دهد یک فایل phar را تحت پوشش یک تصویر بارگذاری کنید (برگزاری حملات "Phar deserialization"). فایل Phar را می توان از طریق فرم درج تصویر در ویرایشگر داخلی WYSIWYG بارگذاری کرد. پس از اجرای کد PHP، مهاجم می تواند جزئیات پرداخت را تغییر دهد یا اطلاعات کارت اعتباری مشتری را رهگیری کند.

جالب اینجاست که اطلاعات مربوط به مشکل XSS در سپتامبر 2018 برای توسعه دهندگان Magento ارسال شد و پس از آن در پایان نوامبر یک پچ منتشر شد که همانطور که مشخص شد تنها یکی از موارد خاص را حذف می کند و به راحتی قابل دور زدن است. در ماه ژانویه، علاوه بر این در مورد امکان دانلود فایل Phar تحت پوشش یک تصویر گزارش شد و نشان داد که چگونه می توان از ترکیب دو آسیب پذیری برای به خطر انداختن فروشگاه های آنلاین استفاده کرد. در پایان ماه مارس در Magento 2.3.1،
2.2.8 و 2.1.17 مشکل فایل های Phar را برطرف کردند، اما رفع XSS را فراموش کردند، اگرچه بلیط صادر شده بسته شد. در آوریل، تجزیه XSS از سر گرفته شد و مشکل در نسخه های 2.3.2، 2.2.9 و 2.1.18 برطرف شد.

لازم به ذکر است که این نسخه ها 75 آسیب پذیری را نیز برطرف می کنند که 16 مورد از آنها به عنوان بحرانی رتبه بندی شده اند و 20 مشکل می تواند منجر به اجرای کد PHP یا جایگزینی SQL شود. اکثر مشکلات بحرانی فقط توسط یک کاربر تایید شده قابل انجام است، اما همانطور که در بالا نشان داده شد، عملیات تایید شده را می توان به راحتی با استفاده از آسیب پذیری های XSS، که چندین ده مورد از آنها در نسخه های ذکر شده وصله شده اند، به دست آورد.

منبع: opennet.ru

اضافه کردن نظر