我们最近开始在我们的网站上使用用户友好的网站验证码sweet-captcha。在最近一轮安全审核之后,我们发现了一个潜在的漏洞。
此漏洞允许攻击者在成功解决问题后无限期绕过验证码。
我已经尝试联系验证码创建者,但没有得到任何回应。我在这里发帖主要是希望我的实现不正确,因此可以立即获得更安全的替代方案。
,验证码包含在我们的网页中<?php echo $sweetcaptcha->get_html() ?>
我们的大多数网站都是DHTML以避免重新加载,这使我们了解安全问题如下:
$sweetcaptcha->check
),执行一些工作,然后将其响应返回到前端。要解决此安全问题,我们认为应该执行以下步骤:
使php web服务中的验证码响应无效,以防止个人使用相同的验证码令牌,例如如果有电话:
$sweetcaptcha->check(array('sckey' => $_POST['sckey'], 'scvalue' => $_POST['scvalue']))
返回true,它应该在使用相同参数的所有后续评估中返回false。那没有发生。即使我们可以实现我们自己的后端解决方案来防止重复验证,但如果情况应该如此,那么最好在验证码现有代码中解决。
如果有人可以就上述问题提出建议,我将不胜感激。