Was macht API-Gateway-Zugriffslogs analysieren?
Verwendungszweck
- Bei der Untersuchung von Sicherheitsvorfällen, die eine Analyse von API-Gateway-Zugriffslogs erfordern
- Beim Erstellen von Erkennungsregeln oder Threat-Hunting-Abfragen für diesen Bereich
- Wenn SOC-Analysten strukturierte Verfahren für diese Analyseart benötigen
- Bei der Validierung der Sicherheitsüberwachungsabdeckung für verwandte Angriffstechniken
Voraussetzungen
- Vertrautheit mit Sicherheitsbetriebskonzepten und -tools
- Zugriff auf eine Test- oder Laborumgebung für die sichere Ausführung
- Python 3.8+ mit installierten erforderlichen Abhängigkeiten
- Entsprechende Autorisierung für alle Testaktivitäten
Anleitung
Analysieren Sie API-Gateway-Zugriffslogs, um Angriffsmuster zu identifizieren, darunter Broken Object Level Authorization (BOLA), übermäßige Datenpreisgabe und Injection-Versuche.
import pandas as pd
df = pd.read_json("api_gateway_logs.json", lines=True)
# BOLA erkennen: gleicher Benutzer greift auf viele verschiedene Ressourcen-IDs zu
bola = df.groupby(["user_id", "endpoint"]).agg(
unique_ids=("resource_id", "nunique")).reset_index()
suspicious = bola[bola["unique_ids"] > 50]
Wichtige Erkennungsmuster:
- BOLA/IDOR: sequentielle Ressourcen-ID-Aufzählung
- Rate-Limit-Umgehung durch Header-Manipulation
- Credential-Scanning (401 Surges von einer einzelnen Quelle)
- SQL/NoSQL-Injection in Query-Parametern
- Ungewöhnliche HTTP-Methoden (DELETE, PATCH) auf schreibgeschützten Endpunkten
Beispiele
# 401 Surges erkennen, die auf Credential-Scanning hindeuten
auth_failures = df[df["status_code"] == 401]
scanner_ips = auth_failures.groupby("source_ip").size()
scanners = scanner_ips[scanner_ips > 100]