مشکلی با عنوان XSS در فروشگاههای اینترنتی در نسخههای سری 8 دیده شده که مربوط به صفحات ثبتنام و پرداخت میشوند، دیده شده که تیم توسعه برای رفع مشکل امنیتی XSS ووکامرس، آن را برطرف کرده بروز کردند. در این باگ امنیتی امکان تزریق HTML و جاوا اسکریپت به صفحه وجود دارد. قبلاً یک نسخه بچ از WooCommerce 8.9 منتشر شده و به اصلاح WooCommerce 8.8 پرداخته شده است. این اصلاح در WooCommerce 9.0 نیز گنجانده شده و اگر WooCommerce 8.8.0 یا بالاتر را نصب دارید، حتما بروزرسانی کنید.
مشکل امنیتی XSS ووکامرس
یک مشکل امنیتی شناخته شده در WooCommerce 8.8 دیده شده که امکان اسکریپتنویسی بین سایتی را فراهم میکند. در واقع این نوعی حمله که در آن یک فرد مخرب و هکر میتواند پیوندی را برای گنجاندن محتوای مخرب، به عنوان مثال، جاوا اسکریپت، در یک صفحه دستکاری کند. در حالی که محتوا در پایگاه داده ذخیره نمیشود اما ممکن است پیوندها برای اهداف مخرب به قربانیان ارسال شود.
جزئیات مشکل امنیتی در ووکامرس
- در WooCommerce 8.5، ویژگی Order Attribution منتشر شده که این ویژگی اختیاری از کتابخانه Sourcebuster.js برای خواندن دادههای منبع ترافیک استفاده میکند.
- در WooCommerce 8.8، نحوه اجرای بخش سمت مشتری این ویژگی تغییر داده شده که این تغییر از دادههای جمعآوریشده توسط Sourcebuster برای ساخت فیلدهای ورودی استفاده کرد که میتوانستند با فرمهای ثبتنام و پرداخت ارسال شوند. در نتیجه، این امر یک آسیبپذیری ایجاد کرد که به مهاجمان اجازه میداد کد را به صفحه تزریق کنند.
آیا این مشکل امنیتی بر همه فروشگاه ها تاثیرگذار است؟
برای تعیین اینکه آیا فروشگاه شما دچار این مشکل امنیتی XSS ووکامرس شده است یا خیر، نسخه های ووکامرسی را که اجرا میکنید بررسی کنید. اگر فروشگاه شما WooCommerce 8.8 یا بالاتر است و Order Attribution را فعال کردید، پس در برابر این مشکل آسیب پذیر است. توجه داشته باشید که Order Attribution به طور پیش فرض در این نسخههای WooCommerce فعال است:
- 8.8.0
- 8.8.1
- 8.8.2
- 8.8.3
- 8.8.4
- 8.9.0
- 8.9.1
- 8.9.2
اقدامات پیشگیرانهای که باید قبل از دچار شدن ووکامرس به این مشکل انجام دهید:
- یک پچ برای رفع این مشکل ایجاد شده و به WooCommerce 8.8 و 8.9 بکپورت شده است.
- در مرحله بعد، یک بررسی گذشتهنگر کامل انجام دهید و راههایی را شناسایی کنید که از طریق آن میتوان از این امر اجتناب کرد.
اما اگر تحت تأثیر این مشکل قرار گرفتید باید فوراً یکی از اقدامات زیر را انجام دهید:
- به WooCommerce 8.9.3 یا نسخه Backport شده 8.8.5 به روز رسانی کنید. یا به نسخه جدید یعنی WooCommerce 9.0 بروز کنید.
- اگر نمیتوانید فوراً بهروزرسانی کنید، باید بخش Order Attribution فروشگاه را غیرفعال کنید. این آسیبپذیری تنها در صورتی امکانپذیر است که Order Attribution فعال باشد. غیرفعال کردن این بخش در سفارشها یک راه حل موقت خوب است، اما حتما باید بروزرسانی انجام شود.