BiWEB最新企业版绕过过滤注入一枚

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

### 简要描述: BiWEB最新企业版绕过过滤注入一枚 ### 详细说明: 看到pandas提交的BiWEB的漏洞 [WooYun: BIWEB企业版多处SQL注入](http://www.wooyun.org/bugs/wooyun-2014-049740) ,在search.php里找到了几个注入漏洞,我也来凑下热闹。去官网下BiWEB企业版最新的5.8.6来看看。 注入点在http://xxx.com/emaillist/cancelmail.php?u_mail=1&token=,其中u_mail=1存在注入漏洞 先来看看BiWEB是怎么处理防注入的。首先BiWEB对用户输入进行了全局过滤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']); } ?> ``` 这个过滤方法中,如果是POST方法就只对通过POST提交的用户数据进行过滤,GET方法同理。突然就想到一个方法,REQUEST_METHOD还是 POST,但是在url中带入用户数据(GET方法),然后程序中用$_GET数组来获取数据的话,那就可以获得通过url提交的数据,并且没有经过全局 过滤,这样就绕过了全局过滤。 在/emaillist/cancelmail.php中 ``` 无关代码 $objWebInit->arrGPage = $arrGPage; $objWebInit->db(); if(!empty($_GET['u_mail']) && !empty($_GET['token'])){ if($_GET['token']==md5($_GET['u_mail'].$arrGWeb['jamstr'])){//数据匹配,则标识为退订邮件 $strWhere=" WHERE...

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