Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
asf__nifi_CVE-2023-34468_1-21-00 — Exploit pour Apache NiFi CVE-2023-34468, ciblant une vulnérabilité dans les versions 1.21.0 et antérieures pour démontrer l'accès aux données et la compromission du système. | Kitploit
Outils/GitHubGitHub/shoucheng3/asf__nifi_cve-2023-34468_1-21-00
Analyse des VulnérabilitésExploitationExfiltration de DonnéesSécurité WebTests d'IntrusionSécurité Cloud
GitHubshoucheng3/asf__nifi_cve-2023-34468_1-21-00

asf__nifi_CVE-2023-34468_1-21-00

Exploit pour Apache NiFi CVE-2023-34468, ciblant une vulnérabilité dans les versions 1.21.0 et antérieures pour démontrer l'accès aux données et la compromission du système.

Voir le dépôt
4il y a 1 anPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Apache NiFi

ci-workflow system-tests Docker pulls Version Slack

Apache NiFi est un système facile à utiliser, puissant et fiable pour traiter et distribuer des données.

Table des matières

  • Fonctionnalités
  • Prérequis
  • Pour commencer
  • Sous-projet MiNiFi
  • Sous-projet Registry
  • Obtenir de l'aide
  • Documentation
  • Licence
  • Contrôle des exportations
  • Fonctionnalités

    Apache NiFi a été conçu pour les flux de données. Il prend en charge des graphes orientés hautement configurables de routage, de transformation et de logique de médiation système. Parmi ses principales fonctionnalités :

    • Interface utilisateur web
      • Expérience fluide pour la conception, le contrôle et la surveillance
      • Expérience utilisateur multi-tenant
    • Hautement configurable
      • Tolérant aux pertes ou livraison garantie
      • Faible latence ou haut débit
      • Priorisation dynamique
      • Les flux peuvent être modifiés en cours d'exécution
      • Contre-pression
      • Évolue pour exploiter toute la capacité de la machine
      • Évolue horizontalement avec un modèle de clustering sans leader
    • Provenance des données
      • Suivez le flux de données du début à la fin
    • Conçu pour l'extension
      • Créez vos propres processeurs et plus encore
      • Permet un développement rapide et des tests efficaces
    • Sécurisé
      • SSL, SSH, HTTPS, contenu chiffré, etc.
      • Authentification/autorisation basée sur les rôles, fine et enfichable
      • Plusieurs équipes peuvent gérer et partager des parties spécifiques du flux

    Recommandations minimales

    • JDK 11.0.16
    • Apache Maven 3.8.6

    Prérequis minimaux

    • JDK 8 Update 251
    • Apache Maven 3.6.0

    Pour commencer

    Consultez le guide de démarrage rapide pour le développement. Il contient des informations pour obtenir une copie locale du code source, donne des conseils sur le suivi des problèmes et met en garde contre certains problèmes courants dans les environnements de développement.

    Pour un guide plus complet sur le développement et des informations sur la contribution au projet, consultez le Guide du développeur NiFi.

    Construction

    Exécutez mvn clean install ou pour une construction parallèle, exécutez mvn -T 2.0C clean install.

    La construction parallèle devrait prendre environ quinze minutes sur un matériel moderne.

    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] ------------------------------------------------------------------------
    

    Exécutez mvn clean install -DskipTests pour ignorer l'exécution des tests unitaires.

    Déploiement

    Changez de répertoire vers nifi-assembly. Le répertoire target contient les archives binaires.

    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
    

    Copiez le fichier nifi-VERSION-bin.tar.gz ou nifi-VERSION-bin.zip dans un répertoire de déploiement distinct. L'extraction de la distribution créera un nouveau répertoire nommé d'après la version.

    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
    

    Démarrage

    Placez-vous dans le répertoire de déploiement et exécutez la commande suivante pour démarrer NiFi.

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

    L'exécution de bin/nifi.sh start démarre NiFi en arrière-plan et quitte. Utilisez --wait-for-init avec un délai d'attente optionnel en secondes pour attendre un démarrage complet avant de quitter.

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

    Authentification

    La configuration par défaut génère un nom d'utilisateur et un mot de passe aléatoires au démarrage. NiFi écrit les informations d'identification générées dans le journal d'application situé dans logs/nifi-app.log sous le répertoire d'installation de NiFi.

    La commande suivante peut être utilisée pour trouver les informations d'identification générées sur les systèmes d'exploitation avec grep installé :

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

    NiFi enregistre les informations d'identification générées comme suit :

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

    Le USERNAME sera un UUID aléatoire composé de 36 caractères. Le PASSWORD sera une chaîne aléatoire composée de 32 caractères. Les informations d'identification générées seront stockées dans conf/login-identity-providers.xml, le mot de passe étant stocké avec un hachage bcrypt. Notez ces informations d'identification dans un endroit sûr pour accéder à NiFi.

    Le nom d'utilisateur et le mot de passe aléatoires peuvent être remplacés par des informations d'identification personnalisées à l'aide de la commande suivante :

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

    Exécution

    Ouvrez le lien suivant dans un navigateur web pour accéder à NiFi : https://localhost:8443/nifi

    Le navigateur web affichera un message d'avertissement indiquant un risque de sécurité potentiel dû au certificat auto-signé que NiFi a généré lors de l'initialisation. Accepter le risque de sécurité potentiel et continuer à charger l'interface est une option pour les installations de développement initiales. Les déploiements de production doivent provisionner un certificat auprès d'une autorité de certification de confiance et mettre à jour la configuration du keystore et du truststore de NiFi.

    L'accès à NiFi après avoir accepté le certificat auto-signé affichera l'écran de connexion. Écran de connexion NiFi

    À l'aide des informations d'identification générées, saisissez le nom d'utilisateur généré dans le champ Utilisateur et le mot de passe généré dans le champ Mot de passe, puis sélectionnez CONNEXION pour accéder au système. Écran d'authentification du flux NiFi

    Configuration

    Le Guide utilisateur NiFi décrit comment créer un flux de données.

    Arrêt

    Exécutez la commande suivante pour arrêter NiFi :

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

    Sous-projet MiNiFi

    MiNiFi est un projet enfant d'Apache NiFi. Il s'agit d'une approche complémentaire de collecte de données qui complète les principes fondamentaux de NiFi dans la gestion des flux de données, en se concentrant sur la collecte des données à la source de leur création.

    Les objectifs spécifiques de MiNiFi comprennent :

    • une empreinte petite et légère
    • gestion centralisée des agents
    • génération de la provenance des données
    • intégration avec NiFi pour la gestion ultérieure des flux de données et la chaîne de responsabilité complète des informations

    Les perspectives du rôle de MiNiFi doivent être envisagées du point de vue de l'agent agissant immédiatement sur, ou directement adjacent, aux capteurs, systèmes ou serveurs source.

    Pour exécuter :

    • Placez-vous dans le répertoire 'minifi-assembly'. Dans le répertoire target, il devrait y avoir une construction de minifi.

      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
      
    • Pour tester le développement en cours, vous pouvez utiliser la construction déjà décompressée présente dans le répertoire nommé "minifi-version-bin", où version est la version actuelle du projet. Pour déployer à un autre endroit, utilisez soit l'archive tarball soit le fichier zip et décompressez-les où vous voulez. La distribution se trouvera dans un répertoire parent commun nommé d'après la version.

      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
      

    Pour exécuter MiNiFi :

    • Placez-vous dans le répertoire où vous avez installé MiNiFi et exécutez-le.

      root@kitploit:~
        $ cd ~/example-minifi-deploy/minifi-*
        $ ./bin/minifi.sh start
      
    • Consultez les journaux situés dans le dossier logs $ tail -F ~/example-minifi-deploy/logs/minifi-app.log

    • Pour obtenir de l'aide sur la création de votre premier flux de données et l'envoi de données à une instance NiFi, consultez le Guide d'administration système situé dans le dossier docs ou utilisez le minifi-toolkit, qui aide à adapter les modèles NiFi au format de fichier de configuration YAML de MiNiFi.

    • Si vous testez un développement en cours, vous voudrez probablement arrêter votre instance.

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

    Construction Docker

    Pour construire :

    • Effectuez une construction complète de NiFi (voir les instructions ci-dessus). Ensuite, à partir du sous-répertoire minifi/, exécutez mvn -P docker clean install. Cela exécutera la construction complète, créera une image Docker basée sur celle-ci et exécutera des tests d'intégration docker-compose. Une fois terminée avec succès, vous devriez avoir une image apacheminifi:${minifi.version} qui peut être démarrée avec la commande suivante (en remplaçant ${minifi.version} par la version maven actuelle de votre branche) :
    root@kitploit:~
    docker run -d -v YOUR_CONFIG.YML:/opt/minifi/minifi-${minifi.version}/conf/config.yml apacheminifi:${minifi.version}
    

    Sous-projet Registry

    Registry — un sous-projet d'Apache NiFi — est une application complémentaire qui fournit un emplacement central pour le stockage et la gestion des ressources partagées sur une ou plusieurs instances de NiFi et/ou MiNiFi.

    Démarrer Registry

    1. Construisez NiFi (voir Pour commencer avec NiFi )

    ou

    Construisez uniquement le sous-projet Registry :

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

    Si vous souhaitez activer les vérifications de style et de licence, spécifiez le profil contrib-check :

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

    2) Démarrez Registry

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

    Notez que le serveur web de l'application peut prendre un certain temps à charger avant d'être accessible.

    1. Accéder à l'interface utilisateur web de l'application

    Avec les paramètres par défaut, l'interface utilisateur de l'application sera disponible à l'adresse http://localhost:18080/nifi-registry

    1. Accéder à l'API REST de l'application

    Si vous souhaitez tester l'API REST de l'application, vous pouvez y accéder directement. Avec les paramètres par défaut, l'URL de base de l'API REST sera à http://localhost:18080/nifi-registry-api. Une interface utilisateur pour tester l'API REST sera disponible à l'adresse http://localhost:18080/nifi-registry-api/swagger/ui.html

    1. Accéder aux journaux de l'application

    Les journaux seront disponibles dans logs/nifi-registry-app.log

    Tests de base de données

    Afin de garantir que NiFi Registry fonctionne correctement avec différentes bases de données relationnelles, les tests d'intégration existants peuvent être exécutés sur différentes bases de données en utilisant le framework Testcontainers.

    Les profils Spring sont utilisés pour contrôler la fabrique DataSource qui sera mise à disposition du contexte de l'application Spring. Des fabriques DataSource sont fournies qui utilisent le framework Testcontainers pour démarrer un conteneur Docker pour une base de données donnée et créer une DataSource correspondante. Si aucun profil n'est spécifié, une DataSource H2 sera utilisée par défaut et aucun conteneur Docker n'est requis.

    En supposant que Docker soit en cours d'exécution sur le système où la construction est effectuée, les commandes suivantes peuvent être exécutées :

    Base de données cibleCommande de construction
    Toutes les supportsmvn verify -Ptest-all-dbs
    H2 (par défaut)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

    Pour une liste complète des fabriques DataSource disponibles, consultez le module nifi-registry-test.

    Obtenir de l'aide

    Si vous avez des questions, vous pouvez contacter notre liste de diffusion : [email protected] (archive). Pour des discussions plus interactives, les membres de la communauté se trouvent souvent aux endroits suivants :

    • Espace de travail Slack Apache NiFi : https://apachenifi.slack.com/

      Les nouveaux utilisateurs peuvent rejoindre l'espace de travail en utilisant le lien d'invitation suivant.

    Pour soumettre une demande de fonctionnalité ou un rapport de bogue, veuillez créer un Jira à l'adresse https://issues.apache.org/jira/projects/NIFI/issues. S'il s'agit d'un rapport de vulnérabilité de sécurité, veuillez envoyer un courriel à [email protected] directement et examinez d'abord les processus de Divulgation des vulnérabilités de sécurité Apache NiFi et Sécurité de la Fondation Apache Software.

    Documentation

    Consultez https://nifi.apache.org/ pour la dernière documentation NiFi.

    Consultez https://nifi.apache.org/minifi et https://cwiki.apache.org/confluence/display/MINIFI pour la dernière documentation spécifique à MiNiFi.

    Consultez https://nifi.apache.org/registry pour la dernière documentation spécifique à Registry.

    Licence

    Sauf indication contraire, ce logiciel est sous licence Apache License, Version 2.0

    Sous licence Apache, Version 2.0 (la "Licence") ; vous ne pouvez pas utiliser ce fichier sauf en conformité avec la Licence. Vous pouvez obtenir une copie de la Licence à l'adresse

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

    Sauf si la loi applicable ne l'exige ou si un accord écrit ne le prévoit, le logiciel distribué sous la Licence l'est "EN L'ÉTAT", SANS GARANTIES NI CONDITIONS D'AUCUNE SORTE, expresses ou implicites. Consultez la Licence pour connaître les autorisations et limitations spécifiques applicables.

    Contrôle des exportations

    Cette distribution comprend un logiciel cryptographique. Le pays dans lequel vous résidez actuellement peut imposer des restrictions sur l'importation, la possession, l'utilisation et/ou la réexportation vers un autre pays de logiciels de chiffrement. AVANT d'utiliser un logiciel de chiffrement, veuillez vérifier les lois, réglementations et politiques de votre pays concernant l'importation, la possession, l'utilisation et la réexportation de logiciels de chiffrement, pour voir si cela est autorisé. Consultez https://www.wassenaar.org/ pour plus d'informations.

    Le Département du Commerce des États-Unis, Bureau de l'Industrie et de la Sécurité (BIS), a classé ce logiciel comme numéro de contrôle des marchandises d'exportation (ECCN) 5D002.C.1, qui inclut les logiciels de sécurité de l'information utilisant ou exécutant des fonctions cryptographiques avec des algorithmes asymétriques. La forme et la manière de cette distribution de la Fondation Apache Software la rendent éligible à l'exportation dans le cadre de l'exception de licence ENC Technology Software Unrestricted (TSU) (voir le Règlement sur l'administration des exportations du BIS, Section 740.13) pour le code objet et le code source.

    Ce qui suit fournit plus de détails sur le logiciel cryptographique inclus :

    Apache NiFi utilise BouncyCastle, JCraft Inc., et les bibliothèques cryptographiques intégrées de Java pour SSL, SSH et la protection des paramètres de configuration sensibles. Voir

    • 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

    pour plus de détails sur les fonctionnalités cryptographiques de chacune de ces bibliothèques.

    Télécharger l’outil