发新话题
打印

网康安全网关SQL注入(绕过全局防注入)

网康安全网关SQL注入(绕过全局防注入)

漏洞概要
缺陷编号:        WooYun-2014-77689
漏洞标题:        网康安全网关SQL注入(绕过全局防注入)
相关厂商:        网康科技
漏洞作者:        secmap
提交时间:        2014-10-08 09:56
公开时间:        2014-11-22 09:56
漏洞类型:        SQL注射漏洞
危害等级:        高
漏洞状态:        厂商已经确认
漏洞来源:        http://www.wooyun.org
Tags标签:        无

漏洞详情披露状态:
2014-10-08:        细节已通知厂商并且等待厂商处理中
2014-10-08:        厂商已经确认,细节仅向厂商公开
2014-10-11:        细节向第三方安全合作伙伴开放
2014-10-18:        细节向核心白帽子及相关领域专家公开
2014-10-28:        细节向普通白帽子公开
2014-11-17:        细节向实习白帽子公开

简要描述:网康科技经过上一次的洗礼过后,整体的安全性有了很大的提高,(拍掌...)
其全局过滤函数非常变态,研究过后,最终还是发现了一处注入,绕过了变态的全局防注入。


详细说明:0x01 先来看看全局过滤函数


code 区域//防注入函数
function inject_check($sql_str)
{
        return...
}

更变态的还有


code 区域function str_check($str)
{
      。。。
        return true;
}

当检测到有这些符号、字符 直接调用exit()推出,有点变态。

0x02 下面来说这个注入是怎样产生的

漏洞的文件为

/WebPages/applyhardware.php

部分代码


code 区域include("include/common.inc");
session_start();
...

其中 $hard_user 和 $hard_pass 两个参数,经过了str_check的检查,但两个参数均是通过urldecode解码后得到的 ,加上最后进入SQL查询的语句为:

select ...

于是最终想到了结合两个参数,实现注入

0x03 对该注入的利用

通过对str_check函数的分析,我们提交的参数不能含有空格、单引号、双引号、斜线、分号等,最后通过无数次的测试,有了最终的利用代码:

hard_user=...



0x04 漏洞证明

https://60.216.87.203//WebPages/applyhardware.php?action=applyhardware&hard_user=...





https://115.24.177.57/WebPages/applyhardware.php?action=applyhardware&hard_user=...




漏洞证明:


修复方案:inject_check()函数过滤

漏洞hash:48637081f799febcc0d93af93a6961d2版权声明:转载请注明来源 secmap@乌云

漏洞回应
厂商回应:
危害等级:高
漏洞Rank:19
确认时间:2014-10-08 10:08
厂商回复:感谢大家的支持,大家的支持是我们进步的动力。
最新状态:暂无

原文:http://www.wooyun.org/bugs/wooyun-2014-077689

[ 本帖最后由 linda 于 2016-2-16 10:56 编辑 ]

TOP

发新话题