Eine Webanwendung kann schnell sein, zuverlässig laufen und von den Anwendern geliebt werden – und trotzdem Sicherheitslücken enthalten.
Denn viele Schwachstellen fallen im normalen Betrieb überhaupt nicht auf. Ein Benutzer meldet sich an, ruft seine Daten ab, lädt Dokumente hoch oder nutzt eine Schnittstelle. Alles funktioniert genau so, wie es soll.
Die entscheidende Frage lautet jedoch: Was passiert, wenn jemand die Anwendung bewusst anders benutzt als vorgesehen?
![]()
Genau hier beginnt ein Penetrationstest.
1.
„Wir sind doch viel zu klein für Hacker.“
Diesen Gedanken haben viele Unternehmen. Das Problem daran: Ein Angreifer muss ein Unternehmen heute nicht unbedingt gezielt auswählen.
Automatisierte Systeme durchsuchen permanent öffentlich erreichbare Server, Webanwendungen und Schnittstellen nach interessanten Angriffsmöglichkeiten. Dabei spielt es zunächst kaum eine Rolle, ob hinter einer Anwendung ein Konzern oder ein mittelständisches Unternehmen steht. Interessant ist vor allem eine Frage:
Ist irgendwo eine Schwachstelle vorhanden, die sich ausnutzen lässt?
Gerade individuell entwickelte Webanwendungen verdienen deshalb besondere Aufmerksamkeit. Sie bilden häufig wichtige Geschäftsprozesse ab und verarbeiten Kundendaten, Vertragsinformationen, Dokumente oder andere sensible Daten.
2.
Ein Angreifer hält sich nicht an den vorgesehenen Ablauf
Bei der Entwicklung einer Webanwendung liegt der Fokus naturgemäß darauf, dass Funktionen zuverlässig arbeiten. Ein Angreifer betrachtet dieselbe Anwendung aus einer völlig anderen Perspektive.
Er fragt beispielsweise:
- Kann ich auf Daten eines anderen Benutzers zugreifen?
- Lassen sich Berechtigungen umgehen?
- Kann ich Parameter oder IDs manipulieren?
- Was passiert mit ungewöhnlichen oder bewusst falschen Eingaben?
- Sind APIs ausreichend geschützt?
- Kann ich Anfragen beliebig oft wiederholen?
- Werden sensible Informationen über Fehlermeldungen preisgegeben?
- Sind Tokens, Sessions und Authentifizierung sauber abgesichert?
- Gibt es Funktionen, die sich zweckentfremden lassen?
Viele dieser Probleme sind mit klassischen Funktionstests nur schwer zu erkennen. Ein Penetrationstest – kurz Pentest – simuliert deshalb gezielt das Verhalten eines potenziellen Angreifers.
3.
Was passiert bei einem Penetrationstest?
Zunächst wird gemeinsam definiert, welche Systeme getestet werden dürfen und welche Rahmenbedingungen gelten. Anschließend wird die Anwendung systematisch untersucht. Dabei geht es nicht nur darum, automatisierte Sicherheitsscanner über eine Website laufen zu lassen. Werkzeuge können bekannte Schwachstellen, Fehlkonfigurationen oder auffällige Strukturen erkennen. Besonders interessant wird es jedoch dort, wo menschliches Verständnis notwendig ist.
Authentifizierung und Benutzerrechte
Kann ein Benutzer Funktionen oder Daten aufrufen, für die er eigentlich keine Berechtigung besitzt?
APIs und Schnittstellen
Sind REST- oder GraphQL-Endpunkte ausreichend abgesichert? Können IDs manipuliert oder Funktionen ohne die vorgesehene Berechtigung aufgerufen werden?
Business-Logik
Lassen sich Abläufe einer Anwendung in einer Reihenfolge oder auf eine Art nutzen, die bei der Entwicklung nicht vorgesehen war?
Sessions und Tokens
Sind Sitzungen, OAuth-Tokens oder andere Authentifizierungsmechanismen sicher implementiert?
Dateiuploads und Eingaben
Was passiert, wenn statt der erwarteten Daten manipulierte oder unerwartete Inhalte übertragen werden?
Genau diese Kombination aus gezieltem Tooling und manueller Analyse macht einen guten Penetrationstest aus.
4.
Ein Pentest sollte keine 100 Seiten Angst produzieren
Ein Penetrationstest ist aus unserer Sicht dann wertvoll, wenn danach klar ist, was konkret zu tun ist.
Deshalb bewerten wir gefundene Schwachstellen nach ihrem tatsächlichen Risiko und dokumentieren nachvollziehbar, wie sie reproduziert werden können. Die Entwicklung erhält von uns keine abstrakte Liste technischer Probleme, sondern konkrete Maßnahmen im persönlichen Dialog.
5.
Was steht am Ende im Pentest-Bericht?
Was wurde gefunden?
Eine verständliche Beschreibung der Schwachstelle.
Wie kritisch ist das Problem?
Eine nachvollziehbare Risikobewertung, beispielsweise auf Basis von CVSS.
Wie lässt es sich reproduzieren?
Technische Informationen und – wo sinnvoll – ein Proof-of-Concept.
Wie kann das Problem behoben werden?
Konkrete Empfehlungen für Entwicklung und Konfiguration.
Nach der Behebung können die betroffenen Punkte erneut getestet werden. Damit wird aus einem Sicherheitsbericht ein tatsächlicher Maßnahmenplan.
6.
Wann ist ein Penetrationstest sinnvoll?
Es muss nicht erst ein Sicherheitsvorfall passieren. Ein guter Zeitpunkt kann beispielsweise sein:
- vor dem Go-Live einer neuen Webanwendung,
- nach größeren technischen Änderungen,
- bei der Einführung neuer APIs oder Schnittstellen,
- wenn Anwendungen sensible Daten verarbeiten,
- bei komplexen Benutzer- und Berechtigungssystemen,
- bei Anwendungen mit mehreren Mandanten,
- vor Audits oder Zertifizierungen,
- oder regelmäßig als Bestandteil einer professionellen IT-Sicherheitsstrategie.
Gerade bei Anwendungen, die über viele Jahre weiterentwickelt wurden, lohnt sich ein neuer Blick von außen.
Denn Software verändert sich. Neue Funktionen kommen hinzu, Bibliotheken werden aktualisiert, APIs erweitert und Berechtigungskonzepte angepasst. Was beim ersten Release sicher umgesetzt wurde, muss deshalb nicht automatisch Jahre später noch dem gleichen Sicherheitsniveau entsprechen.
Mehr Informationen finden Sie hier:
Mehr zu unseren Penetrationstests
Lassen Sie uns Ihre Anwendung prüfen – bevor es jemand anderes tut.