secuvera GmbH – BSI-zertifizierter IT-Sicherheitsdienstleister BSI-Grundschutz und Penetrationstests https://www.secuvera.de Tue, 26 Feb 2019 16:18:09 +0000 de-DE hourly 1 https://wordpress.org/?v=5.2 Aktualisierung des TeleTrusT-Prüfschemas nach IEC 62443-4-2 https://www.secuvera.de/aktuelles/aktualisierung-des-teletrust-pruefschemas-nach-iec-62443-4-2/ Thu, 16 May 2019 19:02:09 +0000 https://www.secuvera.de/?p=3565 weiterlesen ...]]> Das federführend durch Sebastian Fritsch, Leiter der BSI-Prüfstelle von secuvera, erstellte TeleTrusT-Prüfschema nach IEC 62443-4-2 für die Prüfung von Industrie 4.0 Komponenten hat ein umfangreiches Update erfahren. In der Version 2019-05 wurden mehr als 300 einzelne Kommentare von Unternehmen, Verbänden und Behörden eingearbeitet. Das Prüfschema wurde hierzu in diversen Gremien diskutiert. Aktuell wird daran gearbeitet, das Prüfschema in die internationale Standardisierung einzubringen. Hierzu wird das Prüfschema in absehbarer Zeit ebenfalls als englische Version verfügbar werden.

Das Prüfschema kann sowohl von Herstellern zur Selbsterklärung, als auch von Prüfunternehmen angewendet werden. Es enthält viele wertvolle Hinweise, wie Anforderungen aus dem Standard zu prüfen sind, enthält eine Konkretisierung des Standards mittels Akzeptanzkriterien zu jeder technischen Anforderung und sorgt damit für eine Einheitlichkeit und Klarheit bei der Interpretation des Standards. Das Prüfschema steht jetzt zum kostenfreien Download beim Bundesverband IT-Sicherheit e.V. (TeleTrusT) bereit.

]]>
NASL Plugin Search veröffentlicht https://www.secuvera.de/aktuelles/nasl-plugin-search-veroeffentlicht/ Thu, 02 May 2019 14:35:22 +0000 https://www.secuvera.de/?p=3561 weiterlesen ...]]> secuvera nutzt seit vielen Jahren den Vulnerabilityscanner OpenVAS von Greenbone (bzw. dessen kommerzielle Variante) innerhalb des eigenen Frameworks tajanas. Das Framework ermöglicht es uns, Port- und Schwachstellenscans extrem effizient durchzuführen und vor allem die manuelle Auswertung durch unsere Penetrationstester effizient zu gestalten.

Die manuelle Auswertung und Verifikation aller Toolergebnisse ist integraler Bestandteil unserer Prüfprozesse und ermöglicht die bestmöglichsten Testergebnisse. Hierfür ist ein tiefes Verständnis der Werkzeuge notwendig.

OpenVAS arbeitet intern mit Skripten, die in der Lage sind, Schwachstellen zu erkennen. Ohne Kenntnis des Quelltextes der einzelnen Skripte, lassen sich die Ergebnisse nicht nachvollziehen. Ein Glück sind die Skripte öffentlich verfügbar und auch bei jeder Installation beinhaltet und im Quelltext einsehbar.

Die Suche des jeweiligen Skripts ist dagegen leider etwas umständlich, da man im Dateisystem suchen muss. Sowohl OpenVAS selbst, als auch unser Framework werden jedoch webbasiert gesteuert. Eine Websuche nach den eindeutigen IDs der Skripte (OIDs) ist daher seit Längerem in unserem Framework beinhaltet.

Wir haben uns dazu entschieden, die Funktion auch zu veröffentlichen und somit jedermann nutzbar zu machen: NASL Plugin Search ist online. Viel Spaß damit.

]]>
„Penetrationstests von Webanwendungen“ – Fachartikel in der JAVAPRO https://www.secuvera.de/aktuelles/penetrationstests-von-webanwendungen/ Tue, 16 Apr 2019 15:56:36 +0000 https://www.secuvera.de/?p=3554

In Ausgabe 1-2019 berichtet Tobias Glemser über Planungsaspekte und Stolpersteine bei der Prüfung von Webanwendungen durch Penetrationstests.

Der Artikel beleuchtet die wichtigsten Planungsaspekte wie die Prüfung von Rollen- und Rechtemodellen, Umgang mit Web-Application-Firewalls und CAPTCHAs.

Die JAVAPRO ist kostenlos auf der Webseite der Zeitschrift bestellbar.

]]>
Warum Metadaten eine Gefährdung darstellen können https://www.secuvera.de/blog/warum-metadaten-eine-gefaehrdung-darstellen-koennen/ Wed, 13 Mar 2019 15:42:52 +0000 https://www.secuvera.de/?p=3527 weiterlesen ...]]> In Daten sind allerhand mehr oder weniger versteckte Informationen enthalten, die für die falschen Leute eine wichtige Informationsquelle darstellen können. Oder aber Metadaten können ein weiteres Einfallstor für Angriffe einer IT-Anwendung sein. In diesem Beitrag beleuchte ich, warum es wichtig ist, sich dessen bewusst zu sein. Anlass dazu gaben mir zwei aktuelle beispiele:

  • ein Blog-Post eines Marktbegleiters, der Bilder mit unkenntlich gemachten Dokumenten veröffentlichte, die Bilder aber leider doch mehr preisgaben als sie eigentlich (meiner Meinung nach) sollten.
  • eine Schwachstelle im CMS WordPress (CVE-2019-8942)

Was sind Metadaten?

Ich mache es uns einfach und zitiere mal den Einführungssatz aus dem entsprechenden Wikipedia-Artikel, denn der fasst es kurz und knapp zusammen:

Metadaten oder Metainformationen sind strukturierte Daten, die Informationen über Merkmale anderer Daten enthalten

https://de.wikipedia.org/wiki/Metadaten

Es werden also Daten über andere Daten angelegt. Gibt es dann eigentlich auch Metadaten-Metadaten?! 🙂

Metadatenbeispiele

Metadaten gibt es in Zeiten von Big-Data beinahe überall: Ob mehr oder weniger versteckt in Musik (ID3-Tags in MP3-Dateien), Digitalbildern (EXIF-Formatierte Informationen) oder Dokumenten (Dokumenteigenschaften oder Benutzerdefinierte Eigenschaften) oder offensichtlich, wie z. B. die Signatur „Gesendet von meinem iPhone“ in E-Mails.

Greifen wir mal Digitalbilder aus den Beispielen heraus. Die im Exchangeable Image File Format (Exif) abgespeicherten Informationen beinhalten unter anderem Informationen, mit welcher Hardware bzw. welchen Einstellungen die Bilder aufgenommen werden. Darüber hinaus können dazu fähige Geräte aber auch den Aufnahmestandort bzw. dessen GPS-Koordinaten mit abspeichern.

Wie kann man die Daten auslesen?

Dazu benötigt man häufig keine Spezialwerkzeuge. Man kann z. B. bei einem Computersystem, das mit Microsofts Windows betrieben wird, die Dateieigenschaften und Exif-Daten einer Bilddatei im Windows Explorer anzeigen lassen:

Klick mit rechter Maustaste auf die Datei -> Eigenschaften -> Karteireiter "Details"
Unsere Vera
Eigenschaften der Datei

Wo liegt die Gefahr von Metadaten?

Nutzer wissen das oftmals nicht, dass mit den eigentlich gespeicherten Informationen noch weitere Informationen abgespeichert werden. Neben vergleichsweise simplen Daten wie z. B. das Speicherdatum werden in Dateien oft noch weitaus mehr Informationen abgespeichert bzw. erhoben.

Oft werden solche Metadaten dann zum Verhängnis, wenn z. B. ein Pentester die Metadaten von Bildern der Blogeinträge bei Marktbegleitern ausliest und darin GPS-Koordinaten des zensierten Fundorts findet und vertraulich meldet 🙂 jemand Doxing betreibt und somit diese ungewollt veröffentlichten (Meta-)Daten auswertet und die Auswertung dann wiederum veröffentlicht.

Im Beispiel des harmlosen Vera-Bildes von oben wurde z. B. mit abgespeichert, dass ich das Bild mit dem Programm „Pain(t).net“ erstellt habe. Daraus kann man schließen, dass ich das auf einem System installiert habe oder hatte. Das allein erachte ich als weniger kritisch. Für einen Angreifer gibt es jedoch Aufschluss darüber, welche Software ich verwende. Das ansich stellt noch keine Gefahr dar. Daher skizziere ich mal ein etwas brisanteres Beispiel:

Ich laufe mit meinem Smartphone umher und mache ein Bild von einigen umherstehenden stapeln Altpapier. Von außen sichtbar nehme ich wahr, dass das wohl Dokumente mit personenbezogenen Daten sind, z. B. die Steuererklärung eines Ehepaars.

Ich mache ein Bild davon, mache die entsprechenen Bildpassagen mit den personenbezogenen Daten unkenntlich („verpixeln“) und lade das Bild in sozialen Medien/meinen Blog/<anderer Internetpranger hier einfügen> hoch, um mich darüber zu echauffieren, dass jemand seine Daten einfach so auf die Straße „wirft“. Schließlich will ich ja dafür sensibilisieren, dass man das nicht tun sollte.

Ich mag die Person, die das getan hat, nicht angreifen, daher mach ich die Passagen mit erkennbaren Daten die den Rückschluss erlauben, unkenntlich. Was kann da schon schief gehen? 🙂

Anmerkung des Autors: das Beispiel spiegelt nicht die favorisierte Art und Weise der Sensibilisierung im Umgang mit schützenswerten Daten dar 🙂

Was viele dabei vergessen: Das Smartphone hat einen eingebauten GPS-, GLONASS- oder Galileo-Chip und es ist standardmäßig oft so eingestellt, dass der Standort zu jedem Bild gespeichert wird. Diese Informationen werden beim „verpixeln“ oft aber leider nicht „wegzensiert“. Also könnte jeder mit Zugriff auf das Bild auch herausfinden, wo der Altpapierstapel gelegen hat und Rückschlüsse auf den Wohnort der nachlässig mit seinen Daten umgehenden Person herausfinden. Unschön.

Und warum können Metadaten eine Gefahr für IT-Systeme sein?

Metadaten sind auch „nur“ Daten und jede Art von Daten, die durch ein IT-System verarbeitet werden, können gut- oder bösartig sein. Wenn z. B. eine Webanwendung Metadaten von Bildern verarbeitet, dann müssen auch die Metadaten validiert werden.

Ein halbwegs aktuelles Beispiel aus Februar 2019: CVE-2019-8942 – Remote Code Execution in WordPress 4.9.9 and 5.x before 5.0.1

Grob zusammengefasst können durch einen authentisierten Nutzer (Redakteur) einer mit dem CMS betriebenen seite über die Upload-Funktionalität Bilder hochgeladen werden. Ist in den Exif Infos PHP-(Schad)Code enthalten, kann das dazu führen, dass dieser zur Ausführung kommt.

Die Folgen davon sind von unterschiedlichen Faktoren abhängig und reichen von Kompromittierung der Webseite (Website Defacement) bis hin zur übernahme des Webserverdienstes oder des Gesamtsystems. Auch unschön.

Was kann man gegen Metadaten tun?

Das kommt auf den einzelnen Fall an. Es gibt z. B. Werkzeuge, die Metadaten aus Dateien entfernen. Viele Programme erlauben aber auch beim Abspeichern von Dateien, solche Metadaten zu entfernen.

Weil viele Wege nach Rom führen, wird hier nicht genauer auf die Technik für jeden einzelnen Dateitypus eingegangen. Es gibt jedoch, wie im Beispiel von oben zu sehen, Bordmittel des Betriebssystems, um Informationen zu entfernen. Ich hab das mal angewandt:

Dialog zum Entfernen der Daten
Kopie der Datei nach dem Entfernen
Dateieigenschaften nach dem Entfernen

Das geht übrigens nicht nur bei Bilddateien, sondern z. B. auch bei Microsoft Word Dateien. Da sollte man jedoch noch weiter gehen und vorher schon das Dokument im „Speichern“-Dialog von Metainformationen im Dokument selbst befreien:

Microsoft Word Dokument auf Metadaten Prüfen
Metadaten im Dokument entfernen

Im Falle von IT-Systemen sollte man die Metadaten generell wie Daten behandeln und beim Übertritt der Vertrauensgrenze validieren oder besser entfernen.

Aus den vielen genannten Gründen entfernen die großen sozialen Netzwerke übrigens nach dem Upload die Metadaten aus Bildern. Das heißt jedoch nicht, dass diese nicht trotzdem intern ausgewertet und abgespeichert werden. Ganz im Gegenteil. Als Nutzer in der Aufstellung nach dem Download der eigenen Daten kann man diese Daten einsehen. Es wird im Übrigen in der Datenschutzrichtlinie z. B. von Facebook explizit von der Sammlung von Metadaten gesprochen oh wunder.

Nicht nur daher, sondern generell sollte man lieber auf Nummer sicher gehen und diese Informationen selbst entfernen.

Der IT-Grundschutz des BSI hat hierzu übrigens auch eigens eine Maßnahme mit dem kurzen und prägnanten *hust* Titel M 4.64 „Verifizieren der zu übertragenden Daten vor Weitergabe / Beseitigung von Restinformationen“ bzw. im neuen Grundschutz-Kompendium unter „CON6 Löschen und Vernichten von Daten“ die Standardanforderung „CON.6.A7 Beseitigung von Restinformationen“

Fazit

Metadaten können mehr anrichten, als einem lieb sein kann. Entweder verraten sie ungewollt Informationen oder richten sie Schaden in IT-Systemen bei der Verarbeitung an.

Daher sollte man dies immer bei der Informationsweitergabe und bei der Informationsverarbeitung berücksichtigen und im Idealfall die erstellung von Metadaten verhindern (soweit möglich) oder Metadaten (ebenfalls soweit möglich) vor der Weitergabe entfernen.

]]>
Penetrationstest ohne Betriebsrisiko?! https://www.secuvera.de/blog/penetrationstest-ohne-betriebsrisiko/ Tue, 26 Feb 2019 16:16:46 +0000 https://www.secuvera.de/?p=3520 weiterlesen ...]]> Dass ein Pentest neben vielen Chancen auch Risiken mit sich bringt, muss einem Kunden im Rahmen einer Risikoaufklärung bewusst gemacht werden. Erst letztens wurde im Rahmen der Risikoaufklärung innerhalb einer Auftaktbesprechung die Frage gestellt

Der Penetrationstest ist doch dazu da, um Risiken aufzuzeigen – nicht um den Betrieb zu stören. Wie bekommen wir dieses Risiko denn ausgeschlossen?

Ein Kunde

In diesem Beitrag werden durch ein fiktives Kundengespräch zum Thema „Chancen und Risiken von Penetrationstests“ die Thematik und der Umgang damit näher erläutert.

Welche Risiken bringt denn ein Pentest mit sich?

Ein Kunde

Im Rahmen von Pentests werden Angriffe simuliert. Die größten Risiken eines Pentests sind die Einschränkung der Verfügbarkeit durch

  • Ausfall des geprüften Dienstes / der geprüften Anwendung,
  • Ausfall des Gesamtsystems oder
  • Ausfall vor- oder nachgelagerter Systeme/Dienste/Anwendungen.

Die Usachen für Verfügbarkeitseinschränkungen können mannigfaltig sein. Um den Teufel mal an die Wand zu malen:

  • Überlastung, z. B. durch rechenintensive Anfragen innerhalb der geprüften Anwendung oder eine entsprechend hohe Grundlast des Systems
  • Datenverlust, z. B. durch fehler in Datenbankabfragen

Dadurch wird jedoch aus Pentester-Sicht (und sicher auch aus Kundensicht) nicht viel gewonnen. Ein Penetrationstest sollte aus unserer Sicht nie bewusst das Ziel verfolgen, die Verfügbarkeit einzuschränken, sondern viel mehr Schwachstellen aufdecken, die auf die Vertraulichkeit oder Integrität von Daten oder deren Verarbeitung Einfluss nehmen können. Daher führen wir standardmäßig keine Prüfungen durch, die Bewusst die Verfügbarkeit einschränken. Das allein schließt aber ein gewisses Restrisiko nicht aus.

Gibt es noch andere Risiken als den Ausfall des Systems?

Ein Kunde

Ja, die gibt es. Die lassen sich am Besten anhand eines Beispiels näher erläutern lassen.

Nehmen wir an, es soll ein Webshop, sowie die Plattform auf Sicherheit überprüft werden. Webshops haben viele Funktionen, darunter

  • Nutzerkonten
  • Wunschlisten
  • Produktinformationsseiten
  • der Warenkorb
  • Kontaktformulare
  • Bewertungsfunktionen

Wenn der Geschäftsprozess von der reinen Produktinformation über Rückfragen via Kontaktformular bis hin zur Bezahlung geprüft werden soll, müssen folglich auch Kontaktanfragen gestellt oder Bestellungen durchgeführt werden.

Falls z. B. Scanwerkzeuge ein Kontaktformular prüfen und es dabei mehrere hundert mal absenden, wird das mit der Beantwortung betraute Support-Personal Luftsprünge vor Freude machen, weil auf einmal so viele Kontaktanfragen von vermeintlichen Interessenten auf sie einprasseln.

Um den Bezahlprozess zu prüfen, müssen Bestellungen getätigt werden. Werden diese z. B. auf Rechnung getätigt, besteht das Risiko, dass
der Paketlieferdienst mit einem LKW anrücken muss die Bestellung fakturiert wird und die Buchhaltung mehrere Mahnungen für nicht gezahlte Bestellrechnungen verfassen und versenden muss.

In Summe besteht also die Gefahr, dass der Penetrationstest sich auf die mit dem IT-System abgebildeten Geschäftsprozesse auswirkt und mitunter nicht zu unterschätzende Kosten und Aufwände verursachen kann.

Lassen sich die Risiken vermeiden?

Ein Kunde

Kurze Antwort: Jein.

Lange Antwort: Ja, wenn man die Vorgehensweise bzw. angewandte Methodik ändert oder den Prüfgegenstand austauscht.

…Prüfgegenstand austauschen?

Ein Kunde

Ja, richtig gelesen. Eine Operation am offenen Herzen macht kein Entwickler/Systembetreuer gerne – auch der Pentester nicht. Daher haben viele Kunden für viele Anwendungen neben dem eigentlichen, produktiv genutzten IT-System sowohl ein Entwicklungs- als auch ein Test- oder Abnahmesystem. Warum also auf dem Produktivsystem prüfen, wenn es auch auf den anderen, weniger kritischen (aus Verfügbarkeitssicht) Systemen geht?

Wären da nicht die Einschränkungen der nicht-prduktiven Systeme. Viele Test- oder Abnahmesysteme unterscheiden sich entgegen der eigentlichen Annahme meist durch unterschiedliche Konfigurationen oder Ressourcen.

Reflektiert auf das Beispiel von oben gibt es oftmals bei Test- oder Abnahmesystemen keine (Test-)Anbindung an Bezahlanbieter oder das Kontaktformular wird erst gar nicht per Mail versandt. Dies stellt dann eine Testeinschränkung dar und sollte entsprechend im Ergebnis berücksichtigt werden.

Und was kann man an der Methodik verändern?

Ein Kunde

Wir stützen uns bei unseren Prüfungen auf bewährte Methoden, wie z. B. dem „Durchführungskonzept für Penetrationstests“ des Bundesamts für Sicherheit in der Informationstechnik. Man kann die Agressivität von Prüfungen bestimmen. Unterschieden wird zwischen „passiv scannend“, „vorsichtig“, „abwägend“ und „aggresiv“.

Na also, dann lassen sie uns passiv scannend oder vorsichtig wählen!

Ein Kunde

Naja. „passiv scannend“ bedeutet

„Bei der niedrigsten Aggressivitätsstufe werden die Testobjekte nur passiv untersucht, d. h. gefundene mögliche Schwachstellen werden nicht ausgenutzt.“

Durchführungskonzept für Penetrationstests

Das Problem dabei: um Festzustellen, ob eine Schwachstelle vorhanden ist, muss ein Penetrationstester versuchen, die Schwäche auszunutzen. Folglich würde passiv zu sein bedeuten, dass keine Versuche zum Ausnutzen einer evtl. vorhandnen Schwäche unternommen werden.

Ja gut, dann nehmen Sie halt „vorsichtig“!

Ein Kunde

Ja, das sind wir immer. Aber nach der Definition darf ich dann nur rudimentäre Prüfungen durchführen wie z. B. das Abprüfen von Standardkennworten. Das geht leider nicht tief genug und es sollte mindestens „abwägend“ gewählt werden.

Ja gut, was aber, wenn dann was passiert?!

Ein Kunde

Dann haben wir noch eine Karte: Sie wissen bei einem Penetrationstest, wer Sie angreift, kennen seine Telefonnummer und können – entgegen einem echten Angriff – einen Testabbruch veranlassen.

Zwar können Prüfungen dann nicht immer an der Stelle fortgesetzt werden, an dem die Prüfungen unter- oder abgebrochen wurden, aber zumindest können betriebliche Probleme in den Griff gebracht werden oder der „Störfaktor Penetrationstester“ zunächst aus der Gleichung genommen werden.

Ja gut, dann passen wir die Gleichung weiter an und nehmen wir einfach <Name beliebiger Funktion / eines Systems> aus dem Prüfungen aus

Ein Kunde

Das kann man tun. Ratsam ist es jedoch nicht, denn wird der Ergebnisgehalt des Pentests um genau die Fragestellung „Was wäre, wenn Funktion XY / Gegenstand XY angegriffen wird?“ reduziert.

Fazit

Man führt einen Penetrationstest durch, um Schwachstellen zu identifizieren, bevor sie jemand anderes/fremdes identifizieren könnte.

Obwohl meist eine Vorgehensweise gewählt wird, bei der bewusst auf verfügbarkeitseinschränkende Prüfungen verzichtet wird, können dennoch Probleme auftreten. Diese können sich dabei mitunter auf den Prüfgegenstand selbst oder vor- bzw. nachgelagerte Systeme / Prozesse auswirken.

Die genannten Auswirkungen (Ausfall oder Beeinflussung der mit dem Prüfgegenstand abgebildeten Prozesse) lassen sich nicht gänzlich vermeiden, sondern lediglich mit entsprechenden Maßnahmen (Wahl der Vorgehensweise, Austausch des Prüfgegenstand (Produktiv- vs. Abnahmesystem) oder geklärte Meldewege) weitestgehend minimieren.

Ohne einen Angriff zu simulieren wird man nie in Erfahrung bringen, wie sich ein Prüfgegenstand verhält, wenn ein Angriff durchgeführt wird.

Schließlich ist ein Vorteil bei einem Penetrationstest gegenüber einem realen Angriff neben der Tatsache, dass gefundene Schwachstellen identifiziert werden, dass man weis wer den Untersuchungsgegenstand penetriert und an wen man sich im Fall der Fälle wenden kann, um Prüfungen zu unterbrechen und weitere Beeinträchtigungen vorerst auszuschließen.

]]>