Document Title: =============== European Parliament - Blind SQL Injection Vulnerability References (Source): ==================== http://www.government-lab.com/get_content.php?id=37 CERT-EU #24002 Release Date: ============= 2016-05-10 Government Laboratory ID (VL-ID): ==================================== 37 Common Vulnerability Scoring System: ==================================== 7.4 Product & Service Introduction: =============================== The European Parliament (EP) is the directly elected parliamentary institution of the European Union (EU). Together with the Council of the European Union (the Council) and the European Commission, it exercises the legislative function of the EU. The Parliament is composed of 751 (previously 766) members, who represent the second largest democratic electorate in the world (after the Parliament of India) and the largest trans-national democratic electorate in the world (375 million eligible voters in 2009). (Copy of the Homepage: )https://en.wikipedia.org/wiki/European_Parliament ) Abstract Advisory Information: ============================== A governemnt laboratory core team researcher discovered a blind sql-injection vulnerability in the official European Parliament online service web-application. Vulnerability Disclosure Timeline: ================================== 2016-04-03: Researcher Notification & Coordination (Government Laboratory - Core Research Team) 2016-04-04: Vendor Notification (CERT EU - Security Department) 2016-04-14: Vendor Response/Feedback (CERT EU - Security Department) 2016-04-27: Vendor Fix/Patch (European Parliament Site Developer Team) 2016-05-10: Public Disclosure (Government Laboratory) Discovery Status: ================= Published Affected Product(s): ==================== European Union Product: European Parliament - Online Service (Web-Application) 2016 Q2 Exploitation Technique: ======================= Remote Severity Level: =============== High Technical Details & Description: ================================ A remote blind sql-injection web vulnerability has been discovered in the official European Parliament online service web-application. The vulnerability allows remote attackers to execute own sql commands to compromise the web-application or connected database management system. The vulnerability is located in the `pubRef`, `type`, `reference`, `secondRef` and `language` values of the `getDoc.do` file GET method request. Remote attackers are able to execute sql commands by injection of malicious statements via GET method request. The vulnerability is located on the application-side of the online service web-application. The injection points are the `pubRef`, `type`, `reference`, `secondRef` and `language` values values in the vulnerable marked `getDoc.do` file. The security vulnerability is a classic blind sql-injection in the application error reply web context covered by the insecure exception-handling. The input and output of the error exception is not secure validated and can forward the requested string to receive a valid output to compromise the computer system. The security risk of the sql-injection vulnerability is estimated as high with a cvss (common vulnerability scoring system) count of 7.4. Exploitation of the remote sql injection web vulnerability requires no user interaction or privileged web-application user accounts. Successful exploitation of the remote sql injection results in database management system, web-server and web-application compromise. Request Method(s): [+] GET Vulnerable File(s): [+] getDoc.do Vulnerable Parameter(s): [+] pubRef [+] type [+] reference [+] secondRef [+] language Affected Module(s): [+] Application Error (Exception-Handling) Proof of Concept (PoC): ======================= The sql-injection web vulnerability can be exploited by remote attackers without user interaction or privileged web-application user accounts. For security demonstration or to reproduce the vulnerability follow the provided information and steps below to continue. PoC: Exploitation http://www.europarl.europa.eu/sides/getDoc.do?type=1+1%27&reference=-1=1%27&secondRef=or&language=1=2%27[SQL INJECTION VULNERABILITY!]-- http://www.europarl.europa.eu/sides/getDoc.do?type=1+1%27&reference=-1=1%27[SQL INJECTION VULNERABILITY!]--&secondRef=or&language=1=2%27-- http://www.europarl.europa.eu/sides/getDoc.do?type=1+1%27[SQL INJECTION VULNERABILITY!]--&reference=-1=1%27&secondRef=or&language=1=2%27-- PoC: Vulnerable Source (getDoc.do) [Application Error - Exception Handling]