BiWEB最新门户版注入漏洞打包(证明in_array使用不当的危害)

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

### 简要描述: BiWEB最新门户版注入漏洞打包(证明in_array使用不当的危害) ### 详细说明: 在wooyun上看到了有人把biweb的shell拿到了: [WooYun: BIWEB门户版Getwebshell漏洞](http://www.wooyun.org/bugs/wooyun-2014-049746) ,也有人提了其他漏洞,我也来找找它的漏洞吧。去官网下BiWEB门户版最新的5.8.3来看看。 BiWEB在全局过滤时in_array()使用不当,造成全局过滤可以绕过。 先来看看BiWEB是怎么处理防注入的。首先BiWEB对用户输入进行了全局过滤,过滤的方法在/config/filtrate.inc.php中 ``` <?php //过滤GET或POST的值,去除两端空格和转义符号 if ($_SERVER['REQUEST_METHOD'] == 'POST'){ check::filtrateData($_POST,$arrGPdoDB['htmlspecialchars']); }elseif($_SERVER['REQUEST_METHOD'] == 'GET'){ check::filtrateData($_GET,$arrGPdoDB['htmlspecialchars']); } ?> ``` 然后我们去看看filtrateData(),在/web_common5.8/check.class.php中 ``` static function filtrateData(&$ParamValue,$arrHtml){ if (is_array($ParamValue)){ foreach ($ParamValue as $key=>$value){ if(is_array($value)){ check::filtrateData($value,$arrHtml); }else{ if(v === 'v' || v === '' || strpos(p,v)) exit; if($key === 'v') { echo v;exit; } if(count($arrHtml)){ if(in_array($key,$arrHtml)) $ParamValue[$key] = trim($value); else...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息