Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Mobile-Intrusion-Detection-System — Unüberwachter Deep-Autoencoder, der anomalen mobilen Datenverkehr kennzeichnet: Über 25.000 mit mitmproxy von einem live iOS-Gerät abgefangene HTTP/HTTPS-Flows, Schwellenwert-Tuning, das die markierten Flows von 1.100 auf 103 reduzierte, und ein Streamlit-Überwachungsdashboard. | Kitploit
Tools/GitLabGitLab/yashubitra/mobile-intrusion-detection-system
DefensivwerkzeugePaket-Sniffing & AnalyseNetzwerksicherheitMobile SicherheitMaschinelles LernenEinbruchserkennungAnomalieerkennungLog-Analyse

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
GitLab
yashubitra/mobile-intrusion-detection-system

Mobile-Intrusion-Detection-System

Unüberwachter Deep-Autoencoder, der anomalen mobilen Datenverkehr kennzeichnet: Über 25.000 mit mitmproxy von einem live iOS-Gerät abgefangene HTTP/HTTPS-Flows, Schwellenwert-Tuning, das die markierten Flows von 1.100 auf 103 reduzierte, und ein Streamlit-Überwachungsdashboard.

Repository anzeigenWebseite
19vor 1 JahrNoch nicht geprüft
Teilen

Mobiles Intrusion-Detection-System

Dieses Projekt implementiert ein mobiles Intrusion-Detection-System, das den von mobilen Geräten erfassten Netzwerkverkehr verarbeitet, Feature-Engineering durchführt und ein auf Autoencodern basierendes Deep-Learning-Modell verwendet, um anomalen Netzwerkverkehr zu erkennen. Externe Threat-Intelligence- und Whitelist-Daten werden genutzt, um Fehlalarme zu reduzieren und die Erkennungsgenauigkeit zu verbessern.

Inhaltsverzeichnis

  • Funktionen
  • Architekturübersicht
  • Installation und Einrichtung der Umgebung
  • Verwendung
    • Trainingsmodus
    • Vorhersagemodus
    • Dashboard-Modus
  • Datenquellen und externe Referenzen
  • Fazit und zukünftige Arbeiten
  • Referenzen
  • Lizenz

Funktionen

  • Erfassung von Netzwerkflüssen: Verwendet MITMProxy, um HTTP-Flüsse von mobilen Geräten zu erfassen.
  • Verarbeitung und Archivierung von Flüssen: Archiviert frühere Flussaufzeichnungen, indem flows.mitm in flows_1.mitm umbenannt wird, um ein Überschreiben zu vermeiden, und verarbeitet anschließend neue Aufzeichnungen.
  • Feature-Engineering: Extrahiert, skaliert und vektorisiert Merkmale (mittels TF-IDF) aus den erfassten Flüssen.
  • Anomalieerkennung: Trainiert ein Autoencoder-Modell auf historischen Daten, um normales Verhalten zu erlernen und anomale Flüsse anhand von Rekonstruktionsfehlern zu kennzeichnen.
  • Whitelist-Filterung: Wendet eine Whitelist-Filterung unter Verwendung von Daten aus Quellen wie den Majestic Million und den Top 1M Domains (Kaggle) an, um harmlose Anomalien herauszufiltern.
  • Vorhersagemodus: Verarbeitet neu erfasste Daten, wendet das trainierte Modell an und gibt Anomalien zusammen mit Metriken aus.
  • Dashboard-Modus: Bietet ein interaktives Dashboard (erstellt mit Streamlit und Plotly) zur Visualisierung und Analyse der Ergebnisse.

Architekturübersicht

  1. Flusserfassung und Archivierung

    • MITMProxy erfasst Netzwerkflüsse von mobilen Geräten.
    • Die vorhandene Aufzeichnungsdatei (flows.mitm) wird vor der neuen Aufzeichnung in flows_1.mitm umbenannt, um ein Überschreiben zu vermeiden.
    • Die erfassten Flüsse werden anschließend in die Formate CSV und JSON konvertiert.
  2. Feature-Engineering

    • Merkmale werden aus den verarbeiteten Flüssen extrahiert.
    • Die Daten werden mit einem Scaler skaliert und mittels TF-IDF vektorisiert.
    • Die erzeugten Merkmale werden in einer CSV-Datei gespeichert und für das Modelltraining und die Vorhersage verwendet.
  3. Modelltraining und Vorhersage

    • Trainingsmodus: Verarbeitet historische Daten, um das Autoencoder-Modell zu trainieren. Modellartefakte wie das trainierte Modell und der Scaler werden gespeichert.
    • Vorhersagemodus: Verarbeitet neu erfasste Daten, führt Vorhersagen mit dem trainierten Modell aus und wendet eine Whitelist-Filterung an, um Fehlalarme zu reduzieren.
  4. Visualisierung und Dashboard (optional)

    • Ein interaktives Dashboard zeigt Metriken wie Loss-Kurven, Verteilungen der Rekonstruktionsfehler, Anomalieanzahlen und mehr.

Installation und Einrichtung der Umgebung

  1. Repository klonen

    git clone https://github.com/yourusername/Mobile-Intrusion-Detection-System.git
    cd Mobile-Intrusion-Detection-System
    
  2. Virtuelle Umgebung erstellen und aktivieren

    python3 -m venv venv
    source venv/bin/activate
    
  3. Erforderliche Pakete installieren

    pip install tensorflow pandas numpy scikit-learn matplotlib plotly streamlit
    

Verwendung

Trainingsmodus

Führen Sie die Trainingspipeline aus, um historische Daten zu verarbeiten, Feature-Engineering durchzuführen und das Autoencoder-Modell zu trainieren:

./run_project.sh train

Dieser Befehl führt die folgenden Schritte aus:

  • Verarbeitet die erfassten Netzwerk-Flows.
  • Archiviert die vorherige Capture-Datei (d. h. flows.mitm wird in flows_1.mitm umbenannt).
  • Erstellt und skaliert die Features.
  • Trainiert das Autoencoder-Modell und evaluiert es.
  • Speichert das Modell, den Scaler und die Laufzusammenfassung im Verzeichnis results/ (einschließlich run_log.json).

Predict-Modus

Vor dem Ausführen der Vorhersage wird die vorhandene Datei flows_1.mitm (mit einem Zeitstempel) archiviert, um die vorherigen Capture-Daten zu erhalten. Anschließend werden neue Flows erfasst und verarbeitet:

./run_project.sh predict

Dieser Befehl führt die folgenden Schritte aus:

  • Archiviert die aktuelle Datei flows_1.mitm mit einem Zeitstempel.
  • Verarbeitet neu erfasste Flows und konvertiert sie in die Formate CSV und JSON.
  • Kopiert die neue CSV-Datei an den erwarteten Speicherort und führt Feature Engineering durch.
  • Lädt den trainierten Scaler und das Modell.
  • Führt Vorhersagen auf den neuen Daten aus und wendet eine Whitelist-Filterung an.
  • Gibt die Vorhersageergebnisse aus und speichert sie im Verzeichnis results/ zusammen mit einer aktualisierten run_log.json.

Dashboard-Modus

Um die Ergebnisse und Leistungskennzahlen zu visualisieren, starten Sie den Dashboard-Modus mit Streamlit:

./run_project.sh dashboard

Das Dashboard zeigt:

  • Trainings- und Validierungsverlustkurven.
  • Verteilung der Rekonstruktionsfehler mit dem festgelegten Schwellenwert.
  • Anomalieanzahlen über mehrere Läufe hinweg.
  • Vergleich der Anzahl eindeutiger URLs vor und nach der Whitelist-Filterung.
  • Zusätzliche interaktive Diagramme und Übersichtstabellen für die weitere Analyse.

Datenquellen und externe Referenzen

  • Whitelist-Daten:
    • Majestic Million Report
    • Top 1M Domains Dataset (Kaggle)

Fazit und zukünftige Arbeiten

Das Mobile Intrusion Detection System demonstriert eine effektive Verarbeitung von Netzwerkflussdaten von mobilen Geräten und nutzt einen auf Autoencodern basierenden Ansatz zur Anomalieerkennung. Die Integration der Whitelist-Filterung reduziert Fehlalarme erheblich; die Vorhersagephase offenbarte jedoch Herausforderungen – insbesondere bei der Unterscheidung zwischen harmlosen, mit Google-Suchen verbundenen Flüssen und tatsächlich bösartigen Aktivitäten. Dies deutet darauf hin, dass eine weitere Verfeinerung der Anomalieerkennungslogik, insbesondere innerhalb der Whitelist-Filterungsphase, erforderlich ist. Zukünftige Arbeiten werden sich auf die Verbesserung der Filteralgorithmen, die Einbeziehung zusätzlicher Threat-Intelligence-Quellen und die Erweiterung der Dashboard-Funktionalitäten für tiefergehende Einblicke konzentrieren.

Referenzen

  • Majestic Million Report
  • Top 1M Domains Dataset (Kaggle)
  • MITMProxy
  • TensorFlow
  • Scikit-Learn
  • Plotly
  • Streamlit

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert. Weitere Details finden Sie in der Datei LICENSE.

Tool herunterladen