11. April 2018

secuvera-SA-2017-03 und secuvera-SA-2017-04: Mehrere Schwachstellen in Inventarisierungssoftware OCS Inventory NG aufgedeckt

Im Rahmen des intern stattfindenden Labdays haben wir das quelloffene Inventory-Management-Werkzeug „Open Computer and Software Repository Next Generation“ (=OCS Inventory NG) der französischen Firma factorfx mittels Pentesting-Methoden näher unter die Lupe genommen. Dabei konnten wir zwei Schwächen in der Webanwendung zur Steuerung der Lösung identifizieren. Eine der beiden Schwachstellen ermöglicht die vollständige Kompromittierung der Datenbank.

Mit diesem Blog-Post möchte ich auf die Veröffentlichungen hier, hier und hier bzw. hier, hier und hier hinweisen.

Eigentlich waren wir auf der Suche nach weiteren Schwachstellen aus der Reihe „Rise-of-the-Machines„, also nach Schwachstellen zwischen Maschine-zu-Maschine-Kommunikation. Die hier erwähnten Schwächen sind jedoch bei der Betrachtung der Webanwendung, welche zur Steuerung und Reporterstellung genutzt wird, zutage getreten.

Wie wurden die Schwächen gefunden?

Am Anfang steht der Aufbau. Hier hat seinerzeit unser Praktikant Michael Hermann gute Vorarbeit geleistet. Er hat quelloffene Lösungen recherchiert, die er dann auch nach gemeinsamer Auswahl in der Testumgebung aufgebaut hat.

Im Anschluss an die Vorbereitungen wurden in den angesprochenen Labdays sowohl die Kommunikation zwischen Agent und Mutterschiff, als auch die mitgebrachten Steuerungswerkzeuge mit Pentesting-Methoden analysiert.Die analyse erfolgte durch Michael Hermann und Simon Bieber gemeinsam in mehreren Sitzungen.

Was haben wir gefunden?

Bei der Analyse traten unter anderem zwei Schwächen zu Tage, die man in der heutigen Zeit nicht mehr in Webanwendungen finden möchte, denn beide haben mit mangelhafter Eingabedatenvalidierung zu tun. Beide wurden im responsible disclosure verfahren an den Hersteller gemeldet, bevor wir sie publiziert haben.

Zum einen handelt es sich um reflektiertes Cross-Site-Scritpting (reflected XSS). In der Liste der zehn am häufigsten angetroffenen Risiken bei Webanwendungsprüfungen des Open Web Application Security Projects ist XSS noch auf Platz 7 von 10 zu finden (OWASP TOP 10 A7).

Zum anderen konnte man bis zur jüngst veröffentlichten Version durch verwundbare Parameter auf die Datenbank mittels SQL-Injection-Angriff zugreifen. In der OWASP Top 10 auf Platz 1 vertreten (OWASP Top 10 A1). Mit dem Werkzeug sqlmap wurde dann auf die Datenbank zugegriffen, was  zur Folge hat, dass die Schutzziele Vertraulichkeit, Integrität und gegebenenfalls auch die Verfügbarkeit ausgehebelt wurden (sozusagen ein Totalschaden).

Beide Schwachstellen veranschaulichen, warum die Bildung von Vertrauensgrenzen (trust boundaries) und die Eingabedatenvalidierung bei der Übernahme von Daten aus nicht vertrauenswürdigen Umgebungen (wie beispielsweise vom Client 😉 ) so wichtig ist. Das OWASP hat ein gutes Beispiel dazu.

Und darüber hinaus zeigen die Veröffentlichungen, dass es durchaus Sinn machen kann, dass Hersteller ihre Produkte einer Sicherheitsüberprüfung beispielsweise in Form eines Penetrationstests oder einer Produktprüfung unterziehen lassen. Wir helfen gerne, wenn man uns anspricht.

Hintergrundinfos zu:

  • Responsible Disclosure Policy bei der secuvera
    Secuvera setzt auf das sog. Responsible Disclosure Verfahren, bei dem alle gesammelten Details zur Schwachstelle an Hersteller übermittelt werden, sodass diese in der Lage sind, die Schwachstelle nachzuvollziehen und zu beseitigen. Erst nach erfolgreicher Behebung des Problems in einem dafür als angemessen empfundenen Zeitraum, sowie einer Karenzzeit zur Einspielung der Behebung durch Anwender werden Informationen über Schwachstellen in Form eines Advisories veröffentlicht. Wenn ein Hersteller das Problem jedoch nicht anerkennen mag oder keine Reaktion auf unseren Kontaktversuch zeigt, wird die Beschreibung der Schwachstelle früher veröffentlicht, auch wenn kein Fix bereit steht.
  • Über Labdays
    Jeder Mitarbeiter im Geschäftsbereich Penetrationstests der secuvera GmbH nimmt am einmal im Monat verbindlich stattfindenden Labday teil. Der Labday dient zur persönlichen Weiterbildung der Mitarbeiter, indem neue Angriffstechniken unter Laborbedingungen nachvollzogen werden oder nach Schwachstellen in Produkten geforscht werden können.