Hackmanit entwickelt eine Reihe von professionellen Open-Source-Tools, die für Sicherheitsanalysen in den verschiedensten Bereichen eingesetzt werden. Das Team von Hackmanit legt dabei Wert auf eine hohe Integration: Die Werkzeuge können direkt in Ihr Unternehmen integriert werden und dabei (halb-)automatisch neue Gefahren erkennen. So kann beispielsweise WS-Attacker genutzt werden, um automatisch Ihre Webservices kontinuierlich auf Schwachstellen zu untersuchen. Weitere Tools folgen und werden zur Zeit intern entwickelt.
Cheat Sheets
Cheat Sheets dienen als Sammlung zu einem speziellen Thema, wie bspw. einer Schwachstelle oder Kategorie von Schwachstellen. Zusätzlich können Sie Informationen über Angriffstechniken, Gegenmaßnahmen oder die Benutzung von Tools sammeln.
Bei der Durchführung von Penetrationstests dienen Cheat Sheets als nützliche Referenz, die häufig verwendete Befehle und Payloads enthalten. Sie werden von Penetrationstester gerne verwendet, um effizient und gleichzeitg gründlich zu arbeiten.
Hackmanit stellt zur Zeit Cheat Sheets zu folgenden Themen Verfügung:
Übersicht der Cheat Sheets: cheatsheet.hackmanit.de
Template Injection Analyzer (TInjA)
Template Engines kommen in Webanwendungen zum Einsatz, um aus statischen Templates dynamisch zur Laufzeit ein Output Format, wie HTML, zu generieren. Es existieren unzählige Template Engines für verschiedene Programmiersprachen. Bei unsicherer Handhabung besteht das Risiko für "Template Injection"-Schwachstellen. Eine Einführung zu Template Injection finden Sie in diesem Blogpost.
Der Template Injection Analyzer (TInjA) erlaubt es automatisiert Template Injection Möglichkeiten zu erkennen und anschließend die Template Engine, die die untersuchte Anwendung verwendet, zu identifizieren. Hierbei verwendet TInjA sogenannte Polyglots, um möglichst Effizient zu arbeiten. Das Tool bietet sowohl die Möglichkeit einzelne URLs zu scannen, als auch den Output eines Crawlers zu verwenden, um eine gesamte Webanwendung zu scannen. Neben Server-Side Template Injection (SSTI), wird zudem auch das Scannen nach Client-Side Template Injection (CSTI) unterstützt. Außerdem erlaubt es TInjA Header, Cookies oder Body Parameter zu definieren, die den Requests hinzugefügt werden und während des Tests einen Proxy zu verwenden.
Eine Möglichkeit sich mit Template Injection Schwachstellen und dem automatisierten Testen mit TInjA vertraut zu machen bietet der Template Injection Playground. Hier können 46 Template Engines auf Schwachstellen untersucht werden.
Web Cache Vulnerability Scanner (WCVS)
Web Caches werden weitläufig eingesetzt, um Latenzen zu verringern und Web Server zu entlasten. Allerdings können fehlerhafte Konfigurationen oder unzureichende Anpassungen an die spezifische Webseite zu großen Sicherheitsrisiken führen. Durch Web Caches können neue Angriffsvektoren eröffnet werden oder die Auswirkung von vorhandenen Schwachstellen verstärkt werden. Einer dieser neuen Angriffsvektoren – Web Cache Poisoning – wird in diesem Blogpost erläutert.
Um Webanwendungen einfach und effizient auf ihre Anfälligkeit für Web Cache Poisoning zu testen, wurde der Web Cache Vulnerability Scanner (WCVS) entwickelt. Der Scanner ist in seiner Standardkonfiguration out-of-the-box nutzbar und bietet zusätzlich eine Vielzahl von Anpassungsmöglichkeiten. Sowohl das Testen einer großen Anzahl an Webseiten, als auch das rekursive Testen dieser, z. B. durch das Nutzen des integrierten Crawlers, ist möglich. Die Ergebnisse können als Report im JSON Format gespeichert werden. Eine ausführliche Vorstellung von WCVS findet sich in diesem Blogpost.
WS-Attacker
XML-basierte SOAP Webservices sind eine weitverbreitete Möglichkeit, die es dem Nutzer erlaubt, aus der Ferne Prozeduren aufzurufen und beliebige Daten zwischen Systemen auszutauschen. Einsatz finden SOAP Webservices aktuell bei serviceorientierter Architektur, Cloud Schnittstellen, Verwaltung von föderierten Identitäten, eGovernment oder militärischen Services. Die vielfältigen Anwendungsmöglichkeiten haben zur Entwicklung von zahlreichen - meist umfangreichen - Erweiterungen und damit zu einer höheren Komplexität geführt. Daraus resultiert wiederum eine große Angriffsfläche und das eine Vielzahl an möglichen Angriffen gegen Webservices existiert. Während der Implementierung von gewöhnlichen Web Applikationen nutzen die Entwickler verschiedene Penetrationstest Tools, um die Sicherheit Ihrer Systeme zu evaluieren. Im Vergleich zu sehr bekannten Angriffstechniken, wie SQL Injection oder Cross-Site Scripting (XSS), existieren jedoch keine Penetrationstest Tools, die das Testen von Webservice spezifischen Angriffen ermöglichen. Eben diese Lücke soll der WS-Attacker schließen und damit Entwicklern und Penetrationstestern die Möglichkeit geben, Schwachstellen in Webservices automatisiert zu erkennen. Das Tool unterstützt aktuell die Erkennung der folgenden Angriffe:
- SOAPAction Spoofing
- WS-Addressing Spoofing
- Verschiedene XML-basierte Denial of Service Varianten (inklusive intelligenter adaptiver Tests)
- XML Signature Wrapping
- Angriffe gegen XML Encryption
TLS-Attacker
Der TLS-Attacker ist ein Java-basiertes Framework zur Analyse von TLS Bibliotheken. Es ist in der Lage beliebige Protokoll-Nachrichten in einer willkürlichen Reihenfolge an den TLS Peer zu senden und dabei Modifikationen, die über das dafür vorgesehene Interface definiert wurden, anzuwenden. Das bietet dem Entwickler die einfache Möglichkeit eine Abfolge von Protokoll-Nachrichten zu definieren und diese an seinen TLS Bibliotheken zu testen.
Zusätzlich unterstützt der TLS-Attacker verschiedene bekannte kryptographische Angriffe. Das bedeutet, er ermöglicht es auf einfache Weise zu überprüfen, ob ein Server gegen Padding Oracle, Invalid-Curve oder Bleichenbacher Angriffe verwundbar ist. In der Vergangenheit konnten so Schwachstellen in den großen TLS Bibliotheken identifiziert werden, darunter auch OpenSSL, Botan oder MatrixSSL.
EsPReSSO (Single Sign-On Erweiterung für Burp Suite)
Mittels der Single Sign-On (SSO) Erweiterung EsPReSSO lässt sich die beliebte Burp Suite um eine Erkennung von verschiedenen SSO Protokollen erweitern. Sie unterstützt SAML, OpenID, OAuth, BrowserId, OpenID Connect und Facebook Connect, sowie Microsoft Account. EsPReSSO analysiert dabei passiv den HTTP Traffic und markiert die Nachrichten der SSO Lösungen im Proxy der Burp Suite automatisch.
Zusätzlich bietet EsPReSSO spezielle Editoren für SAML und JSON Web Token, sodass diese leichter modifiziert werden können. Des Weiteren können mithilfe der integrierten WS-Attacker Bibliothek XML Signature Wrapping Angriffsvektoren für SAML Nachrichten erstellt werden.
Metadata-Attacker
Daten mit der Hilfe von Webservices hochzuladen ist mittlerweile selbstverständlich geworden. Dabei spielt es keine Rolle, ob es sich um Audio-Dateien, Bilder oder etwa Videos handelt. Es besteht immer das Potential, dass die hochgeladenen Dateien schadhaft sind. So können beispielsweise auch in den Metadaten der Dateien Angriffsvektoren versteckt werden, die zu einer Schwachstelle führen können.
Der Metadata-Attacker stellt eine kleine Sammlung von Open-Source-Tools bereit, die es ermöglicht ein Bild (.jpg), eine Audio-Datei (.mp3) oder ein Video (.mp4) zu erstellen, das selbst gewählte Metadaten oder Cross-Site Scripting (XSS) Vektoren enthält. Diese manipulierten Dateien können anschließend verwendet werden, um Webservices auf ihre Anfälligkeit gegen XSS Schwachstellen beim Darstellen von den entsprechenden Metadaten zu testen.