Mit der Shodan-API automatisierte Analysen starten

In den ersten beiden Teilen dieser Serie haben wir die Grundlagen von Shodan sowie die Suchsyntax mit Praxisbeispielen behandelt. In diesem Teil widmen wir uns der Shodan-API, die es ermöglicht, Suchabfragen und Sicherheitsanalysen zu automatisieren und in eigene Workflows zu integrieren.


Warum Automatisierung mit Shodan?

Manuelle Suchen über die Weboberfläche eignen sich für einzelne Abfragen.
Die Shodan-API bietet jedoch:

  • Automatisierte Prüfungen von Netzwerken
  • Integration in Sicherheits-Workflows (z. B. SIEM-Systeme)
  • Individuelle Skripte für wiederkehrende Analysen
  • Schnelle Reaktion bei neuen Bedrohungen

Voraussetzungen

  1. Shodan-Account erstellen
  2. API-Key erhalten (unter My Account in Shodan)
  3. Python oder ein anderes Skriptwerkzeug installieren

Erste Schritte mit der Shodan-API

Installation des Python-Moduls

pip install shodan

Einfaches Python-Skript

import shodan

API_KEY = "DEIN_API_KEY"
shodan_api = shodan.Shodan(API_KEY)

# Suche nach offenen RDP-Servern in Deutschland
query = "port:3389 country:DE"
result = shodan_api.search(query)

print(f"Gefundene Ergebnisse: {result['total']}")
for service in result['matches'][:5]:
    print(f"IP: {service['ip_str']} | Port: {service['port']}")

Dieses Skript listet die ersten fünf offenen RDP-Server in Deutschland auf.


Weitere API-Funktionen

  • Host-Informationen abrufen: host = shodan_api.host("8.8.8.8") print(host) → Liefert Details zu IP, offenen Ports, Diensten und Standort.
  • Count-API:
    Für Statistiken und Trendanalysen result = shodan_api.count("apache") print(f"Anzahl Apache-Server: {result['total']}")
  • Streaming-API:
    Echtzeitdaten für Sicherheitsüberwachung (nur für Shodan Enterprise).

Automatisierte Sicherheitsprüfungen

Beispiele für automatisierte Workflows:

  • Tägliche Scans für neue offene Ports im Firmennetz
  • Benachrichtigungen bei neuen sicherheitskritischen Geräten
  • Anbindung an SIEM-Systeme, um Alarme auszulösen

Praxisbeispiel:
Ein Python-Skript kann automatisch täglich prüfen, ob interne Server versehentlich im Internet sichtbar sind und eine Warnung versenden.


Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert