Injection, Broken Authentication und XSS sind die wichtigsten Cyber-Risiken

(Di Alessandro Rugolo)
16/10/17

OWASP ist ein Standard für die Produktion sicherer Webanwendungen und wenn man bedenkt, dass mittlerweile fast alle Anwendungen Webanwendungen sind...

OWASP ist auch eine weltweite Organisation, die sich zum Ziel gesetzt hat, die Softwaresicherheit zu verbessern (v. Artikel).
Zu den erfolgreichsten Initiativen gehört die OWASP Top Ten, eine Liste der zehn größten Cyberrisiken in der Anwendungsentwicklung.
Im Jahr 2013 wurde die letzte noch gültige Liste veröffentlicht, die nächste soll im November 2017 erscheinen.
Zu Beginn des Jahres begann der Prozess zur Aktualisierung der Liste, der erste Versuch scheiterte jedoch, da er von der Community abgelehnt wurde.

Der erste Entwurf der Top Ten 2017, der noch in der Diskussion ist, weist auf die folgenden 10 größten Risiken hin:

A1-Injektion
A2-Broken-Authentifizierung und Sitzungsverwaltung
A3 Cross-Site-Scripting (XSS)
A4-Defekte Zugangskontrolle
A5-Sicherheitsfehlkonfiguration
A6-Offenlegung sensibler Daten
A7 – Unzureichender Angriffsschutz
A8-Cross-Site Request Forgery (CSRF)
A9 – Verwendung von Komponenten mit bekannten Schwachstellen
A10-Untergeschützte APIs.

Eine Liste, die für diejenigen, die nicht über fundierte Kenntnisse im Bereich der Informationssicherheit verfügen, sicherlich nicht leicht zu verstehen ist.
Versuchen wir also, mit Walter Ambu (Foto), dem Gründer von, die Bedeutung dieser Begriffe zu erforschen Eintreteneinem Inbetriebnahme das die OWASP-Methodik zur sicheren Softwareentwicklung nutzt.

Ingenieur Ambu, Ihr Unternehmen, Entando, entwickelt sichere Software … Können Sie uns helfen, etwas mehr über die Entwicklungsmethodik zu verstehen? Mit welcher Art von Software beschäftigen Sie sich? Auf welche Art von Kunden zielen Sie ab? Wie viel investieren Sie in Forschung und Entwicklung? Und vor allem: Hilft es uns, besser zu verstehen, welche Hauptrisiken in den OWASP Top Ten enthalten sind?

Entando ist eine Open-Source-Softwareplattform, die die Erstellung von Web- und Mobilanwendungen der neuen Generation, also „Modern Applications“, vereinfacht.
Was meinen wir?
Unternehmen und öffentliche Verwaltungen, insbesondere die größeren, die sich im Wettlauf um die Digitalisierung engagieren, stehen heute vor zwei Problemen: Geschwindigkeit und Harmonisierung.
Einerseits müssen sie die Veröffentlichungszeiten von Anwendungen beschleunigen, bevor es ihre Konkurrenten tun. Andererseits müssen sie ein ständig wachsendes Portfolio an Anwendungen bewältigen, die sich durch völlig unterschiedliche Schnittstellen und inkonsistente Benutzererlebnisse auszeichnen, die denjenigen, die sie verwenden, Probleme bereiten. Entando fungiert dank des UX/UI-Musters (User eXperience/User Interface) als „Harmonisierer“ der Benutzererfahrung und als „Beschleuniger“ dank moderner Softwareentwicklungstechniken auf Basis von Containern, DevOps, CI/CD ( Kontinuierliche Integration/kontinuierliche Entwicklung), Microservices.
Es versteht sich von selbst, dass Entando als Open-Source-Unternehmen von Natur aus eine starke Neigung zu Innovation und Forschung haben muss. Das Team besteht aus Software-Ingenieuren, IT-Spezialisten und Doktoranden, die – wenn man von „Modernität“ spricht – auch im Smart-Working-Modus arbeiten.
Was die Sicherheit betrifft, entwickelt Entando nach der OWASP-Methodik ...

Warum hat Ihr Unternehmen diese Methodik übernommen? Was sind die Vorteile? Ist es schwierig, es auf die Softwareproduktion anzuwenden? Nimmt das Personal an Kursen teil? Arbeiten Sie mit Universitäten zusammen?

Die Entwicklung moderner Anwendungen für Unternehmen und öffentliche Verwaltungen bedeutet, Garantien für Innovation, Qualität und Sicherheit der erstellten Software zu geben. Aus diesem Grund hat Entando beschlossen, die OWASP-Richtlinien sowie Methoden zur Überprüfung und Verifizierung der Codequalität zu übernehmen.
Entando arbeitet aktiv mit dem Pattern Recognition and Applications Lab der Universität Cagliari zusammen (http://pralab.diee.unica.it), dessen IT-Sicherheitsabteilung von Prof. geleitet wird. George Hyacinth. Insbesondere war er Teil eines Projekts namens sTATA (http://stata.diee.unica.it), die in der Schaffung eines Bezirks mit spezifischen und fortgeschrittenen Kompetenzen im Bereich der IT-Sicherheit besteht, in dem Ideen, Lösungen und innovative Produkte als Reaktion auf die Risiken von IT-Angriffen entwickelt werden können, denen Bürger und Unternehmen heute ausgesetzt sind. Dieses Projekt umfasste offensichtlich mehrere Phasen, einschließlich der Schulung des Entando-Personals, das an der Erstellung der Plattform beteiligt war.

Wir wissen, dass die Diskussion über die Top Ten 2017 noch andauert und wir noch auf die offizielle Verkündung warten müssen. Aber überlassen wir diese Feinheiten den Experten des Fachs und versuchen wir zu denken, als ob die Top Ten bereits veröffentlicht worden wären.
An der Spitze steht bereits 2013 und vorerst auch im Vorschlagsentwurf für 2017 die Kategorie „Injektion“, deren Definition ich berichte: „Injektionsfehler wie SQL-, OS-, XXE- und LDAP-Injection treten auf, wenn nicht vertrauenswürdige Daten als Teil eines Befehls oder einer Abfrage an einen Interpreter gesendet werden. Die feindlichen Daten des Angreifers können den Interpreter dazu verleiten, unbeabsichtigte Befehle auszuführen oder ohne entsprechende Autorisierung auf Daten zuzugreifen".

IMit anderen Worten: Können Sie Nicht-Experten erklären, was es ist?

Unter Injektion verstehen wir eine große Klasse von Angriffen, die es einem Angreifer ermöglichen, Eingabedaten an eine Software weiterzuleiten, die deren erwartete Ausführung verändert. Dies ist einer der gefährlichsten Angriffe auf Webanwendungen. Das Ergebnis kann vom Datenverlust bis zum Diebstahl sensibler Daten wie Kreditkarten reichen.
Unter den verschiedenen Arten der Injektion ist die SQL-Injektion die bekannteste.
SQL-Injection ist eine Hacking-Praxis, bei der Webanwendungen ins Visier genommen werden, die auf Datenbanken basieren. Aufgrund der Sicherheitslücke ist es dem Angreifer möglich, auf die Datenbank zuzugreifen und die darin enthaltenen Daten unbefugt zu lesen, zu verändern oder zu löschen.

Zu den realen Fällen, in denen ein Angriff dieser Kategorie eingesetzt wurde, gehört der Angriff auf das Heartland Payment System im Jahr 2009. Dabei wurden die Zugangsdaten von 130 Millionen Kredit- und Debitkarten gestohlen. Aber wie verbessert man die Sicherheit eines Systems, das von dieser Schwachstelle betroffen ist?

Es ist notwendig, die Funktionalität der Kontrollen an den Eingabedaten zu überprüfen, damit es nicht möglich ist, willkürliche Abfragen an die Datenbank durchzuführen, indem eine fehlende oder fehlerhafte Validierung der empfangenen Daten ausgenutzt wird. Um es noch deutlicher auszudrücken: Wenn ein Formular auf einer Website das Einfügen einer Benutzer-ID erfordert, muss die Software prüfen, ob die vom Benutzer eingegebenen Daten tatsächlich im Format einer Benutzer-ID vorliegen, und verhindern, dass der Benutzer andere Daten, beispielsweise eine Zeichenfolge, sendet das kann als Befehl interpretiert werden.

Danke, jetzt denke ich, dass die Bedeutung von „Injektion“ jedem klarer ist.

Vielleicht wird nicht jeder in der Lage sein, die Mechanismen hinter dem Angriff vollständig zu verstehen, aber ich denke, das Wichtigste ist, den Menschen bewusst zu machen, dass der Einsatz von Web-Tools Risiken bergen kann, es aber Methoden gibt, diese zu minimieren. Ingenieur Ambu, der zweite auf der Liste ist Defekte Authentifizierung und Sitzungsverwaltung.

Worum geht es?

In diesem Fall handelt es sich um eine Schwachstelle, bei der ein Angreifer in der Lage ist, Daten zu manipulieren, die typischerweise im sogenannten „Session-Token“ gespeichert sind, also einer eindeutigen Kennung für den Benutzer, der Webseiten durchsucht und zum Datenaustausch dient zwischen den Client- und Serverteilen einer Webanwendung. Die berühmten Cookies ermöglichen diesen Mechanismus. In diesem Fall kann ein Angreifer sogar die Identität anderer Personen annehmen, Passwörter ändern und in Systeme eindringen. Stellen wir uns zum Beispiel den Schaden vor, den ein Hacker durch Zugriff auf unser Bankkonto anrichten kann!

Er kann unser Konto leeren! Und vielleicht Informationen über die Girokonten von Personen erhalten, mit denen wir Geschäftsbeziehungen unterhalten. Dies gefährdet möglicherweise nicht nur uns selbst, sondern auch die Menschen und Unternehmen, mit denen wir zu tun haben.
Ingenieur Ambu, ich möchte sicherlich nicht zu viel Zeit damit verschwenden, Sie zu bitten, alle zehn Schwachstellen auf der Liste zu analysieren, aber ich glaube, dass zumindest die dritte Aufmerksamkeit verdient: Cross-Site Scripting (XSS), worum geht es?

Cross-Site Scripting ist eine weit verbreitete Technik zur Durchführung von Identitätsdiebstahl.
In der Praxis übernimmt eine Anwendung die Kontrolle über die als Eingabe empfangenen Daten, beispielsweise aus einem Formular, ohne Validierungsprüfungen durchzuführen. Unter diesem Gesichtspunkt ähnelt es der Injektionstechnik.
Böswillige Personen können dann über den Browser schädlichen Skriptcode wie Javascript-Code in jede Form der Website einschleusen, was zum Identitätsdiebstahl einer Person oder zur Änderung von Teilen der Website führt und den Benutzer sogar dazu zwingt, Malware herunterzuladen.

Ingenieur Ambu, vielen Dank für die Zeit, die Sie uns gewidmet haben. Ich nutze immer noch seine Anwesenheit und sein Fachwissen, um zu wiederholen, dass alle diese Angriffstechniken mithilfe der Best Practices der OWASP-Methodik zumindest teilweise unschädlich gemacht werden können. In der Praxis können Sie durch den Einsatz der OWASP-Methodik die meisten der häufigsten und gefährlichsten Angriffe verhindern.

Das ist richtig, OWASP ist eine präventive Methodik. Auf jeden Fall sollte seine Anwendung nicht als Allheilmittel gegen alle Übel betrachtet werden, aber es ist sicherlich sehr nützlich und verdient es, von allen, die sich in irgendeiner Weise mit Softwareentwicklung und IT-Sicherheit befassen, eingehend untersucht zu werden. In diesem Zusammenhang findet am 20. Oktober im Auditorium der Fakultät für Ingenieurwesen und Architektur auf der Piazza d'Armi in Cagliari der italienische OWASP-Tag 2017 statt. Eine sehr interessante Veranstaltung im Hinblick auf Softwaresicherheit.
Zu den Gästen gehört Gary McGraw, Vizepräsident von Synopsys, einer weltweit anerkannten Autorität auf dem Gebiet der Informationssicherheit.
Wir von Entando werden anwesend sein und es wird die Möglichkeit geben, die gerade vorgestellten Konzepte und vieles mehr zu vertiefen. Wir warten auf dich!

Um mehr zu erfahren:
- https://www.owasp.org/index.php/Italy_OWASP_Day_2017
- https://www.computerworld.com/article/2527185/security0/sql-injection-at...
- https://www.w3schools.com/sql/sql_injection.asp