代码说

code is poetry

代码说    
碎碎念:为什么这么简单你做不到,为什么这种速度你追不到。  换一换

emlog验证码更新

作者:coderzheng 发布于:2014-11-30 21:38 Sunday 分类:other  阅读模式

emlog后台开启验证码(注意评论部分和登录页的验证码是分开设置的)之后,用户在进行评论或登录时需要填写验证码,如下:

默认的验证码只加了噪点,没有加干扰线,这在一定程序上降低了"验证码识别程序"[1]的算法复杂度,给恶意攻击者提供了便利。为了提高验证码的安全性,我对这部分做了修改,随机增加4条干扰线。
主要修改的程序(/include/lib/checkcode.php)如下:


将图中红色框框住的部分添加进程序中即可。

由于添加了干扰线,安全性还是高了不少,对比之前没加干扰线的登录页面:

可以看到:人眼都比较难分辨,就更别说机器了,当然并不是每一张图片都能有这么好的效果。
本站中的验证码部分除了加干扰线之外还增加了点击验证码图片自动刷新的功能。具体作法也很简单,只要在验证码部分的img元素中添加点击事件(这个事件自动更新img的src属性值)即可。

over.
---------------------------------------------
注释:
[1]机器自动识别验证码的原理是怎样的: http://www.zhihu.com/question/22479139

标签: emlog

你可以发表评论、引用到你的网站或博客,或通过RSS 2.0订阅这个博客的所有文章。
上一篇: 碎语云插件程序更新  |  下一篇:emlog漏洞修复