Web Security

    Ein Leitfaden für Penetrationstests von Webanwendungen

    Penetrationstests für Webanwendungen sind notwendig, um Webanwendungen zu sichern. Vom E-Commerce bis zum Gesundheitswesen sind Web-Pen-Tests für Unternehmen heute unerlässlich.

    by Mike Azzara
    gettyimages-1300319507.png

    Wichtige Punkte

    • Penetrationstests für Webanwendungen sind für den Schutz von Daten unerlässlich und unterscheiden sich von anderen Cybersicherheitsbelangen.
    • Website-Penetrationstests sollten während des Softwareentwicklungszyklus durchgeführt werden, um die Kosten zu senken.
    • Nachdem eine Anwendung gestartet wurde, können automatisierte Tools für regelmäßige Web-Pen-Tests eingesetzt werden.

    Webanwendungen sind eine hervorragende Möglichkeit, die Zusammenarbeit mit Kunden zu vereinfachen, Dienstleistungen für Kunden online zugänglich zu machen und sogar Mitarbeitern einen besseren Zugang zu Informationen wie Gesundheitsfürsorge und Altersvorsorge zu ermöglichen. Aber Webanwendungen bieten Hackern und Kriminellen auch eine weitere Möglichkeit, Ihr Unternehmen anzugreifen. Und da die Anwendungen online und oft öffentlich zugänglich sind, erfordern Webanwendungen besondere Überlegungen zur Cybersicherheit und eine besondere Art von Tests, um sie zu schützen.

    Penetrationstests von Webanwendungen oder Web-Pen-Tests sind eine Möglichkeit für Unternehmen, ihre eigene Software zu testen, indem sie Cyberangriffe nachahmen, um Schwachstellen zu finden und zu beheben, bevor die Software veröffentlicht wird. Dabei geht es nicht nur darum, an den Türen zu rütteln und an den digitalen Fenstern der Online-Anwendungen Ihres Unternehmens zu rütteln. Es wird ein methodischer Ansatz verwendet, bei dem bekannte, häufig verwendete Angriffe und Tools eingesetzt werden, um Webanwendungen auf potenzielle Schwachstellen zu testen. Dabei können auch Programmierfehler und -mängel aufgedeckt, die allgemeine Anfälligkeit der Anwendung bewertet und sogar Probleme mit unterstützenden Backend-Systemen aufgedeckt werden.

    Warum werden Pen-Tests für Webanwendungen durchgeführt?

    Zu den Webanwendungen gehören Front-Ends für den elektronischen Handel, Anwendungen für das Gesundheitswesen, mobile Anwendungen und so ziemlich jede Art von sensiblen Informationen, die Sie sich vorstellen können. Es obliegt also den Unternehmen, diese Anwendungen sicher zu machen, um die Kreditkarten- und persönlichen Daten der Kunden sowie ihre eigenen IT-Systeme zu schützen, die über eine Webanwendung angegriffen werden können.

    Neben der Cybersicherheit haben Pen-Tests von Webanwendungen noch einen weiteren Vorteil. Solche Tests während des Softwareentwicklungsprozesses führen auch zu einem besseren, ausgefeilteren Endprodukt oder einer besseren Dienstleistung. Web-Pen-Tests können unbeabsichtigte Abstürze oder Anwendungsfehler aufdecken, bevor sich Kunden und Auftraggeber darüber beschweren.

    Schließlich enthalten Webanwendungen sensible Daten, darunter finanzielle und medizinische Informationen, die für Angreifer besonders attraktiv sind. Und da Webanwendungen von Natur aus für mehr Benutzer offen sind, müssen sie zusätzlich geschützt werden.

    Schließlich ist die Cybersicherheit ein bewegliches Ziel. Ständig werden neue Technologien eingeführt, und es gibt keinen Mangel an Cyberkriminellen, die nach neuen Möglichkeiten suchen, sie auszunutzen. Daher sollten regelmäßige Web-Pen-Tests für alle Anwendungen, die Ihr Unternehmen einsetzt, geplant werden.

    Penetrationsarten und Testphasen

    Penetrationstests für Webanwendungen können zu verschiedenen Zeitpunkten während der Anwendungsentwicklung und von verschiedenen Parteien wie Entwicklern, Hosts und Kunden durchgeführt werden. Es gibt zwei wesentliche Arten von Web-Pen-Tests:

    • Intern: Die Tests werden im Unternehmensnetzwerk durchgeführt, während die App noch relativ sicher ist, und können LAN-Schwachstellen und die Anfälligkeit für Angriffe durch Mitarbeiter aufdecken.
    • Extern: Die Tests werden extern über das Internet durchgeführt, was der Art und Weise näher kommt, wie Kunden - und Hacker - auf die App treffen würden, sobald sie live ist.

    Je früher in der Software-Entwicklungsphase mit dem Web Pen Testing begonnen wird, desto effizienter und kostengünstiger ist es. Die Behebung von Problemen während der Entwicklung einer Anwendung und nicht erst, nachdem sie fertiggestellt und online ist, spart Zeit und Geld und schadet möglicherweise dem Ruf eines Unternehmens.

    Der Prozess der Web-Pen-Tests umfasst in der Regel vier Phasen:

    1. Informationssammlung und Planung: Dies umfasst die Festlegung von Testzielen, z. B. welche Systeme untersucht werden sollen, und die Sammlung weiterer Informationen über die Systeme, die die Webanwendung hosten werden (da sie ebenfalls zu Zielen werden).
    2. Recherche und Scannen: Bevor ein tatsächlicher Angriff nachgeahmt wird, kann man durch Scannen des statischen Codes der Anwendung viel lernen. Dadurch können offensichtliche Schwachstellen aufgedeckt werden. Darüber hinaus kann ein dynamischer Scan der Anwendung im tatsächlichen Online-Einsatz zeigen, wie sie unter realen Bedingungen funktioniert und ob sie zusätzliche Schwachstellen aufweist.
    3. Access and Exploitation: Mit einer Reihe von Standard-Hacking-Angriffen, die von SQL-Injection bis zum Knacken von Passwörtern reichen, wird in diesem Teil des Tests versucht, Schwachstellen auszunutzen, um festzustellen, ob Informationen gestohlen oder unbefugter Zugang zu anderen Systemen erlangt werden können.
    4. Berichte und Empfehlungen: In dieser Phase wird eine Analyse durchgeführt, um die Art und den Schweregrad der Schwachstellen, die Art der Daten, die möglicherweise offengelegt wurden, und die Frage, ob sich ein Cyberkrimineller unbemerkt Zugang verschaffen konnte, zu ermitteln.
    5. Behebung und weitere Tests: Bevor die Webanwendung gestartet wird, müssen Patches und Korrekturen vorgenommen werden, um die entdeckten Schwachstellen zu beseitigen. Außerdem sollten zusätzliche Pen-Tests durchgeführt werden, um zu bestätigen, dass alle Lücken geschlossen wurden und keine weiteren Probleme aufgetreten sind.

    Methoden der Penetrationstests

    Glücklicherweise gibt es mehrere gut etablierte Protokolle für die Durchführung von Pen-Tests von Webanwendungen. Einige Beispiele für Richtlinien der Sicherheitsbranche sind:

    So sichern Sie sich mit dem PCI-Datensicherheitsstandard. [i] PCI wurde vom PCI Security Standards Council ins Leben gerufen und richtet sich an alle Unternehmen, die Zahlungen mit Kredit- und Debitkarten akzeptieren. Er wurde 2006 von American Express, Discover, JCB International, MasterCard und Visa gegründet.

    Penetration Testing Methodologies. [ii] Das gemeinnützige Open Web Application Security Project (OWASP), das Mitglieder auf der ganzen Welt hat, bietet detaillierte technische Anleitungen für Penetrationstests im Web, einschließlich einer separaten Diskussion über Tests für mobile Anwendungen und sogar Firmware.

    Open Source Security Testing Methodology Manual. [iii] Diese Seite des Institute for Security and Open Methodologies (ISECOM) enthält verschiedene offene Berichte über bewährte Verfahren im Bereich der Cybersicherheit, darunter Material über Web-Pen-Tests und ein Cybersecurity Playbook, das kleinen und mittleren Unternehmen "einen gezielten, vollständigen, anpassbaren IT-Sicherheitsplan zum Schutz vor Cyberangriffen und Datendiebstahl" verspricht.

    Auch wenn diese Standards einen hervorragenden Ausgangspunkt für Web-Pen-Tests bieten, sollten sich Unternehmen darüber im Klaren sein, dass jede Webanwendung einzigartig ist. Verschiedene Arten von Unternehmen können unterschiedliche Arten von Tests erfordern. Eine App für das Gesundheitswesen, die die HIPAA-Anforderungen erfüllen muss, kann beispielsweise ein anderes Maß an Tests erfordern als eine App zum Konfigurieren und Kaufen eines Fahrrads.

    Darüber hinaus gibt es eine Vielzahl von Angriffen, die bei Web-Pen-Tests berücksichtigt werden müssen, z. B:

    • Cross-Site Scripting (XSS), eine Technik, mit der Hacker bösartige Skripts in eine Webanwendung einschleusen, die dann andere Kunden, die diese Webanwendung nutzen, infizieren oder hacken können.
    • SQL Injection, eine Methode zum Einfügen von Datenabfragen in eine Webanwendung mit dem Ziel, Zugriff auf die Backend-Datenbank des Unternehmens zu erhalten.
    • Password Cracking, das eine Vielzahl von Techniken zum Aufdecken von Passwörtern umfasst. Diese Art von Angriff kann eine Webanwendung ausnutzen, um unbefugten Zugriff auf Unternehmensdaten und -systeme zu erlangen.

    Tools zur Unterstützung bei der Durchführung von Penetrationstests

    Für jede Phase der Penetrationstests von Webanwendungen gibt es entsprechende Tools. Die Verwendung solcher Software-Tools hilft, den Prozess durch die Automatisierung von Tests zu beschleunigen, und kann strenge Pen-Test-Verfahren auf eine Vielzahl von verschiedenen Web-Anwendungen anwenden.

    Im Allgemeinen scannen die verfügbaren Web-Pen-Testing-Tools den Code der Anwendung auf der Suche nach Schwachstellen, die ausgenutzt werden können. Sie sind oft auf die Identifizierung einer bestimmten Art von Schwachstelle spezialisiert. So sind beispielsweise viele gängige kostenlose Tools wie Nmap verfügbar, um Details über die Anwendung wie die verwendete Skriptsprache aufzudecken. [iv] Netzwerkscanner werden verwendet, um die geografische Lage des Hosts, die Art der verwendeten Serversoftware und offene Portnummern zu ermitteln. Probe-Scanner automatisieren den Prozess der Suche nach Schwachstellen, z. B. ob die Anwendung auf einem Server mit veralteter Software läuft. Es gibt auch eine Reihe von Tools, die nach bestimmten Schwachstellen suchen, wie z. B. SQL Map, das SQL-Injektionen durchführt, um zu versuchen, Datenbanken zu übernehmen. [v]

    Die Quintessenz

    Webanwendungen stellen ein einzigartiges und potenziell gefährdetes Ziel für Cyberkriminelle dar. Das Ziel der meisten Webanwendungen ist es, Dienstleistungen, Produkte und Aufgaben für Kunden und Mitarbeiter zu erleichtern. Aber es ist auch wichtig, dass Webanwendungen es Kriminellen nicht leichter machen, in Systeme einzudringen. Aus diesem Grund ist das Eindringen in Webanwendungen

    [i] " Wie man sich mit dem PCI-Datensicherheitsstandard absichert ," The PCI Security Standards Council

    [ii] " Methoden für Penetrationstests ," OWASP

    [iii] " Handbuch zur Methodik für Open-Source-Sicherheitstests ," ISECOM

    [iv] NMAP.org

    [v] SQLMap.org

    Abonnieren Sie Cyber Resilience Insights für weitere Artikel wie diesen

    Erhalten Sie die neuesten Nachrichten und Analysen aus der Cybersicherheitsbranche direkt in Ihren Posteingang

    Anmeldung erfolgreich

    Vielen Dank, dass Sie sich für den Erhalt von Updates aus unserem Blog angemeldet haben

    Wir bleiben in Kontakt!

    Zurück zum Anfang