热门搜索: 物流跟踪 自定义URL oauth2.0 银联
当前位置: 我的shopex插件站 > 教程 > shopex >
详细内容

ShopEx验证码绕过漏洞的解决方法

时间:2013-09-07 20:25 来源:MyShopEx插件站 作者:本站原创 点击:

有网友咨询ShopEx中的验证码绕过漏洞如何解决,本站分析如下,供参考。

漏洞描述如下:

描述:

验证码是一种区分用户是人或计算机的程序,可以防止:恶意破解密码、刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试

危害:

黑客可以利用此缺陷对特定用户账户进行暴力破解,若密码强度不够很有可能被攻陷。




在这里本站先讲一下验证码机制的一般作用:

验证码机制一般是用来防止不良用心的人利用机器人程序自动不断地向网站提交数据,以达到一些攻击目的:比如暴力破解网站的账号密码、不断提交垃圾数据,最终使网站数据量暴涨,导致数据库或其它一些故障等。

验证机制是如何防止上面的自动提交数据呢?

答:验证码一般是随机生成的一串字母或数字,拿登录功能来说,用户想要登录,除了输入用户名和密码,还要输入一个验证码,这个验证码每次打开页面的时候都不一样,服务器后台都记录了当前的验证码是多少。想要登录,就要填写这个正确的验证码,然后才能提交登录。如果验证填的不对,就不允许登录。因为验证码都是要人工才能识别看的见的,机器程序是识别不到的(也非绝对,一些简单的图片格式的验证码还是有程序可以自动识别的,所以验证码一般搞的复杂一点的格式),这样就可以防止程序自动提交数据的。


回到上面的漏洞描述,为什么说验证码会绕过呢?

有点编程经验的人都知道,要想验证码能达到上面的目的,就必须要满足2个要点:1、随机性;2、一次性;没有满足这两点,就是形同虚设。

然后再到回到ShopEx系统里,针对上面2个要点进行一下测试便知道问题所在。

1、随机性:拿登录页面来说,每次打开登录页面,验证码是不一样的,这就说明随机性是满足的。

2、一次性:顾名思义,就是每个验证码只能使用一次就要失效掉,不能说一个验证码,可以重复使用N次还不失效,这样的验证码就是形同虚设了。然后再回到登录页面,故意输入一个错误的用户名和密码,然后输入正确的验证码。测试发现,验证码永远是这同一个都有效的。


最后问题怎么解决呢?

知道了问题的原因,解决就有思路了,由于涉及到修改的地方较多,所有用到验证码的地方都要按上面两点要求来修正。本站就不详细贴出代码了,有兴趣的朋友可以自己尝试修改。或是继续等待官方的安全补丁吧。有急需的朋友可以联系本站解决。


(责任编辑:admin)
标签:shopex漏洞解决验证码方法绕过
上一篇:ShopEx售后服务查询不到订单问题修复 下一篇:让ShopEx在线客服浮动框默认展开的方法