Blog

Interner Workshop für mehr Sicherheit in der App-Entwicklung

Allgemein 8. März 2016 By

Die plazz AG führt in regelmäßigen Abständen unternehmensinterne Seminare durch, um das Team fortzubilden und in bestimmten Bereichen zu sensibilisieren. Unser letzter Workshop, vorbereitet von Stefan Benischke und Ronja Lars Wilkening, beschäftigte sich mit der Thematik Sicherheit. Dem entsprechend wurden Präsentationen zu „Applikationssicherheit anhand der OWASP Top 10“ und „OWASP Days – Eine Zusammenfassung“ gehalten.

Workshop Part 1 – Die OWASP Top 10

Wie wir bereits in unserem letzten Beitrag vorgestellt haben, ist das Open Web Application Security Project – kurz OWASP – eine Organisation, welche ihren Fokus auf die Verbesserung der Sicherheit von Software setzt. Ein Resultat ihrer Arbeit ist die Top 10 Liste der Risiken für Anwendungssicherheit aus dem Jahr 2013, welche im Folgenden näher vorgestellt werden soll.

  1. Injection: Injections (Schwachstellen) treten auf, wenn nicht vertrauenswürdige Daten als Teil eines Kommandos oder einer Abfrage von einem Interpreter verarbeitet werden. Eingabedaten können dann das System so manipulieren, dass nicht vorgesehene Kommandos ausgeführt und damit unautorisiert auf Daten zugegriffen werden kann.
  2. Fehler in Authentifizierung und Session-Management: Anwendungsfunktionen, welche für Authentifizierung und das Session-Management zuständig sind, werden oft nicht korrekt umgesetzt. Dadurch wird es Angreifern ermöglicht Passwörter oder Session-Daten abzugreifen, um damit Identitäten zu übernehmen.
  3. Cross-Site Scripting (XSS): Von XSS-Schwachstellen ist die Rede, wenn eine Anwendung nicht vertrauenswürdige Daten entgegennimmt und ohne entsprechende Validierung und/oder Umkodierung diese weiter an den Browser leitet. Dadurch ist es dem Angreifer möglich, die Webseite des Nutzers zu manipulieren und Nutzerdaten zu übernehmen.
  4. Unsichere direkte Objektreferenzen: Macht ein Entwickler interne Daten, Ordnern oder Datenbankschlüsseln ohne Zugriffskontrolle von außen zugänglich, spricht man von einer unsicheren direkten Objektreferenz.
  5. Sicherheitsrelevante Fehlkonfiguration: Sicherheit erfordert die Festlegung und Umsetzung einer sicheren Konfiguration für Anwendungen und Frameworks aber auch Web- und Datenbankserver. Die Sicherheitseinstellungen müssen definiert, umgesetzt und gewartet werden.
  6. Verlust der Vertraulichkeit sensibler Daten: Nicht ausreichend geschützte sensible Daten können von Angreifern ausgelesen und modifiziert werden, um mit ihnen Straftaten zu begehen.
  7. Fehlerhafte Autorisierung auf Anwendungsebene: Viele Anwendungen realisieren Zugriffsberechtigungen nur durch Ein- und Ausblenden von Objekten. Diese müssen jedoch auch bei direktem Zugriff die nötigen Berechtigungen abfragen.
  8. Cross-Site Request Forgery (CSRF): Ein CSRF-Angriff bringt den Browser eines angemeldeten Nutzers dazu, eine manipulierte Anfrage an die verwundbare Anwendung zu schicken. Dabei werden Session-Cookies und andere Authentifizierungsdaten automatisch mit übermittelt.
  9. Nutzen von Komponenten mit bekannten Schwachstellen: Bei der Nutzung von fremden Bibliotheken oder Frameworks werden diese meistens mit vollen Berechtigungen ausgeführt. Wird eine verwundbare Komponente ausgenutzt, kann dies zu schwerwiegendem Datenverlust bis hin zu einer Serverübernahme führen.
  10. Ungeprüfte Um- und Weiterleitungen: Viele Anwendungen leiten den Nutzer auf andere Seiten oder Anwendungen weiter. Dabei werden für die Bestimmung des Ziels oft nicht vertrauenswürdige Daten verwendet. Ohne eine entsprechende Prüfung können Angreifer ihre Opfer auf Seiten mit Schadcode um- oder weiterleiten.

Workshop Part 2 – Wie man aus Entwicklern temporäre Hacker macht

Da ein Workshop nicht nur Vorträge enthält, sondern die Teilnehmer auch zur Mitarbeit animiert, wurde nach der ausführlichen Betrachtung und Erläuterung der Risikoaspekte eine Test-Umgebung auf Grundlage eines Shop-Systems zur Verfügung gestellt, welche einige der vorgestellten Sicherheitslücken enthielt. Mit Hilfe dieses Systems war es den Teilnehmern möglich die neuen Erkenntnisse an einem „realen System“ zu testen, um dadurch besser einschätzen zu können wie kritisch diese Lücken sind, an welchen Stellen sie auftreten können und welche Möglichkeiten sich durch diese eröffnen.

Workshop Part 3 – Über die Sicherheit von Smart-TVs und XSSI

Nach dem praktischen Teil des Workshops folgte eine Zusammenfassung der OWASP Days 2015, bei welchem besonders auf die Schwachstellen von Smart-TVs aber auch auf die neue Klasse von Sicherheitslücken Cross-Site Script Inclusion (XSSI) eingegangen wurde. Wie sich herausstellte, muss bei den Smart-TVs besonders Samsung nachbessern, denn dort genügt ein einfaches manipuliertes HTML-Dokument, um Administratorrechte auf dem Fernseher zu erlangen. Mit Hilfe dieser Rechte kann anschließend alles Mögliche ausgelesen und manipuliert werden. Offiziell wird sogar empfohlen, man solle vor dem Fernseher nicht über vertrauliche Daten, wie PIN-Zahlen und Kreditkartennummern sprechen. Fernseherweiterung wie z.B. der Amazon Fire-Stick oder der Google Chromecast wiesen hingegen keine Sicherheitslücken auf.

Die XSSI-Schwachstelle zeichnet sich vor allem dadurch aus, dass ein JavaScript von Seite A auf Seite B eingebunden wird und den Browser anschließend mit Authentifizierungs-Cookies abruft. Dieses Verhalten entsteht bei dynamischer Generierung von JavaScript Code durch Cookies. Als Resultat dieser Lücke, kann der Angreifer ebenfalls benutzerspezifische Daten ausspähen. Als Nutzer kann man sich z.B. schützen, indem man nur auf vertrauenswürdige Links klickt und bei Onlinebanking-Seiten darauf achtet sich immer auszuloggen und die benutzten Tabs zu schließen.

Als Fazit des Workshop-Tages kann zusammengefasst werden, dass alle Teilnehmer bereits ein fundiertes Vorwissen hatten, dieses aber um weitere essentielle Informationen bereichert werden konnte. Wir sind bereits jetzt gespannt, was der nächste Workshop bereithalten wird, denn wie man so schön sagt: “Man lernt nie aus.”


Tom Wichmann

There is no information available yet.


plazz auf dem OWASP D… 7. Dezember 2015 OWASP Day 2015 Germany Um eine App zu veröffentlichen gibt es verschiedene Möglichkeite. Die verschiedenen Distributionswege werden vorgestellt und einzeln beleuchtet. In-House Distribution… 8. April 2016