- A+
所属分类:Seay信息安全博客
显示不全请点击全屏阅读
重新看了下91736之前那个getip的漏洞已经补上了.
漏洞文件:system/modules/member/index.php
public function edit(){
if(empty($_COOKIE[‘member_user’])||empty($_COOKIE[‘member_userid’])){
showmsg(C(“admin_not_exist”),”index.php?m=member&f=login”);
}
$userid=$_COOKIE[‘member_userid’];
$info=$this->mysql->get_one(“select * from “.DB_PRE.”member where `userid`=$userid”);//漏洞就在此处,$userid没过滤直接入库查询.
$input=base::load_class(‘input’);
$field=base::load_cache(“cache_field_member”,”_field”);
$fields=””;
foreach($field as $value){
$fields.=”<tr>n”;
$fields.=”<td align=”right”>”.$value[‘name’].”£o</td>n”;
$fields.=”<td>”.$input->$value[‘formtype’]($value[‘field’],$info[$value[‘field’]],$value[‘width’],$value[‘height’],$value[‘initial’]).” “.$value[‘explain’].”</td>n”;
$fields.=”</tr>n”;
}
assign(‘member’,$info);
assign(“fields”,$fields);
template(“member/edit”);
}
其实还有个function edit_save也有同样的漏洞,同理,不过是个update的注射
方法想必大家都会,我用火狐的插件edit cookies来为大家演示下:
function edit: www.2cto.com
这样账户被密码就被注射出来了:
function edit_save:
Tags:
如果您喜欢我的博客,欢迎点击图片定订阅到邮箱 也可以点击链接【订阅到鲜果】
如果我的想法或工具帮助到了你,也可微信扫下方二维码打赏本人一杯咖啡