Keystroke-Injection Angriffe verhindern bzw. Gegenmaßnahmen umgehen

Als Human Interface Device (HID) wird eine Geräteklasse für Computer bezeichnet, mit denen die Anwender über den USB-Standard interagieren. Bei diesen Geräten handelt es sich vorrangig um Tastaturen, Mäuse oder Joysticks. Für die Kommunikation wurde ein anwendungsspezifischer Kanal geschaffen, der beliebige Daten zum USB-Gerät weiterleitet. Die notwendigen Treiber sind oft bereits im Betriebssystem vorhanden und werden bei Anschluss eines solchen Gerätes an die USB-Schnittstelle automatisch geladen. Die angeschlossenen Devices lassen sich über Produkt-, Hersteller- und Seriennummer eindeutig identifizieren. 

Bei einem klassischen USB-HID-Angriff geben sich die angeschlossenen Geräte als Tastatur aus. Über verschiedene Skripte lassen sich nun weitere Befehle „eintippen“, die dann im Kontext des angemeldeten Nutzers ausgeführt werden. Auf dem angegriffenen System lassen sich z. B. Hintertüren installieren, Dokumente oder Passwörter stehlen oder über den UAC-Dialog erweiterte Rechte auf dem PC erlangen.

Viele Firmen haben die Gefahr erkannt, die von diesen Geräten ausgehen und haben ein Schnittstellenmanagement eingeführt.  Oftmals reichen aber die getroffenen IT-Sicherheitsmaßnahmen nicht aus, um der Bedrohung effektiv zu begegnen.  In vielen Fälle werden zwar unbekannte USB-Geräte (wie USB-Sticks, Kameras oder externe Speichermedien) geblockt, aber der Anschluss von USB-Tastaturen nicht effektiv ausgeschlossen. In größeren Unternehmen scheut man den höheren administrativen Aufwand bzw. versucht das entstandene Restrisiko durch organisatorische Maßnahmen auszugleichen.

In diesem Beitrag geht es darum, wie man sich vor Keystroke-Injection Angriffen schützen kann bzw. wie Angreifer trotz getroffener Sicherheitsmaßnahmen zum Erfolg kommen.

WeiterlesenKeystroke-Injection Angriffe verhindern bzw. Gegenmaßnahmen umgehen

OpenVAS 9 auf Ubuntu Server 18.04 LTS 64bit installieren

In vielen Beiträge wird empfohlen, den Greenbone Security Scanner unter Kali Linux zu installieren. Für mich bildet aber ein schlanker Linux Server (z.B. Ubuntu 18.04 LTS) die besserer Grundlage. In diesem Beitrag werde ich die Installation in wenigen Schritten aufzeigen.

Zunächst benötigten Sie das aktuelle Softwareimage, das Sie hier herunterladen können. Beachten Sie dabei, dass es sich tatsächlich um die Server-Version mit Langzeitsupport (LTS) handelt. Hiermit werden Updates bis April 2023 gewährleistet.

Auf die Installation selbst möchte ich hier nicht weiter eingehen. Sie sollten aber darauf achten, dass tatsächlich ein schlankes Ubuntu gewählt wird. OpenVAS wird sich dann später nur die Pakete und Abhängigkeiten auswählen, die die Software unbedingt benötigt.

WeiterlesenOpenVAS 9 auf Ubuntu Server 18.04 LTS 64bit installieren

Let‘s-Encrypt -Zertifikate für Koadic nutzen

Diese Verfahren bietet sich an, wenn Sie Let‘s-Encrypt-Zertifikate z.B. für Koadic auf einem lokalen Linux-PC (z.B mit Ubuntu) erstellen wollen, um diese dann später auf einen Server zu übertragen.

Ich gehen davon aus, dass Sie einen Domainnamen registriert haben, den Sie für diesen Vorgang nutzen können.

Schritt 1 – Let’s-Encrypt Installationsskripte laden

cd /opt
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
git clone https://github.com/Myria-de/get-letsencrypt-cert.git
cd get-letsencrypt-cert

Hier finden Sie ein Installationsskript getcert.sh, das Sie nach Ihren Wünschen im dafür vorgesehenen Abschnitt anpassen:

LEBIN=/opt/letsencrypt/letsencrypt-auto   # hier ihr Let's Encrypt Installationsverzeichnis eintragen!

#########################
# passen Sie die folgenden Parameter an
country=DE                # Ihr Land, beispielsweise DE
state="Germany"           # Ihr Staat, beispielsweise Germany
town="Berlin"             # Ihre Stadt beispielsweise Berlin
email=meine@domain.net    # Ihre E-Mail-Adresse
DAYS_REMAINING=90         # Verbleibende Tage bis zur Erneuerung
#########################

WeiterlesenLet‘s-Encrypt -Zertifikate für Koadic nutzen

Die flexible Hintertür mit Koadic und P4wnP1

In vorangegangenen Beiträgen habe ich gezeigt, wie Sie den P4wnP1 effektiv als USB-Angriffsplattform einsetzen können. Durch das Einbinden von Ducky Skripten lässt sich das Werkzeug auch sehr gut mit anderen Post-Exploitation-Frameworks kombinieren.  Obwohl der P4wnP1 mit einer RAT-ähnlichen Komponente (RAT = Remote Admin Tool) ausgestattet ist, sollte jeder Penetration Tester an alternativen Methoden interessiert sein.  Nicht selten kommt es vor, dass die etablierte Vorgehensweise nicht greift oder externe Einflüsse eine erfolgreiche Penetrierung des Zielsystems verhindern.

Im Folgenden zeige ich, wie Sie mit Hilfe des Post-Exploitation-Frameworks Koadic, dem P4wnP1 und der neunen Version von Mimikatz, das Logon-Passwort in Klartext aus Windows 10 (1809) auslesen können und damit eine flexible Hintertür zum Zielsystem nutzen.

Das Szenario

Das Zielsystem hat Windows 10 installiert, verfügt über alle aktuellen Updates und ist mit dem Windows Defender vor aktuellen Angriffen geschützt. Auf dem PC ist ein Nutzer eingerichtet, der mit Hilfe der Benutzerkontensteuerung (UAC) bei Bedarf lokale administrative Rechte erhalten kann.

Der Angreifer hat eine WLAN-Verbindung zum P4wnP1 und unterhält gleichzeitig eine SSH-Verbindung zu einem externen Server, auf dem das Post-Exploitation-Framework Koadic installiert ist.

WeiterlesenDie flexible Hintertür mit Koadic und P4wnP1

P4wnP1- die USB Angriffsplattform mit Potential (Teil2)

Im ersten Teil habe ich gezeigt, wie der P4wnP1 installiert wird und man eine Verbindung ins Internet herstellen kann. In diesem zweiten Teil werde ich demonstrieren, wie Sie mit Hilfe der Ducky Skripte ein flexibles Werkzeug für Ihre Penetration Tests erzeugen und dazu die eingebaute Backdoor-Funktionalität des P4wnP1 nutzen können.

Um zu zeigen, wie Sie Ducky Skripte mit Hilfe des P4wnP1 anwenden, werden wir in diesem Szenario den Windows Defender in Windows 10 auf dem Zielsystem abschalten. Nachdem Sie weitere Test durchgeführt haben, kann der Schutz mit einem weiteren Skript wieder eingeschaltet werden.

Für unsere Vorhaben benötigen wir zwei Ducky Skripte, die auf dem P4wnP1 platziert werden müssen. Für diese Zwecke steht das Verzeichnis P4wnP1/DuckyScripts/ bereit. Ähnliche Skripte habe ich für einen früheren Beitrag geschrieben. Wie müssen sie nur noch für den P4wnP1 einpassen.

In diesem Szenario nutzen wir die WLAN-Funktionalität des P4wnP1 aus. Der Penetration Tester muss sich also nicht unmittelbar am Zielsystem befinden, sondern kann seine Testumgebung in (WLAN)-Reichweite platzieren. Von hier kann er dann den P4wnP1 fernsteuern bzw. die notwendigen Skripte starten.



WeiterlesenP4wnP1- die USB Angriffsplattform mit Potential (Teil2)

Eine MS-Office Hintertür mit Merlin

Die in Windows 10 integrierte Sicherheitssoftware Defender kann in vielen Tests sehr gute Ergebnisse vorweisen. Darum braucht sich diese kostenlose Sicherheitslösung vor der Konkurrenz nicht mehr zu verstecken. Die Schutzwirkung kann durchaus mit den Produkten von F-Secure, Kaspersky, Bitdefender, Symantec oder Trend Micro gleichgesetzt werden. Auch ich kann Windows Defender meine Empfehlung aussprechen und setze auf meinen produktiven Windows-Geräten keine zusätzliche kommerzielle Virenschutzsoftware mehr ein.

Es hat ein wenig gedauert, bis Microsoft diesen Entwicklungsstand erreicht hat. In Zukunft müssen sich die Dritthersteller sputen, wenn sie Ihre Produkte noch gewinnbringend an den Mann/Frau bringen wollen. Aus meiner Sicht können Windows 10 Nutzer schon heute mit gutem Gewissen ausschließlich auf den Windows 10 Defender setzen.

Was für Windows 10 Nutzer eine gute Nachricht ist, bereitet Sicherheitsforschern und Penetrationstestern zunehmend Kopfzerbrechen. Sie müssen sich ständig neue Techniken ausdenken, um den Virenschutz von Windows 10 zu umgehen. So hatten sie z.B. noch vor gut einem Jahr mit den Post-Exploitation-Frameworks Veil-Evasion oder Empire die Möglichkeit, Payloads zu erzeugen, die vom Windows Defender nicht erkannt wurden. Auch die diversen Powershell-Payloads werden nun zunehmend enttarnt.

Penetartionstester setzen zunehmend auf eigene Tools bzw. führen neue Techniken ein, um ihre Arbeit erledigen zu können. Ich habe in den zwei vorangegangenen Beiträgen die Post-Exploitation Plattform Merlin vorgestellt. Im ersten Teil ging es vorrangig um die Installation der Software und die Erstellung der Server und Agenten. Im zweiten Teil habe ich gezeigt, wie Sie in Sessions mit den Agenten interagieren und die bereits vorhandenen Module aufrufen können.

In diesem Beitrag zeige ich, wie Sie eine Hintertür in MS-Powerpoint einrichten und eine Session zum Merlin-Server erzeugen. Auch wenn diese Hintertür derzeit für den Windows Defender unsichtbar ist, so wird es wohl nur eine Frage der Zeit sein, bis auch hier eine passende Signatur erstellt wird. Das ewige Katz-und-Maus-Spiel zwischen den Entwicklern von Sicherheitslösungen und den Sicherheitsforschern bzw. Angreifern bleibt somit erhalten.

WeiterlesenEine MS-Office Hintertür mit Merlin

Merlin – Post Exploitation über HTTP/2 (Teil2)

Im ersten Teil habe ich gezeigt, wie Sie Merlin installieren und die derzeit verfügbaren Agenten kompilieren bzw. einsetzen können. In diese zweiten Teil werden Sie weitere Agenten erstellen und sie an Ihre Penetration Testing Umgebung anpassen. Darüberhinaus werden wir Sessions erzeugen und die derzeit vorhandenen Module auflisten.

DLL-Agenten erstellen

Im vorangegangenen Beitrag hatten wir bereits im dritten Schritt eine DLL-Agenten erstellt in einem zufällig generierten Verzeichnis unter data/temp/v0.6.0/ abgespeichert. Um diese DLL aber in Ihrer Umgebung nutzen zu können, müssen Sie die vorhandene Datei main.go für Ihre Zwecke anpassen und sie noch einmal kompilieren. Wechseln Sie dazu in das Verzeichnis cmd/merlinagentdll und ändern die folgende Zeile nach Ihren Wünschen ab. Die Variable „URL“ sollte die IP-Adresse oder den Domainnamen ihres Merlin-Servers und den dazugehörigen Port enthalten.

WeiterlesenMerlin – Post Exploitation über HTTP/2 (Teil2)

Merlin – Post Exploitation über HTTP/2 (Teil1)

Was bedeutet Post Exploitation über HTTP/2 eigentlich? Der HTTP/2-Standard wurde im Mai 2015 verabschiedet. Das Hauptziel war die Vermeidung von Zeitverlusten durch Latenz. HTTP/2 ist vollständig abwärtskompatibel, was die schnelle Verbreitung unterstützt. Die wichtigsten Verbesserungen gegenüber der Vorgängerversion sind:

  • Mit HTTP/2 wird die Kommunikation zwischen Browser und Server über eine einzige Verbindung abgewickelt. Dadurch werden unnötige Datenverbindungen vermieden und höhere Geschwindigkeiten erzeugt.
  • Durch Kompression der Kopfzeilen lassen sich die Header drastisch in der Größe reduzieren. Damit müssen weniger Daten ausgetauscht werden.
  • Eine schnellere Kommunikation zwischen Browser und Server wird erreicht, indem der Server dem Browser bereits Daten schickt, bevor er dieses angefordert hat. Darüber hinaus kann der Browser dem Server mitteilen, welche Daten für ihn wichtiger sind und diese zuerst anfordern.

Die Entwickler des Post Exploitation Frameworks „Merlin“ setzen darauf, dass durch die verwendete TLS-Verschlüsselung die Kommunikation zwischen Server und Agenten im Verborgenen bleibt und auch die derzeit verfügbarer Firewall- und IDS/IPS-Lösungen das neue Protokoll noch nicht verstehen bzw. auswerten können.  Die Kombination aus Verschlüsselung und fehlender Protokollunterstützung soll es ermöglichen, die Inspektionen zu umgehen und „unter dem Radar zu fliegen“.

Die auch als „Command & Control Tool“  bezeichnete Software ist noch in der Entwicklungsphase und liegt derzeit in der Beta-Version 0.6.0 vor. Ähnlich wie das Empire Framework setzt Merlin auf die konsequente Umsetzung der Agent-Server-Strategie. Dabei nutzen die Entwickler Googles Programmiersprache Go. Verschiedene Agenten und Server liegen bereits vor bzw. können selbst kompiliert werden. Wer möchte, der kann die fertiggestellten Post-Exploitation-Module für Windows und Linux sofort einsetzen.

In diesen Beitrag beschreibe ich, wie Sie Merlin herunterladen, installieren und kompilieren. Nachdem wir eine erste Verbindung zwischen Client und Server hergestellt haben, werden ich zeigen, wie Sie die bereits bestehenden Module einsetzen können.

WeiterlesenMerlin – Post Exploitation über HTTP/2 (Teil1)