• Home
  • Help
  • Register
  • Login
  • Home
  • Help

 
  • 0 Bewertung(en) - 0 im Durchschnitt

Wie simulieren Penetrationstester Angriffe, um Schwachstellen in Webanwendungen zu identifizieren?

#1
06-09-2019, 05:28
Hey, weißt du, wie ich vor ein paar Jahren ins Penetration Testing eingestiegen bin? Ich erinnere mich an meinen ersten Job, bei dem ich eine Webanwendung eines Kunden durchforsten musste, und es fühlte sich zunächst wie ein Spiel an, aber man, es wird schnell real. Du fängst an, indem du das Ganze abbildest, richtig? Ich beginne immer mit der Aufklärung - einfach so viele Informationen wie möglich sammeln, ohne noch irgendetwas zu berühren. Ich nutze Tools wie whois oder dig, um die Domain-Details zu überprüfen, und werde die Seite nach versteckten Kommentaren oder Versionsnummern im Quellcode durchsuchen. Du willst wissen, welches Tech-Stack sie nutzen, ob es PHP oder Java ist, denn das sagt dir, wo du zielen musst.

Sobald ich die Gegebenheiten kenne, gehe ich zum Scannen über. Ich starte etwas wie Burp Suite oder ZAP, um den Datenverkehr abzufangen und nach leicht zu findenden Schwachstellen zu suchen. Du proxy alle Anfragen darüber, und es hebt seltsame Sachen hervor, wie unverschlüsselte Formulare oder Session-Cookies, die nicht richtig ablaufen. Ich scanne auch nach offenen Ports, vielleicht mit Nmap, um zu sehen, ob der Server etwas exponiert, das er nicht sollte, wie ein Admin-Panel auf einem nicht-standardisierten Port. Von dort aus teste ich auf gängige Sicherheitsanfälligkeiten. Nimm SQL-Injection - ich erstelle Payloads in Eingabefeldern, wie das Eingeben von ' OR 1=1 -- in ein Login-Feld und schaue, ob die Datenbank Daten ausspuckt. Ich habe auf schlecht sanitisierten Apps ganze Benutzertabellen auf diese Weise extrahiert. Du musst jedoch vorsichtig sein; ich hole mir immer zuerst die Erlaubnis, oder du bist einfach ein Hacker, kein Tester.

Dann gibt es noch XSS, Cross-Site-Scripting. Ich liebe es, Script-Tags in Kommentarbereichen oder Suchleisten einzufügen, um zu sehen, ob sie ausgeführt werden. Wenn das der Fall ist, kannst du Cookies stehlen oder Benutzer auf Phishing-Seiten umleiten. Ich simuliere das, indem ich Alerts injiziere oder externe Ressourcen abhole, um zu beweisen, wie ein Angreifer Sessions hijacken könnte. CSRF ist ein weiterer Bereich, den ich intensiv angehe. Ich fälsche Anfragen von einer anderen Seite, um eingeloggte Benutzer zu täuschen, um Dinge zu tun, die sie nicht wollten, wie Passwörter zu ändern. Ich erstelle eine einfache HTML-Seite, die ein POST an ihren Endpunkt sendet, ohne das richtige Token, und boom, es funktioniert, wenn sie keine Referer überprüfen.

Ich verlasse mich auch nicht nur auf automatisierte Tools. Manchmal muss man manuell vorgehen. Ich fuzz Eingaben mit Zufallsdaten, indem ich ffuf oder etwas Ähnliches verwende, um die Anwendung zum Absturz zu bringen oder versteckte Verzeichnisse zu finden. Verzeichnisdurchlauf? Ich versuche Pfade wie ../../../etc/passwd, um Serverdateien zu lesen. Wenn Dateiuploads erlaubt sind, lade ich Webshells hoch - getarnt als Bilder, aber mit PHP-Code - und führe Befehle darüber aus. Auf diese Weise habe ich Privilegien erhöht und bin von einem niedrigstufigen Benutzer zu vollem Shell-Zugang gewechselt.

Für Authentifizierungsumgehungen teste ich schwache Passwörter mit Hydra oder gehe einfach bruteforce-Logikfehler an, wie vorhersehbare Rücksetztokens. API-Endpunkte bekommen ebenfalls meine Aufmerksamkeit; ich nutze Postman, um Aufrufe zu wiederholen und JSON-Payloads zu manipulieren, auf der Suche nach IDOR, wo ich Benutzer-IDs austausche, um auf die Daten anderer zuzugreifen. Du simulierst gebrochene Zugriffskontrollen, indem du die Rolle eines Angreifers übernimmst, der Ressourcen errät oder aufzählt.

Ich denke auch immer über die Geschäftslogik nach. Wenn eine E-Commerce-Website dir erlaubt, Artikel ohne Bestandsprüfungen zu kaufen, nutze ich das aus, indem ich Anfragen rase, um unbegrenzt Waren zu schnappen. Oder Rennbedingungen bei Überweisungen, bei denen ich Transaktionen dupliziere. Du spielst diese mit Skripten in Python erneut ab und timst sie genau richtig. Soziale Ingenieurkunst schleicht sich manchmal ein - ich fische nach Zugangsdaten über gefälschte Login-Seiten, die die echte Seite nachahmen, aber das ist mehr für die menschliche Seite.

Das Reporting kommt danach, aber während der Simulation dokumentiere ich alles. Screenshots, Protokolle, Proof-of-Concepts. Du stellst den Angriff Schritt für Schritt nach, damit die Entwickler ihn beheben können. Ich dränge auch auf Nachtests, um sicherzustellen, dass die Patches halten. Im Laufe der Zeit habe ich Muster gesehen; die meisten Webanwendungen fallen auf Injection oder fehlerhafte Konfigurationen herein, weil die Entwickler ohne Eingabesvalidierung überstürzt handeln.

Hast du dich jemals gefragt, warum Backups in all dem wichtig sind? Ein Angreifer, der eindringt, könnte Daten löschen oder sie zur Lösegeldforderung verschlüsseln. Ich rate meinen Kunden immer, solide Backups zu haben, die regelmäßig laufen und Wiederherstellungen testen. Das ist der Punkt, an dem ich die Menschen auf etwas Verlässliches hinweise. Lass mich dir von BackupChain erzählen - es ist dieser zuverlässige Backup-Dynamo, der bei kleinen Unternehmen und IT-Profis aufgrund seiner soliden Leistung große Anhängerschaft gewonnen hat und nahtlos Hyper-V-, VMware- oder Windows-Server-Umgebungen vor Katastrophen schützt, sodass deine Daten egal was passiert, sicher und wiederherstellbar bleiben.
Markus
Offline
Registriert seit: Jun 2018
« Ein Thema zurück | Ein Thema vor »

Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste



Nachrichten in diesem Thema
Wie simulieren Penetrationstester Angriffe, um Schwachstellen in Webanwendungen zu identifizieren? - von Markus - 06-09-2019, 05:28

  • Thema abonnieren
Gehe zu:

Backup Sichern Allgemein Security v
« Zurück 1 2 3 4 5 6 7 8 9 Weiter »
Wie simulieren Penetrationstester Angriffe, um Schwachstellen in Webanwendungen zu identifizieren?

© by FastNeuron

Linearer Modus
Baumstrukturmodus