Frage

In Ihrer Erfahrung, was haben Sie gefunden, bearbeitet, oder begegnet im Hinblick auf Website-Schwachstellen? Und welche Maßnahmen haben Sie ergreifen, um diese Probleme zu mildern?

Dies kann XSS enthalten (Cross Site Scripting), SQL-Injection-Angriffe, einfache alte DDOS oder Phishing-Versuche auf Kunden Ihrer Website. Erst gestern kam ich über einen ganzen Abschnitt von Firefox-Tool für die Prüfung Seiten und dessen Potenzial für verschiedene Schwachstellen.

Suchen Sie mein Wissen in diesem Bereich für eine Rolle zu erweitern, so dass mehr Informationen oder lernen zu lesen sind immer gut - feste Verbindungen zu schätzen! Und Kriegsgeschichten der schlimmsten Sie gefunden haben oder gruseligsten Loch Sie gesehen haben - das Lernen aus Erfahrung ist der beste Weg, manchmal

War es hilfreich?

Lösung

Ich habe getan, Sicherheit, White-Box und Black-Box, für Dutzende (Hunderte?) Von Anwendungen und Websites.

  1. XSS und SQL-Injektion eine Menge Presse bekommen, aber wissen, was ich am häufigsten Sicherheitslücke zu finden sein? Verlassen Debug- und Testfunktionalität in Produktionscode. Entweder durch mit POST-Parametern Manipulation (IsDebug = True) oder über eine Website Spidern und übrig gebliebenen Seiten zu finden, das sind die schlimmsten Fehler, ich sehe die Sicherheit in Bezug auf. Wenn Sie mit Test / Debug-Code, setzen Sie sie in einem separaten Codezweig, oder zumindest eine Checkliste zur Entfernung vorbereiten vor dem Start.

  2. Die nächste häufigste Verwundbarkeit ich gesehen habe, ist einfach die Fähigkeit, in den Bypass-Sicherheitsmechanismen durch eine URL von der Seite Quelle greifen. Der technische Name ist ‚Forceful Navigation‘ oder ‚Forced Browsing‘ Das ist etwas jemand, der lesen kann HTML tun können, aber ich bin von der Vielfalt der Anwendungen anfällig überrascht. Überprüfen eine Ticket-Kauf-Website gestern konnte ich Tickets kaufen für ausverkaufte Shows mit dieser Methode. Bei früheren Websites, ich in der Lage war, ganz zu überspringen zahlen (viele, passieren viele Paypal Websites, um die „Kauf abgeschlossen“ URL zu paypal über POST-Parameter - Yoink!). Sie müssen irgendeine Art von Back-End-Statusbehaftung oder überprüfen Fertigstellung zu gewährleisten, Zahlung, Verfügbarkeit, Genauigkeit, etc.

  3. Um ehrlich zu sein, lasse ich in der Regel Tools wie AppScan, BURP Proxy, WebScarab, Fortify, FindBugs oder YASCA (je nach Budget und Quellcode Zugänglichkeit) finden XSS und SQL-Injection-Angriffe für mich. Ich werde versuchen, die einfachen Sachen auf meinem eigenen, Blick auf offensichtliche Löcher, aber es gibt zu viele bekannten Kombinationen selbst zu versuchen. Ich halte eine kleine Sammlung von Skripten und Testfälle für fortgeschrittene oder kürzlich entdeckten Fehler.

Ich werde auf 3 stoppen, weil ich wirklich den ganzen Tag gehe, kann ich den Fokus von Ihrer Frage bin zu verlieren, und niemand will eine Wand aus Text lesen.

Einige Ressourcen für neue und erfahrene Web-Sicherheit Gurus: (ARGH. Ich kann nicht offiziell Beitrag Links noch. Kopieren / einfügen. Es tut uns Leid)

Die Open Web Application Security Project (OWASP)

http://www.owasp.org/

Web Security Testing-Kochbuch

Dieses Buch ist für Prüfer geschrieben, Tester und weniger für Entwickler. Welches ist ziemlich ungewöhnlich für ein O'Reilly-Buch.

websecuritytesting.com

Vulnerability Kategorisierungs von Fortify

www.fortify.com/vulncat /

Common Weakness Enumeration (Warnung: extensiv)

nvd.nist.gov/cwe.cfm

Allgemein Angriff Muster Aufzählung und Klassifizierung (Warnung: noch umfangreichere)

capec.mitre.org /

Google Web Security Tutorials

(eher schwach)

code.google.com/edu/security/index.html

Andere Tipps

trat ich ein Web-App-Projekt, das eine Dokumentbibliothek enthalten. Die Art und Weise Dokumente verwiesen war so etwas wie http://example.com/getdocument?file=somefile. pdf . Natürlich nur hatte ich file = / etc / passwd, um zu versuchen, und natürlich hat es funktioniert.

. Lösung: Führen Sie eine Benutzereingabe Hygienisierung und / oder ein gewisses Maß an Abstraktion zwischen Ressourcen in der URL und dem tatsächlichen Dateisystem angeforderten Ressourcen verwenden

Dies ist der Cousin von SQL-Injection-Angriffe. Untersuchen Sie jede erlaubt Anfrage, dass verdächtig aussieht wie es dem Kunden zu viel Kontrolle.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top