来源:自学PHP网 时间:2015-04-17 10:15 作者: 阅读:次
[导读] 第一次的漏洞利用程序有个bug 但是因为有这个bug 导致了成功利用了发现的第三处漏洞第二次漏洞也是并没有用到第二次所提到的漏洞,其实是本次的好吧,有些绕口简单了说就是若本漏...
第一次的漏洞利用程序有个bug 但是因为有这个bug 导致了成功利用了发现的第三处漏洞
第二次漏洞也是并没有用到第二次所提到的漏洞,其实是本次的
好吧,有些绕口
简单了说就是
若本漏洞修复了,可以利用漏洞2
漏洞2修复了可以利用漏洞1
漏洞1影响范围更大一些
-------------------------------
传送门
第一次http://www.2cto.com/Article/201308/239930.html
第二次 http://www.2cto.com/Article/201308/239931.html
elseif ($_REQUEST['act'] == 'signin') { if (!empty($_SESSION['captcha_word']) && (intval($_CFG['captcha']) & CAPTCHA_ADMIN)) {//$_SESSION['captcha_word'] 此session默认是不存在的,只在生成验证码的时候才会生成,所以呢…… include_once(ROOT_PATH . 'includes/cls_captcha.php'); /* 检查验证码是否正确 */ $validator = new captcha(); if (!empty($_POST['captcha']) && !$validator->check_word($_POST['captcha'])) { sys_msg($_LANG['captcha_error'], 1); } }
可以使用第一个 http://www.2cto.com/Article/201308/239930.html 的验证程序 因为利用程序没有使用cookie,按理说应该是会利用失败
但是正因为如此,导致每次都是是新的请求(以至于$_SESSION['captcha_word']永远都不会生成,当然即使启用了cookie,也得获取一下有效的验证码才可以)
所以成功利用此漏洞
-----
假如不存在此漏洞(比如修改为判断$_SESSION['captcha_word'] 不存在直接退出)
修改一下第一个漏洞利用程序(启用cookie,并使用此cookie访问一下验证码生成页面,来生成$_SESSION['captcha_word'])
-----
若第二个漏洞修复
修改一下第一个漏洞利用程序
启用cookie,并使用此cookie访问一下验证码生成页面,来生成$_SESSION['captcha_word']
则通过上面那个步骤(查看正确的有效的验证码,有些复杂,但可以实现,比如通过浏览器访问,然后把cookie复制到利用程序中一并提交)
修复方案:
逻辑错误 |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com