修改Emlog验证码机制防止恶意评论灌水,如果对你有帮助就看看吧。
Emlog被恶意评论灌水解决方法,关于Emlog验证码机制问题,用emlog程序都知道,它已经不存在更新了,所以emlog评论验证码代码年久失修了,可以无视验证码评论,因此咱也不说是谁的刷灌水机了。因为咱也不知道这个程序出来为的是什么?引流?哎。。。
验证码绕过漏洞原理:
1、利用NULL和空字符串比较的结果是TRUE从而绕过验证码检查逻辑
2、正常留言输入验证码进行BurpSuite抓包
3、将PHPSESSID修改成随意一个值,目的是让其$_SESSION不存在,再将imgcode修改成空。
4、发送数据包,可见没有提示失败(302跳转了),说明评论成功。
5、载入一个字典,即可刷评论。
6、可利用代理IP多线程即可实现无拦截评论恶意灌水轰炸
处理方案一:
1.开启session并且将是否为空的行为进行判断
2.违规词拦截(emlog用户免费提供emlog违规词拦截魔改插件和极猫云WAF防护)
3.添加第三方滑块验证
修复方案二:(修改Emlog验证码机制)
1、打开程序路径/include/lib/checkcode.php文件,把下面代码全部替换到checkcode.php里面即可
<?php/** * Emlog验证码防干扰 */session_start();$randCode = '';$chars = 'abcdefghijkmnpqrstuvwxyzABCDEFGHIJKLMNPRSTUVWXYZ23456789';for ( $i = 0; $i < 5; $i++ ){$randCode .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);}$_SESSION['code'] = strtoupper($randCode);$img = imagecreate(75,25) or die("创建图像资源失败,请刷新页面");$bgColor = isset($_GET['mode']) && $_GET['mode'] == 't' ? imagecolorallocate($img,245,245,245) : imagecolorallocate($img,255,255,255);$pixColor = imagecolorallocate($img,mt_rand(88, 245), mt_rand(55, 240), mt_rand(99, 200));//画字符、大小for($i = 0; $i < 5; $i++){$x = $i * 13 + mt_rand(3, 7) - 2;$y = mt_rand(0, 3);$text_color = imagecolorallocate($img, mt_rand(100, 250), mt_rand(80, 180), mt_rand(90, 220));imagechar($img, 5, $x + 5, $y + 3, $randCode[$i], $text_color);}//画干扰点for($j = 0; $j < 240; $j++){$x = mt_rand(0,500);$y = mt_rand(0,100);imagesetpixel($img,$x,$y,$pixColor);}//4条横斜线for ($i=0; $i < 5; $i++) { $lineColor = imagecolorallocate($img, rand(50, 150), rand(50, 150), rand(50, 150));$lineX1 = 0;$lineX2 = 90;$lineY1 = ($i + 1) * 8;$lineY2 = ($i + 1) * 15;imageline($img, $lineX1, $lineY1, $lineX2, $lineY2, $lineColor);}//4条竖斜线for ($i=0; $i < 5; $i++) { $lineColor = imagecolorallocate($img, rand(50, 150), rand(50, 150), rand(50, 150));$lineY1 = 0;$lineY2 = 90;$lineX1 = ($i + 1) * 8;$lineX2 = ($i + 1) * 15;imageline($img, $lineX1, $lineY1, $lineX2, $lineY2, $lineColor);}header('Content-Type: image/png');imagepng($img);imagedestroy($img);
效果图:
1.本站大部分内容均收集于网络!若内容若侵犯到您的权益,请发送邮件至:duhaomu@163.com,我们将第一时间处理!
2.资源所需价格并非资源售卖价格,是收集、整理、编辑详情以及本站运营的适当补贴,并且本站不提供任何免费技术支持。
3.所有资源仅限于参考和学习,版权归原作者所有,更多请阅读网站声明。