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.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
malcom — Malcom - Malware-Kommunikationsanalysator | Kitploit
Tools/GitHubGitHub/tomchop/malcom
NetzwerkforensikMalware-AnalyseBedrohungsanalyse
GitHubtomchop/malcom

malcom

Malcom - Malware-Kommunikationsanalysator

Repository anzeigen
1.2k21624vor 8 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Malcom - Malware-Kommunikationsanalysator

Malcom ist ein Werkzeug, das entwickelt wurde, um die Netzwerkkommunikation eines Systems mittels grafischer Darstellungen des Netzwerkverkehrs zu analysieren und mit bekannten Malware-Quellen abzugleichen. Dies ist nützlich bei der Analyse, wie bestimmte Malware-Arten versuchen, mit der Außenwelt zu kommunizieren.

  • Was ist Malcom?
  • Kurzanleitung
  • Installation
  • Konfigurationsoptionen
  • Docker-Instanz
  • Kurzer Hinweis zur TLS-Abfang
  • Umgebung
  • Feeds
  • Technische Spezifikationen
  • Fahrplan
  • Haftungsausschluss
  • Lizenz

Was ist Malcom?

Malcom kann Ihnen helfen:

  • zentrale Command-and-Control (C&C)-Server zu erkennen
  • Peer-to-Peer-Netzwerke zu verstehen
  • DNS-Fast-Flux-Infrastrukturen zu beobachten
  • schnell festzustellen, ob ein Netzwerkartefakt 'bekannt-schädlich' ist

Das Ziel von Malcom ist es, Malware-Analyse und Nachrichtenbeschaffung schneller zu machen, indem eine menschenlesbare Version des von einem bestimmten Host oder Netzwerk ausgehenden Netzwerkverkehrs bereitgestellt wird. Wandeln Sie Netzwerkverkehrsinformationen schneller in umsetzbare Erkenntnisse um.

Schauen Sie sich das wiki für einen Schnellstart mit einigen schönen Screenshots und ein Tutorial zum Hinzufügen eigener Feeds an.

Wenn Sie Hilfe benötigen oder einen Beitrag leisten möchten, können Sie gerne der Mailingliste beitreten oder versuchen, jemanden im IRC zu erreichen (#malcom on freenode.net, es ist ziemlich ruhig, aber es ist immer jemand da). Sie können mich auch auf Twitter kontaktieren @tomchop_

Hier ist ein Beispielgraph für den Host tomchop.me nodes-tomchop.png

Datensatzansicht (gefiltert, um nur IPs anzuzeigen) dataset-view.png

Kurzanleitung

  • Installieren
  • Stellen Sie sicher, dass mongodb und redis-server laufen
  • Erweitern Sie Ihre Rechte auf root (ja, ich weiß, siehe Haftungsausschluss)
  • Starten Sie den Webserver mit der Standardkonfiguration mittels ./malcom.py -c malcom.conf (oder sehen Sie Optionen mit ./malcom.py --help) ** Für eine Beispielkonfigurationsdatei können Sie malcom.conf.example nach malcom.conf kopieren ** Standardport ist 8080 ** Alternativ können Sie die Feeds von celery aus ausführen. Siehe den Abschnitt Feeds für Details zur Vorgehensweise.

Installation

Malcom ist in Python geschrieben. Vorausgesetzt, Sie haben die notwendigen Bibliotheken, sollten Sie es auf jeder Plattform ausführen können. Ich empfehle dringend die Verwendung von Python-Virtualenvs (virtualenv), um Ihre Systembibliotheken nicht zu beeinträchtigen.

Das Folgende wurde auf Ubuntu Server 14.04 LTS getestet:

  • Installieren Sie git, python und libevent-Bibliotheken, mongodb, redis und andere Abhängigkeiten

      $ sudo apt-get install build-essential git python-dev libevent-dev mongodb libxml2-dev libxslt-dev zlib1g-dev redis-server libffi-dev libssl-dev python-virtualenv
    
  • Klonen Sie das Git-Repository:

      $ git clone https://github.com/tomchop/malcom.git malcom
    
  • Erstellen Sie Ihre virtuelle Umgebung und aktivieren Sie sie:

      $ cd malcom
      $ virtualenv env-malcom
      $ source env-malcom/bin/activate
    
  • Holen und installieren Sie scapy:

      $ cd .. 
      $ wget http://www.secdev.org/projects/scapy/files/scapy-latest.tar.gz
      $ tar xvzf scapy-latest.tar.gz
      $ cd scapy-2.1.0
      $ python setup.py install
    
  • Installieren Sie aus Ihrer virtuellen Umgebung die notwendigen Python-Pakete aus der Datei requirements.txt:

      $ cd ../malcom
      $ pip install -r requirements.txt
    
  • Damit die IP-Geolokalisierung funktioniert, müssen Sie die Maxmind-Datenbank herunterladen und die Datei in das Verzeichnis malcom/Malcom/auxiliary/geoIP extrahieren. Sie können Maxminds kostenlose (und daher mehr oder weniger genaue) Datenbank über den folgenden Link beziehen: http://dev.maxmind.com/geoip/geoip2/geolite2/:

      $ cd Malcom/auxiliary/geoIP
      $ wget http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.mmdb.gz
      $ gunzip -d GeoLite2-City.mmdb.gz
      $ mv GeoLite2-City.mmdb GeoIP2-City.mmdb
    
  • Starten Sie den Webserver aus dem malcom-Verzeichnis mit ./malcom.py. Überprüfen Sie ./malcom.py --help für die Lauschschnittstelle und Ports.

    • Für den Anfang können Sie die Datei malcom.conf.example nach malcom.conf kopieren und ./malcom.py -c malcom.conf ausführen

Konfigurationsoptionen

Datenbank

Standardmäßig versucht Malcom, eine Verbindung zu einer lokalen MongoDB-Instanz herzustellen und eine eigene Datenbank namens malcom zu erstellen. Wenn dies für Sie in Ordnung ist, können Sie die folgenden Schritte überspringen. Andernfalls müssen Sie den Abschnitt database Ihrer malcom.conf-Datei bearbeiten.

Einen anderen Namen für Ihre Malcom-Datenbank festlegen

Standardmäßig verwendet Malcom eine Datenbank namens malcom. Sie können dieses Verhalten ändern, indem Sie die malcom.conf-Datei bearbeiten und die Direktive name im Abschnitt database nach Ihren Wünschen einstellen.

    [database]
    ...
    name = my_malcom_database
    ...
Entfernte Datenbank(en)

Standardmäßig versucht Malcom, eine Verbindung zu localhost herzustellen, aber Ihre Datenbank könnte sich auf einem anderen Server befinden. Um dies zu ändern, setzen Sie einfach die Direktive hosts. Sie können Hostnamen oder IPv4/v6-Adressen verwenden (denken Sie daran, Ihre IPv6-Adressen zwischen [ und ] zu setzen, z.B. [::1]).

Wenn Sie eine eigenständige Datenbank auf dem Host my.mongo.server verwenden möchten, setzen Sie einfach:

    [database]
    ...
    hosts = my.mongo.server
    ...

Sie können auch den Port angeben, auf dem mongod lauscht, indem Sie ihn nach dem Namen/der Adresse Ihres Servers, getrennt durch ein :, angeben:

    [database]
    ...
    hosts = localhost:27008
    ...

Und wenn Sie ein ReplicaSet verwenden, das my.mongo1.server und my.mongo2.server gruppiert, setzen Sie einfach:

    [database]
    ...
    hosts = my.mongo1.server,my.mongo2.server
    ...
Authentifizierung verwenden

Sie haben möglicherweise Ihre mongod-Instanzen so konfiguriert, dass sie authentifizierte Verbindungen erzwingen. In diesem Fall müssen Sie den Benutzernamen festlegen, den der Treiber verwenden muss, um eine Verbindung zu Ihrer mongod-Instanz herzustellen. Fügen Sie dazu einfach eine Direktive username im Abschnitt database der malcom.conf-Datei hinzu. Möglicherweise müssen Sie auch das Passwort mit der Direktive password festlegen. Wenn der Benutzer kein Passwort hat, ignorieren Sie (d.h. kommentieren Sie) die Direktive password.

    [database]
    ...
    username = my_user
    password = change_me
    ...

Wenn der Benutzer nicht mit der malcom-Datenbank verknüpft ist, sondern mit einer anderen (z.B. der admin-Datenbank für einen Admin-Benutzer), müssen Sie die Direktive authentication_database mit dem Namen dieser Datenbank setzen.

    [database]
    ...
    authentication_database = some_other_database
    ...
Tool herunterladen