Tag Archives: 验证码

python验证码之Discuz(四):暂时的终结

看书看得好烦,想想还是把python验证码系列暂停掉好了,其实这部分代码早几周就结束了,不过想着既然说是Discuz验证码,破解了去Discuz注册一堆马甲乱灌水一通才有快感啊。 ` 哪晓得Discuz论坛管理员们早就预见了我会这么干,早早把验证码改成了中文的,没得玩了,或者说没时间来研究怎么玩了,真是太遗憾了。 `

Posted in Discuz, python, 编程 | Tagged , , | 2 Comments

python验证码识别之Discuz(三)

继续验证码的码字,上次把去噪的算法重新写了一下,并指出了可以改进的部分,不过我是安于现状的人,弄了个60%左右成功率的就沾沾自喜了,姑且就进入下一步吧。 ` 这期间由于discuz官方论坛不知出于何种原因突然改变了验证码的生成方式搞了个中文验证码,我本来计划着扩充测试库到100+个,好好测一下成功率的,可是他们这么一搞无奈只好自己根据Discuz7.2 UTF-8版架了个专门用于破解验证的论坛,把设置重现为Discuz官方论坛以前的设置:http://69.163.35.68/old/crackdz/ 。至于中文验证码,虽然感觉也能做,就不知道有没有时间来研究中文验证码了。

Posted in Discuz, python, 编程 | Tagged , , , | 10 Comments

Discuz你太狠了,在下甘拜下风

昨天正做着Discuz验证码的在线破解,测试到一半突然发现全错了,非常沮丧之际猛然发现是因为Discuz的验证码改成中文的了,不知道是不是我最近更新验证码破解的文章的缘故,如果是的话那也太荣幸了@@ ` 不过其实我觉得中文的验证码难度其实并没有提高太多,因为都是方块字了,旋转定位要容易得多了。我之前最头痛的还是英文字体很多,宽瘦不一,很多字母还是圆形的很难转正了比较。转不正的话很多判断都没法做,或者说做起来比较困难,而且英文比如CG6等等其实很像,旋转的不太好就会造成误判很多,中文的话当然也有这种情况,但是相对来说感觉好搞一点。 ` 说到底,你不扭曲的话验证码效果不会很好的,也就是再多花点时间破解一下中文验证码而已。

Posted in Discuz | Tagged , | 5 Comments

python验证码识别之Discuz(二)

承接上文,上文写道去噪,本文应该接着从切块开始写,然后到比对的。然则上文写完之后开始收集训练样本,把样本用去噪算法一做,惨不忍睹;再加上上文之后有很多人留言提了不少意见,所以有了新的方向。 ` 首先骨头兄提议说可以用tesseract来做OCR,这个确实是一个很好的建议。很多验证码其实很简单,根本用不到高级的东东,直接用tesseract就可以摆平。 ` 然而经过实验,效果不尽如人意,如图: ` 还有关于选取多角度多采样的建议,后来发现会导致样本容量太大,性能受到影响,所以也作出了一定的调整,目前来说验证码识别的部分算是写完了,绝对识别率在10%左右,如果可接受其他候选结果的话,识别率在50%左右,不能识别的主要因素是去噪效果不理想和没有成功切块。 ` 最后还有关于Discuz验证码使用反色阴影的建议,虽然可能可以大幅提高去噪成功率,但是因为不够通用被我舍弃了。 ` 我不喜欢直接写结论,我会把我的探索过程和绕圈子过程一起写出来,因为这样看了才有收获,否则也就是”又一个注册码破解器”这种东东而已,能写出来多少就写多少吧。

Posted in Discuz, python, 编程 | Tagged , , , | 11 Comments

python验证码识别之Discuz(一)

python就是这么一个语言:你越是使用,越能体会它的方便与强大。 ` 在写python爬虫脚本用法总结的时候曾经提到过验证码的处理问题,当时就说了google的验证码要凉拌,但是某些验证码,尽管它看起来可能很复杂, 但是却没有想象的那么难破,我就有破解成功的例子。不过那个例子并不是Discuz,当时我还觉得Discuz的验证码挺花哨的,如图: ` 前一阵simplecd的论坛老有机器人注册进来灌水一通,不甚其扰,但是也说明了discuz的验证码可能被别人吃透了,所以才会机器人猖獗,我改了验证码方式以后果然机器人就绝迹了。 ` 机器人泛滥就说明这个注册机制有漏洞,那么Discuz的验证码肯定是有漏洞的,于是本人就试着也破解一下好了。

Posted in Discuz, python, 编程 | Tagged , , , | 14 Comments