### 简要描述:
注入毫无限制!
### 详细说明:
昨天刚下载的源码(应该最新的吧...)
bug文件位置:https://images.seebug.org/upload/app/models/csdjskins.php第3466行
```
function GetIP(){ //定义了一个获取ip地址的函数
if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) //换取ip地址,如果存在,则使用client_ip。
$ip = getenv("HTTP_CLIENT_IP");
else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) //同上,获取x-forwarded-for的ip
$ip = getenv("HTTP_X_FORWARDED_FOR");
else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))
$ip = getenv("REMOTE_ADDR");
else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))
$ip = $_SERVER['REMOTE_ADDR'];
else
$ip = "";
return($ip);
```
跟踪GetIp()函数调用地址:https://images.seebug.org/upload/app/controllers/open.php第186行。
```
$regip=$this->CsdjSkins->GetIP();//使用句柄调用了前面的获取ip函数
if(empty($regip)){//仅仅判断是否为空,没做处理
$this->CsdjSkins->Msg_url('请不要使用代理注册!','javascript:history.back();');
}
if($this->CsdjSkins->Getqx($user['CS_Name'],User_RegJzName)=='ok'){ //禁止帐号
$this->CsdjSkins->Msg_url('您的帐号已被禁止注册!','javascript:history.back();');
}
if($this->CsdjSkins->Getqx($user['CS_Nichen'],User_RegJzName)=='ok'){ //禁止帐号
$this->CsdjSkins->Msg_url('您的呢称已被禁止注册!','javascript:history.back();');
}
$sqlu="SELECT cs_id,CS_AddTime FROM ".CS_SqlPrefix."user where CS_Regip='".$regip."'";//带入查询
```
### 漏洞证明:
本地环境搭建演示:去前台注册会员,然后burp抓包,伪造ip参数。这边伪造Clien-IP和x-forwarded-for都可以,
[<img src="https://images.seebug.org/upload/201402/18115325465f61c5c621ae08656d78843c521546.jpg" alt="QQ图片20140218114031.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201402/18115325465f61c5c621ae08656d78843c521546.jpg)
可以看到日志中'被带入查询了。
Post注入还是使用sqlmap演示下吧
[<img src="https://images.seebug.org/upload/201402/1811543180a62daf5c21a2bff43f0fa0aa20d973.jpg" alt="QQ图片20140218114102.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201402/1811543180a62daf5c21a2bff43f0fa0aa20d973.jpg)
暂无评论