VTLS Virtua InfoStation.cgi - SQL Injection

EDB-ID:

34420




Platform:

CGI

Date:

2014-08-26


=====[Alligator Security Team - Security Advisory]============================

     - VTLS Virtua InfoStation.cgi SQLi - CVE-2014-2081 -

  Author: José Tozo  < juniorbsd () gmail com >

=====[Table of Contents]======================================================

1. Background
2. Detailed description
3. Other contexts & solutions
4. Timeline
5. References

=====[1. Background]============================================================

* Versions affected: VTLS Virtua InfoStation.cgi - All Versions under 2014.X - or 2013.2.X Are Affected
* Release date: 22/08/2014
* Impact: Allows unauthorized disclosure of information; Allows unauthorized modification; Allows disruption of service

VTLS-Virtua is a full-function library management system, providing management of circulation, cataloging, serials, acquisitions, course reserves and more. All functions are fully integrated, allowing any staff user to access any function at any time according to their library-assigned permissions [1].

=====[2. Detailed description]================================================

Due to improper sanitization, InfoStation.cgi is prone to a SQL Injection vulnerability in its "username" and "password" fields, which could lead an attacker to take over the server database.

The vulnerability described in this document can be exploited by manipulating the aforementioned parameters as decribed in the following example:

http://www.example.com/web_reports/cgi-bin/InfoStation.cgi?mod=login&func=process&database=1&lang_code=en&report_group=Adm&filter=aaa&username=[SQLI]&password=[SQLI]

Currently, the username/password fields on the Infostation login page are vulnerable to attack through modification of the URL via sql injection.
This is where instead of entering staff/staff or root/root, an actual SQL statement is sent in its place 'select * from' or 'delete * from' to modify/query/remove data directly from the database.
We need to verify that the username/password is valid before sending them to the database to verify status and permissions. This can be achieved using prepared statements [2].

=====[3. Other contexts & solutions]==========================================

In 2014.1.1 and 2013.2.4, the InfoStation Log In screen has been improved so that it is not vulnerable to attack via SQL statement injection.

To have the fix applied, your library would need to update your software to the most recent 2014.x or 2013.2.x version.

=====[4. Timeline]============================================================

23/02/14 Vendor & Mitre notification.
24/02/14 Mitre assigned CVE-2014-2081.
28/03/14 Vendor notified again.
28/03/14 Vendor answered the bug was fixed.
05/08/14 Asked vendor from which version has the fix.
05/08/14 Vendor answered the Release Notes and [2].
18/08/14 Asked vendor to report this to the affected customers.
22/08/14 Disclosure date.

=====[5. Reference]============================================================

1 - http://www.vtls.com/products/vtls-virtua
2 - As Vendor answered