Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
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
asf__nifi_CVE-2023-34468_1-21-00 — Exploit für Apache NiFi CVE-2023-34468, Angriff auf eine Sicherheitslücke in den Versionen 1.21.0 und früher, um Datenzugriff und Systemkompromittierung zu demonstrieren. | Kitploit
Tools/GitHubGitHub/shoucheng3
/asf__nifi_cve-2023-34468_1-21-00
SchwachstellenanalyseExploitationDatenexfiltrationWebsicherheitPenetrationstestsCloud-Sicherheit
GitHubshoucheng3/asf__nifi_cve-2023-34468_1-21-00

asf__nifi_CVE-2023-34468_1-21-00

Exploit für Apache NiFi CVE-2023-34468, Angriff auf eine Sicherheitslücke in den Versionen 1.21.0 und früher, um Datenzugriff und Systemkompromittierung zu demonstrieren.

Repository anzeigen
vor 1 JahrNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Apache NiFi

ci-workflow system-tests Docker pulls Version Slack

Apache NiFi ist ein benutzerfreundliches, leistungsstarkes und zuverlässiges System zur Verarbeitung und Verteilung von Daten.

Inhaltsverzeichnis

  • Features
  • Requirements
  • Getting Started
  • MiNiFi subproject
  • Registry subproject
Getting Help
  • Documentation
  • License
  • Export Control
  • Features

    Apache NiFi wurde für Datenflüsse entwickelt. Es unterstützt hochgradig konfigurierbare gerichtete Graphen für Datenrouting, -transformation und Systemvermittlungslogik. Zu den wichtigsten Funktionen gehören:

    • Webbasierte Benutzeroberfläche
      • Nahtloses Erlebnis für Design, Steuerung und Überwachung
      • Multi-Tenant-Benutzererfahrung
    • Hochgradig konfigurierbar
      • Verlusttolerant vs. garantierte Zustellung
      • Niedrige Latenz vs. hoher Durchsatz
      • Dynamische Priorisierung
      • Flows können zur Laufzeit geändert werden
      • Backpressure
      • Skaliert nach oben, um die volle Maschinenleistung zu nutzen
      • Skaliert horizontal mit einem führerlosen Clustering-Modell
    • Datenherkunft (Data Provenance)
      • Verfolgen Sie den Datenfluss von Anfang bis Ende
    • Für Erweiterungen konzipiert
      • Erstellen Sie eigene Prozessoren und mehr
      • Ermöglicht schnelle Entwicklung und effektives Testen
    • Sicher
      • SSL, SSH, HTTPS, verschlüsselte Inhalte usw.
      • Steckbare, feinkörnige rollenbasierte Authentifizierung/Autorisierung
      • Mehrere Teams können bestimmte Teile des Flusses verwalten und teilen

    Mindestempfehlungen

    • JDK 11.0.16
    • Apache Maven 3.8.6

    Mindestanforderungen

    • JDK 8 Update 251
    • Apache Maven 3.6.0

    Getting Started

    Lesen Sie den Schnellstart-Leitfaden für die Entwicklung. Er enthält Informationen zum Erhalten einer lokalen Kopie des Quellcodes, Hinweise zum Issue-Tracking und Warnungen zu häufigen Problemen in Entwicklungsumgebungen.

    Für einen umfassenderen Leitfaden zur Entwicklung und Informationen zur Mitarbeit am Projekt lesen Sie den NiFi Developer's Guide.

    Building

    Führen Sie mvn clean install oder für parallele Builds mvn -T 2.0C clean install aus.

    Der parallele Build sollte auf moderner Hardware etwa fünfzehn Minuten dauern.

    root@kitploit:~
    laptop:nifi myuser$ mvn -T 2.0C clean install
    [INFO] Scanning for projects...
    [INFO] Inspecting build with total of 115 modules...
        ...tens of thousands of lines elided...
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 09:24 min (Wall Clock)
    [INFO] Finished at: 2015-04-30T00:30:36-05:00
    [INFO] Final Memory: 173M/1359M
    [INFO] ------------------------------------------------------------------------
    

    Führen Sie mvn clean install -DskipTests aus, um die Ausführung der Komponententests zu überspringen.

    Deploying

    Wechseln Sie in das Verzeichnis nifi-assembly. Das Verzeichnis target enthält die Binärarchive.

    root@kitploit:~
    laptop:nifi myuser$ cd nifi-assembly
    laptop:nifi-assembly myuser$ ls -lhd target/nifi*
    drwxr-xr-x  3 myuser  mygroup   102B Apr 30 00:29 target/nifi-1.0.0-SNAPSHOT-bin
    -rw-r--r--  1 myuser  mygroup   144M Apr 30 00:30 target/nifi-1.0.0-SNAPSHOT-bin.tar.gz
    -rw-r--r--  1 myuser  mygroup   144M Apr 30 00:30 target/nifi-1.0.0-SNAPSHOT-bin.zip
    

    Kopieren Sie die Datei nifi-VERSION-bin.tar.gz oder nifi-VERSION-bin.zip in ein separates Bereitstellungsverzeichnis. Das Entpacken der Distribution erstellt ein neues Verzeichnis, das nach der Version benannt ist.

    root@kitploit:~
    laptop:nifi-assembly myuser$ mkdir ~/example-nifi-deploy
    laptop:nifi-assembly myuser$ tar xzf target/nifi-*-bin.tar.gz -C ~/example-nifi-deploy
    laptop:nifi-assembly myuser$ ls -lh ~/example-nifi-deploy/
    total 0
    drwxr-xr-x  10 myuser  mygroup   340B Apr 30 01:06 nifi-1.0.0-SNAPSHOT
    

    Starting

    Wechseln Sie in das Bereitstellungsverzeichnis und führen Sie den folgenden Befehl aus, um NiFi zu starten.

    root@kitploit:~
    laptop:~ myuser$ cd ~/example-nifi-deploy/nifi-*
    laptop:nifi-1.0.0-SNAPSHOT myuser$ ./bin/nifi.sh start
    

    Die Ausführung von bin/nifi.sh start startet NiFi im Hintergrund und beendet sich. Verwenden Sie --wait-for-init mit einem optionalen Timeout in Sekunden, um auf einen vollständigen Start zu warten, bevor die Ausführung beendet wird.

    root@kitploit:~
    laptop:nifi-1.0.0-SNAPSHOT myuser$ ./bin/nifi.sh start --wait-for-init 120
    

    Authenticating

    Die Standardkonfiguration generiert beim Start einen zufälligen Benutzernamen und ein zufälliges Passwort. NiFi schreibt die generierten Anmeldedaten in das Anwendungsprotokoll unter logs/nifi-app.log im NiFi-Installationsverzeichnis.

    Der folgende Befehl kann verwendet werden, um die generierten Anmeldedaten auf Betriebssystemen mit installiertem grep zu finden:

    root@kitploit:~
    laptop:nifi-1.0.0-SNAPSHOT myuser$ grep Generated logs/nifi-app*log
    

    NiFi protokolliert die generierten Anmeldedaten wie folgt:

    root@kitploit:~
    Generated Username [USERNAME]
    Generated Password [PASSWORD]
    

    Der USERNAME ist eine zufällige UUID aus 36 Zeichen. Das PASSWORD ist eine zufällige Zeichenfolge aus 32 Zeichen. Die generierten Anmeldedaten werden in conf/login-identity-providers.xml gespeichert, wobei das Passwort mit bcrypt gehasht wird. Notieren Sie diese Anmeldedaten an einem sicheren Ort für den Zugriff auf NiFi.

    Der zufällige Benutzername und das Passwort können mit dem folgenden Befehl durch benutzerdefinierte Anmeldedaten ersetzt werden:

    root@kitploit:~
    ./bin/nifi.sh set-single-user-credentials <username> <password>
    

    Running

    Öffnen Sie den folgenden Link in einem Webbrowser, um auf NiFi zuzugreifen: https://localhost:8443/nifi

    Der Webbrowser zeigt eine Warnmeldung an, die auf ein potenzielles Sicherheitsrisiko aufgrund des selbstsignierten Zertifikats hinweist, das NiFi während der Initialisierung generiert hat. Das Akzeptieren des potenziellen Sicherheitsrisikos und das Fortsetzen des Ladens der Oberfläche ist eine Option für anfängliche Entwicklungsinstallationen. Produktionsumgebungen sollten ein Zertifikat von einer vertrauenswürdigen Zertifizierungsstelle bereitstellen und die NiFi-Keystore- und Truststore-Konfiguration aktualisieren.

    Nach dem Akzeptieren des selbstsignierten Zertifikats wird der Anmeldebildschirm angezeigt. NiFi Login Screen

    Geben Sie mit den generierten Anmeldedaten den generierten Benutzernamen in das Feld User und das generierte Passwort in das Feld Password ein und wählen Sie LOG IN, um auf das System zuzugreifen. NiFi Flow Authenticated Screen

    Configuring

    Der NiFi User Guide beschreibt, wie ein Datenfluss erstellt wird.

    Stopping

    Führen Sie den folgenden Befehl aus, um NiFi zu stoppen:

    root@kitploit:~
    laptop:~ myuser$ cd ~/example-nifi-deploy/nifi-*
    laptop:nifi-1.0.0-SNAPSHOT myuser$ ./bin/nifi.sh stop
    

    MiNiFi subproject

    MiNiFi ist ein Tochterprojekt von Apache NiFi. Es handelt sich um einen ergänzenden Ansatz zur Datenerfassung, der die Kernprinzipien von NiFi im Datenflussmanagement ergänzt und sich auf die Erfassung von Daten an der Quelle ihrer Entstehung konzentriert.

    Die spezifischen Ziele von MiNiFi sind:

    • kleiner und leichter Fußabdruck
    • zentrale Verwaltung der Agents
    • Erzeugung von Datenherkunft (Data Provenance)
    • Integration mit NiFi für nachfolgendes Datenflussmanagement und vollständige Nachweiskette der Informationen

    Die Rolle von MiNiFi sollte aus der Perspektive des Agents betrachtet werden, der unmittelbar an oder direkt neben den Quellsensoren, -systemen oder -servern agiert.

    So führen Sie MiNiFi aus:

    • Wechseln Sie in das Verzeichnis minifi-assembly. Im Verzeichnis target sollte ein Build von MiNiFi vorhanden sein.

      root@kitploit:~
        $ cd minifi-assembly
        $ ls -lhd target/minifi*
        drwxr-xr-x  3 user  staff   102B Jul  6 13:07 minifi-1.14.0-SNAPSHOT-bin
        -rw-r--r--  1 user  staff    39M Jul  6 13:07 minifi-1.14.0-SNAPSHOT-bin.tar.gz
        -rw-r--r--  1 user  staff    39M Jul  6 13:07 minifi-1.14.0-SNAPSHOT-bin.zip
      
    • Für Tests der laufenden Entwicklung können Sie den bereits entpackten Build im Verzeichnis namens minifi-*version*-bin verwenden, wobei version die aktuelle Projektversion ist. Um in einem anderen Verzeichnis bereitzustellen, verwenden Sie entweder das Tarball oder die Zip-Datei und entpacken Sie sie an einem beliebigen Ort. Die Distribution befindet sich in einem gemeinsamen übergeordneten Verzeichnis, das nach der Version benannt ist.

      root@kitploit:~
        $ mkdir ~/example-minifi-deploy
        $ tar xzf target/minifi-*-bin.tar.gz -C ~/example-minifi-deploy
        $ ls -lh ~/example-minifi-deploy/
        total 0
        drwxr-xr-x  10 user  staff   340B Jul 6 01:06 minifi-1.14.0-SNAPSHOT
      

    So führen Sie MiNiFi aus:

    • Wechseln Sie in das Verzeichnis, in dem Sie MiNiFi installiert haben, und führen Sie es aus.

      root@kitploit:~
        $ cd ~/example-minifi-deploy/minifi-*
        $ ./bin/minifi.sh start
      
    • Zeigen Sie die Protokolle im Ordner logs an. $ tail -F ~/example-minifi-deploy/logs/minifi-app.log

    • Hilfe zum Erstellen Ihres ersten Datenflusses und zum Senden von Daten an eine NiFi-Instanz finden Sie im System Admin Guide im Ordner docs oder durch die Verwendung des minifi-toolkit, das bei der Anpassung von NiFi-Vorlagen an das MiNiFi-YAML-Konfigurationsdateiformat hilft.

    • Wenn Sie die laufende Entwicklung testen, möchten Sie wahrscheinlich Ihre Instanz stoppen.

      root@kitploit:~
        $ cd ~/example-minifi-deploy/minifi-*
        $ ./bin/minifi.sh stop
      

    Docker Build

    So bauen Sie:

    • Führen Sie einen vollständigen NiFi-Build durch (siehe oben). Führen Sie dann aus dem Verzeichnis minifi/ den Befehl mvn -P docker clean install aus. Dadurch wird der vollständige Build ausgeführt, ein Docker-Image basierend darauf erstellt und Docker-Compose-Integrationstests ausgeführt. Nach erfolgreichem Abschluss sollten Sie ein Image apacheminifi:${minifi.version} haben, das mit dem folgenden Befehl gestartet werden kann (ersetzen Sie ${minifi.version} durch die aktuelle Maven-Version Ihres Branches):
    root@kitploit:~
    docker run -d -v YOUR_CONFIG.YML:/opt/minifi/minifi-${minifi.version}/conf/config.yml apacheminifi:${minifi.version}
    

    Registry subproject

    Registry – ein Unterprojekt von Apache NiFi – ist eine ergänzende Anwendung, die einen zentralen Ort für die Speicherung und Verwaltung gemeinsam genutzter Ressourcen über eine oder mehrere Instanzen von NiFi und/oder MiNiFi hinweg bietet.

    Getting Registry Started

    1. Bauen Sie NiFi (siehe Getting Started für NiFi )

    oder

    Bauen Sie nur das Registry-Unterprojekt:

    root@kitploit:~
    cd nifi/nifi-registry
    mvn clean install
    
    

    Wenn Sie die Stil- und Lizenzprüfungen aktivieren möchten, geben Sie das contrib-check-Profil an:

    root@kitploit:~
    mvn clean install -Pcontrib-check
    

    2) Starten Sie Registry

    root@kitploit:~
    cd nifi-registry/nifi-registry-assembly/target/nifi-registry-<VERSION>-bin/nifi-registry-<VERSION>/
    ./bin/nifi-registry.sh start
    

    Beachten Sie, dass das Laden des Anwendungs-Webservers einige Zeit in Anspruch nehmen kann, bevor er erreichbar ist.

    1. Zugriff auf die Web-UI der Anwendung

    Mit den Standardeinstellungen ist die Anwendungs-UI unter http://localhost:18080/nifi-registry verfügbar.

    1. Zugriff auf die REST-API der Anwendung

    Wenn Sie die REST-API der Anwendung testen möchten, können Sie direkt darauf zugreifen. Mit den Standardeinstellungen lautet die Basis-URL der REST-API http://localhost:18080/nifi-registry-api. Eine UI zum Testen der REST-API ist unter http://localhost:18080/nifi-registry-api/swagger/ui.html verfügbar.

    1. Zugriff auf die Anwendungsprotokolle

    Die Protokolle sind unter logs/nifi-registry-app.log verfügbar.

    Database Testing

    Um sicherzustellen, dass NiFi Registry mit verschiedenen relationalen Datenbanken korrekt funktioniert, können die vorhandenen Integrationstests mithilfe des Testcontainers-Frameworks gegen verschiedene Datenbanken ausgeführt werden.

    Spring-Profile werden verwendet, um die DataSource-Factory zu steuern, die dem Spring-Anwendungskontext zur Verfügung gestellt wird. Es werden DataSource-Factories bereitgestellt, die das Testcontainers-Framework verwenden, um einen Docker-Container für eine bestimmte Datenbank zu starten und eine entsprechende DataSource zu erstellen. Wenn kein Profil angegeben ist, wird standardmäßig eine H2-DataSource verwendet, und es sind keine Docker-Container erforderlich.

    Vorausgesetzt, Docker läuft auf dem System, auf dem der Build ausgeführt wird, können die folgenden Befehle ausgeführt werden:

    Ziel-DatenbankBuild-Befehl
    Alle unterstütztenmvn verify -Ptest-all-dbs
    H2 (Standard)mvn verify
    MariaDB 10.3mvn verify -Pcontrib-check -Dspring.profiles.active=mariadb-10-3
    MySQL 8mvn verify -Pcontrib-check -Dspring.profiles.active=mysql-8
    PostgreSQL 10mvn verify -Dspring.profiles.active=postgres-10

    Eine vollständige Liste der verfügbaren DataSource-Factories finden Sie im Modul nifi-registry-test.

    Getting Help

    Wenn Sie Fragen haben, können Sie sich an unsere Mailingliste wenden: [email protected] (Archiv). Für interaktivere Diskussionen sind Community-Mitglieder oft an folgenden Orten zu finden:

    • Apache NiFi Slack Workspace: https://apachenifi.slack.com/

      Neue Benutzer können dem Workspace über den folgenden Einladungslink beitreten.

    Um eine Funktionsanfrage oder einen Fehlerbericht einzureichen, erstellen Sie bitte ein Jira unter https://issues.apache.org/jira/projects/NIFI/issues. Wenn es sich um einen Sicherheits-Schwachstellenbericht handelt, senden Sie bitte eine E-Mail direkt an [email protected] und lesen Sie zuerst die Apache NiFi Security Vulnerability Disclosure und die Apache Software Foundation Security Prozesse.

    Documentation

    Siehe https://nifi.apache.org/ für die aktuellste NiFi-Dokumentation.

    Siehe https://nifi.apache.org/minifi und https://cwiki.apache.org/confluence/display/MINIFI für die aktuellste MiNiFi-spezifische Dokumentation.

    Siehe https://nifi.apache.org/registry für die aktuellste Registry-spezifische Dokumentation.

    License

    Sofern nicht anders angegeben, ist diese Software unter der Apache License, Version 2.0 lizenziert.

    Lizenziert unter der Apache License, Version 2.0 (der "Lizenz"); Sie dürfen diese Datei nur in Übereinstimmung mit der Lizenz verwenden. Sie erhalten eine Kopie der Lizenz unter

    https://www.apache.org/licenses/LICENSE-2.0

    Sofern nicht durch geltendes Recht vorgeschrieben oder schriftlich vereinbart, wird die Software unter der Lizenz "AS IS" (OHNE GEWÄHRLEISTUNG) verteilt, OHNE GEWÄHRLEISTUNG ODER BEDINGUNGEN JEGLICHER ART, weder ausdrücklich noch stillschweigend. Weitere Einzelheiten zur Lizenz finden Sie in der Lizenz.

    Export Control

    Diese Distribution enthält kryptografische Software. Das Land, in dem Sie sich derzeit befinden, kann Beschränkungen für die Einfuhr, den Besitz, die Verwendung und/oder die Wiederausfuhr von Verschlüsselungssoftware in ein anderes Land haben. BEVOR Sie Verschlüsselungssoftware verwenden, überprüfen Sie bitte die Gesetze, Vorschriften und Richtlinien Ihres Landes bezüglich der Einfuhr, des Besitzes, der Verwendung und der Wiederausfuhr von Verschlüsselungssoftware, um festzustellen, ob dies erlaubt ist. Weitere Informationen finden Sie unter https://www.wassenaar.org/.

    Das U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), hat diese Software als Export Commodity Control Number (ECCN) 5D002.C.1 eingestuft, zu der auch Informationssicherheitssoftware gehört, die kryptografische Funktionen mit asymmetrischen Algorithmen verwendet oder ausführt. Die Form und Art dieser Apache Software Foundation Distribution macht sie für den Export unter der Ausnahmeregelung License Exception ENC Technology Software Unrestricted (TSU) (siehe BIS Export Administration Regulations, Abschnitt 740.13) sowohl für Objektcode als auch für Quellcode qualifiziert.

    Im Folgenden finden Sie weitere Details zur enthaltenen kryptografischen Software:

    Apache NiFi verwendet BouncyCastle, JCraft Inc. und die integrierten Java-Kryptografiebibliotheken für SSL, SSH und den Schutz sensibler Konfigurationsparameter. Siehe

    • https://bouncycastle.org/about.html
    • http://www.jcraft.com/c-info.html
    • https://www.oracle.com/corporate/security-practices/corporate/governance/global-trade-compliance.html

    für weitere Details zu den Kryptografiefunktionen dieser Bibliotheken.

    Tool herunterladen