发新话题
打印

网康安全网关任意用户密码修改+SQL注入(绕过全局防注入)

网康安全网关任意用户密码修改+SQL注入(绕过全局防注入)

漏洞概要
缺陷编号:        WooYun-2014-77810
漏洞标题:        网康安全网关任意用户密码修改+SQL注入(绕过全局防注入)
相关厂商:        网康科技
漏洞作者:        路人甲
提交时间:        2014-09-29 17:42
公开时间:        2014-12-28 17:42
漏洞类型:        设计缺陷/逻辑错误
危害等级:        高
自评Rank:        20
漏洞状态:        厂商已经确认
漏洞来源:        http://www.wooyun.org
Tags标签:       设计缺陷/边界绕过 php源码审核

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

简要描述:网康安全网关任意用户密码修改+SQL注入(绕过全局防注入)
详细说明:0x01 漏洞信息

/vpnweb/resetpwd/resetpwd.php

产生漏洞的代码:


code 区域<?php
include("include/common.inc");
...

0x02 任意用户密码修改

$update = "update...";

从上面的代码可以知道修改密码只需要UserId即可修改,而该参数是可以猜测的,于是造成了漏洞。

0x03 SQL注入

进入SQL查询的代码为:

$update = "update ...";

可以知道,UserId没有单引号的保护,虽然UserId经过了str_check函数的检查

if(...)exit;

0x04 SQL注入漏洞证明

[url=https://124.133.xx.xx:4443//vpnweb/resetpwd/resetpwd.php?action=update&password1=111111&UserId=1。。。





https://218.xx.167.1x/vpnweb/resetpwd/resetpwd.php?action=update&password1=111111&UserId=1。。。
[url=http://www.wooyun.org/upload/201409/291716542a1e75b6f690929eb01450ec0aa8f0a3.jpg]


0x05 任意用户密码修改证明

首先通过SQL注入查询出一个用户的UserId,UserName,Password,如图





接下来修改该用户的密码为:wooyun

只需要提交如下的的参数

https://218.xx.167.1x/vpnweb/resetpwd/resetpwd.php?action=update&password1=wooyun&UserId=7

再次注入出UserId为7的密码:





可以看见,已经被修改为:wooyun。(密码已改回原密码)

漏洞证明:


修复方案:过滤
版权声明:转载请注明来源 路人甲@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:17
确认时间:2014-09-29 18:11
厂商回复:该漏洞与WooYun-2014-属同一漏洞,建议合并,谢谢
最新状态:暂无

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

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

TOP

发新话题