Assura discovered two full (read/write) Blind/Time-based SQL injection vulnerabilities in the Northstar Club Management version 6.3 application. The vulnerabilities exist in the userName parameter of the processlogin.jsp page in the /northstar/Portal/ directoryand the userID parameter of the login.jsp page in the /northstar/iphone/ directory.
Exploitation of the SQL injection vulnerabilities allows full access to the database which contains critical data for organization’s that make full use of the software suite. This data includes ACH information, user profiles including name, address, ACH and/or credit card information, and much more.
This proof-of-concept is a simple time-delay demonstration to preserve the security of the client environment in which this vulnerability was discovered.
A proxy is not required to prove this vulnerability, it can be proven simply in the web browser by using the same payload below in the username field.
Proxy web browser traffic on a local system using a tool such as Burp Suite.
Navigate to /northstar/Portal.
Fill in the username and password fields with arbitrary data.
Submit the form.
In Burp Suite, find the POST request to /northstar/Portal/processlogin.jsp.
Right-click and select Send to Repeater
In the Repeater tab for the POST request, follow the steps below to demonstrate that you can sleep the database.
Send the POST request as is to obtain the normal server response time in the bottom right corner of the Burp Suite response.
Append the following payload to the userName parameter then send the POST request again.
Observe that the server response time was delayed by 5 seconds, demonstrating that you successfully executed a sleep within the database.
To further exploit this vulnerability, users can simply right-click the request in Burp Suite, select Copy to File then use that request file along with sqlmap.py with default configurations to fully compromise the database.
There is no pre-packaged exploit for this vulnerability although it can easily be reproduced manually or using publicly available tools such as sqlmap.py.
Global Northstar has removed the /northstar/iphone/login.jsp from some client instances where this vulnerable Java Server Page was found. The company has yet to address the SQL injection vulnerability in the /northstar/Portal/processlogin.jsp page demonstrated above.
Clients who find themselves vulnerable to this issue should:
Continue to insist that Global Northstar address the vulnerabilities within their software.
Deploy a Web Application Firewall (WAF) that has the ability to detect and block SQL injection attacks.