یک آسیبپذیری امنیتی از نوع Cross-Site Scripting (XSS) در فریمورک محبوب Apache Wicket شناسایی شده است که میتواند منجر به اجرای کدهای مخرب در مرورگر کاربران شود.
جزئیات فنی آسیبپذیری
مشکل اصلی در کلاس org.apache.wicket.markup.html.link.ExternalLink نهفته است. زمانی که این کامپوننت به تگهای HTML غیر از a، link یا area متصل میشود، سیستم سعی میکند یک هندلر کلیک جاوااسکریپت (JavaScript click handler) برای ویژگی onclick ایجاد کند.
در فرآیند تولید این هندلر، آدرس URL موجود در مدل کامپوننت، بدون انجام عملیات Escape کردن (خنثیسازی) برای آن بافت (Context)، مستقیماً به یک رشته جاوااسکریپت که با تککوت (single-quote) محصور شده است، اضافه میشود. این عدم خنثیسازی صحیح ورودی (Improper neutralization of input) به مهاجم اجازه میدهد تا با تزریق کاراکترهای خاص، رشته جاوااسکریپت را بشکند و کدهای خود را در مرورگر قربانی اجرا کند.
پیامدهای امنیتی
- اجرای کد مخرب: امکان اجرای کدهای جاوااسکریپت غیرمجاز در مرورگر کاربر.
- سرقت نشستها: احتمال دسترسی به Session Cookies و سرقت هویت کاربران.
- دستکاری محتوا: امکان تغییر ظاهر صفحه (Defacement) یا فریب کاربران از طریق تزریق محتوای جعلی.