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
iocextract — Entschärfter Indikator für Kompromittierung (IOC) Extraktor. | Kitploit
Tools/GitHubGitHub/pedramamini/iocextract
Management von Indicators of Compromise (IOC)OSINT (Open-Source-Intelligence)Bedrohungsfeeds & AggregatorenForensikInformationsbeschaffungMalware-AnalyseDigitale ForensikBedrohungsanalyse
GitHubpedramamini/iocextract

iocextract

Entschärfter Indikator für Kompromittierung (IOC) Extraktor.

Repository anzeigen
5849214vor 2 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 →
Webseite
Teilen

iocextract

Entwickelt von InQuest Build-Status Dokumentationsstatus PyPI-Version

Indicator of Compromise (IOC)-Extraktor für einige der am häufigsten verwendeten Artefakte.

Inhaltsverzeichnis

  • Übersicht
    • Das Problem
    • Unsere Lösung
    • Beispiel-Anwendungsfall
  • Installation
  • Verwendung
    • Bibliothek
    • Kommandozeilenschnittstelle
  • Hilfreiche Informationen
    • FAQ
    • Weitere Details
    • Eigener regulärer Ausdruck
    • Verwandte Projekte
    • Mitwirken

Übersicht

Das iocextract-Paket ist eine Bibliothek und eine Kommandozeilenschnittstelle (CLI) zum Extrahieren von URLs, IP-Adressen, MD5/SHA-Hashes, E-Mail-Adressen und YARA-Regeln aus Textkorpora. Es ermöglicht, codierte und „defanged" IOCs zu extrahieren und sie optional zu decodieren oder zu refangen.

Das Problem

Es ist gängige Praxis, dass Malware-Analysten oder Endpunkt-Software IOCs wie URLs und IP-Adressen „defangen", um eine versehentliche Exposition gegenüber lebenden schädlichen Inhalten zu vermeiden. Das Extrahieren und Aggregieren dieser IOCs ist für Analysten oft wertvoll. Leider übersehen bestehende „IOC-Extraktions"-Werkzeuge diese oft, da sie von Standard-Regex nicht erfasst werden.

Zum Beispiel die einfache Defanging-Technik, Punkte in eckige Klammern zu setzen:

127[.]0[.]0[.]1

Vorhandene Werkzeuge, die einen einfachen IP-Adress-Regex verwenden, ignorieren diesen IOC vollständig.

Unsere Lösung

Durch die Kombination von speziell entwickelten Regex mit einer benutzerdefinierten Nachbearbeitung können wir „defanged" IOCs sowohl erkennen als auch entschleiern. Dies spart Zeit und Mühe für den Analysten, der sonst manuell IOCs finden und in maschinenlesbares Format konvertieren müsste.

Beispiel-Anwendungsfall

Viele Twitter-Nutzer posten C2s oder andere wertvolle IOC-Informationen mit defanged URLs. Zum Beispiel dieser Tweet von @InQuest:

Empfohlene Lektüre und großartige Arbeit von @unit42_intel:
https://researchcenter.paloaltonetworks.com/2018/02/unit42-sofacy-attacks-multiple-government-entities/ ...
InQuest-Kunden haben seit dem 6.3.2017 Erkennung für Bedrohungen, die von hotfixmsupload[.]com
bereitgestellt werden, und seit dem 1.2.18 für cdnverify[.]net.

Wenn wir dies durch den Extraktor laufen lassen, können wir leicht die URLs extrahieren:

https://researchcenter.paloaltonetworks.com/2018/02/unit42-sofacy-attacks-multiple-government-entities/
hotfixmsupload[.]com
cdnverify[.]net

Die Übergabe von refang=True zum Extraktionszeitpunkt würde die Verschleierung entfernen, aber da es sich um echte IOCs handelt, lassen wir sie in unserer Dokumentation defanged.

Installation

Möglicherweise müssen Sie die Python-Entwicklungs-Header installieren, um die regex-Abhängigkeit zu installieren. Auf Ubuntu/Debian-basierten Systemen versuchen Sie:

sudo apt-get install python-dev

Installieren Sie dann iocextract von pip:

pip install iocextract

Wenn Sie Probleme bei der Installation unter Windows haben, versuchen Sie, regex direkt zu installieren, indem Sie das passende Wheel von PyPI herunterladen und über pip installieren:

pip install regex-2018.06.21-cp27-none-win_amd64.whl

Verwendung

Bibliothek

Versuchen Sie, einige defanged URLs zu extrahieren:

import iocextract

content = \
"""
Ich liebe example[.]com wirklich!
Alle Bots sind heutzutage auf hxxp://example.com/bad/url unterwegs.
C2: tcp://example[.]com:8989/bad
"""

for url in iocextract.extract_urls(content):
    print(url)

    # Ausgabe

    # hxxp://example.com/bad/url
    # tcp://example[.]com:8989/bad
    # example[.]com
    # tcp://example[.]com:8989/bad

HINWEIS: Einige URLs können doppelt auftauchen, wenn sie von mehreren Regexen erfasst werden.

Wenn Sie möchten, können Sie IOCs auch „refangen" oder gängige Verschleierungsmethoden entfernen:

import iocextract

for url in iocextract.extract_urls(content, refang=True):
    print(url)

    # Ausgabe

    # http://example.com/bad/url
    # http://example.com:8989/bad
    # http://example.com
    # http://example.com:8989/bad

Wenn Sie die extrahierten IOCs während der Extraktion überhaupt nicht defangen möchten, können Sie dies ebenfalls deaktivieren:

import iocextract

content = \
"""
http://example.com/bad/url
http://example.com:8989/bad
http://example.com
http://example.com:8989/bad
"""

for url in iocextract.extract_urls(content, defang=False):
    print(url)

    # Ausgabe

    # http://example.com/bad/url
    # http://example.com:8989/bad
    # http://example.com
    # http://example.com:8989/bad

Alle extract_*-Funktionen in dieser Bibliothek geben Iteratoren zurück, keine Listen. Der Vorteil dieses Verhaltens ist, dass iocextract extrem große Eingaben mit sehr geringem Overhead verarbeiten kann. Wenn Sie jedoch aus irgendeinem Grund mehrmals über die IOCs iterieren müssen, müssen Sie die Ergebnisse als Liste speichern:

import iocextract

content = \
"""
Ich liebe example[.]com wirklich!
Alle Bots sind heutzutage auf hxxp://example.com/bad/url unterwegs.
C2: tcp://example[.]com:8989/bad
"""

print(list(iocextract.extract_urls(content)))
# ['hxxp://example.com/bad/url', 'tcp://example[.]com:8989/bad', 'example[.]com', 'tcp://example[.]com:8989/bad']

Kommandozeilenschnittstelle

Ein Kommandozeilenwerkzeug ist ebenfalls enthalten:

$ iocextract -h
    usage: iocextract [-h] [--input INPUT] [--output OUTPUT] [--extract-emails]
                  [--extract-ips] [--extract-ipv4s] [--extract-ipv6s]
                  [--extract-urls] [--extract-yara-rules] [--extract-hashes]
                  [--custom-regex REGEX_FILE] [--refang] [--strip-urls]
                  [--wide]

    Erweiterter Indicator of Compromise (IOC)-Extraktor. Wenn keine Argumente
    angegeben werden, ist das Standardverhalten, alle IOCs zu extrahieren.

    optionale Argumente:
      -h, --help            Zeigt diese Hilfemeldung an und beendet das Programm
      --input INPUT         Standard: stdin
      --output OUTPUT       Standard: stdout
      --extract-emails
      --extract-ips
      --extract-ipv4s
      --extract-ipv6s
      --extract-urls
      --extract-yara-rules
      --extract-hashes
      --custom-regex REGEX_FILE Datei mit benutzerdefinierten Regex-Zeichenfolgen, eine pro Zeile, mit jeweils einer Erfassungsgruppe
      --refang              Standard: nein
      --strip-urls          Entfernt möglichen Müll vom Ende der URLs. Standard: nein
      --wide                Verarbeitet die Eingabe vor, um Wide-Encoded-Zeichenübereinstimmungen zu ermöglichen. Standard: nein

HINWEIS: Nur URLs, E-Mails und IPv4-Adressen können „refangt" werden.

Hilfreiche Informationen

FAQ

Sind Sie...

Tool herunterladen