Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
spring-cloud__spring-cloud-config_CVE-2020-5410_2-1-8-RELEASE — Serveur de configuration centralisé pour systèmes distribués avec API HTTP, stockage basé sur Git, chiffrement/déchiffrement de propriétés, et intégration avec Vault, JDBC et systèmes de fichiers locaux. | Kitploit
Outils/GitHubGitHub/shoucheng3/spring-cloud__spring-cloud-config_cve-2020-5410_2-1-8-release
Authentification et AutorisationOutils de Chiffrement/DéchiffrementAudit de ConfigurationSécurité CloudDevSecOpsSécurité des API
GitHubshoucheng3/spring-cloud__spring-cloud-config_cve-2020-5410_2-1-8-release

spring-cloud__spring-cloud-config_CVE-2020-5410_2-1-8-RELEASE

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 →

Serveur de configuration centralisé pour systèmes distribués avec API HTTP, stockage basé sur Git, chiffrement/déchiffrement de propriétés, et intégration avec Vault, JDBC et systèmes de fichiers locaux.

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

// // NE PAS MODIFIER CE FICHIER. IL A ÉTÉ GÉNÉRÉ. // Les modifications manuelles de ce fichier seront perdues lors de sa régénération. // Modifiez plutôt les fichiers dans le répertoire src/main/asciidoc/. //

image::https://circleci.com/gh/spring-cloud/spring-cloud-config/tree/master.svg?style=svg["CircleCI", link="https://circleci.com/gh/spring-cloud/spring-cloud-config/tree/master"] image::https://codecov.io/gh/spring-cloud/spring-cloud-config/branch/master/graph/badge.svg["Codecov", link="https://codecov.io/gh/spring-cloud/spring-cloud-config/branch/master"] image::https://api.codacy.com/project/badge/Grade/f064024a072c477e97dca6ed5a70fccd?branch=master["Qualité de code Codacy", link="https://www.codacy.com/app/Spring-Cloud/spring-cloud-config?branch=master&utm_source=github.com&utm_medium=referral&utm_content=spring-cloud/spring-cloud-config&utm_campaign=Badge_Grade"]

Spring Cloud Config fournit un support côté serveur et côté client pour une configuration externalisée dans un système distribué. Avec le serveur de configuration, vous disposez d'un emplacement central pour gérer les propriétés externes des applications dans tous les environnements. Les concepts, tant côté client que côté serveur, correspondent parfaitement aux abstractions Environment et PropertySource de Spring, ils s'intègrent donc très bien avec les applications Spring, mais peuvent être utilisés avec n'importe quelle application fonctionnant dans n'importe quel langage. Lorsqu'une application parcourt le pipeline de déploiement du développement vers les tests puis la production, vous pouvez gérer la configuration entre ces environnements et être certain que les applications disposent de tout ce dont elles ont besoin pour fonctionner lors de la migration. L'implémentation par défaut du backend de stockage du serveur utilise git, ce qui facilite la prise en charge de versions étiquetées des environnements de configuration et permet également d'être accessible à un large éventail d'outils pour gérer le contenu. Il est facile d'ajouter des implémentations alternatives et de les brancher avec la configuration Spring.

== Fonctionnalités

=== Serveur de configuration Spring Cloud Config

Le serveur de configuration Spring Cloud Config offre les avantages suivants :

  • API basée sur les ressources HTTP pour la configuration externe (paires nom-valeur ou contenu YAML équivalent)
  • Chiffrement et déchiffrement des valeurs de propriété (symétrique ou asymétrique)
  • Intégrable facilement dans une application Spring Boot en utilisant @EnableConfigServer

=== Client Spring Cloud Config Client

Spécifiquement pour les applications Spring, le client Spring Cloud Config Client vous permet de :

  • Se lier au serveur de configuration et initialiser l'Environment Spring avec des sources de propriétés distantes.
  • Chiffrer et déchiffrer les valeurs de propriété (symétrique ou asymétrique).
  • @RefreshScope pour les @Beans Spring qui souhaitent être réinitialisés lors d'un changement de configuration.
  • Utiliser les endpoints de gestion : ** /env pour mettre à jour l'Environment et relier les @ConfigurationProperties et les niveaux de log. ** /refresh pour rafraîchir les beans @RefreshScope. ** /restart pour redémarrer le contexte Spring (désactivé par défaut). ** /pause et /resume pour appeler les méthodes Lifecycle (stop() et start() sur l'ApplicationContext).
  • Contexte d'application bootstrap : un contexte parent pour l'application principale qui peut être entraîné à faire n'importe quoi (par défaut, il se lie au serveur de configuration et déchiffre les valeurs de propriété).

== Démarrage rapide

Ce démarrage rapide vous guide pour utiliser à la fois le serveur et le client de Spring Cloud Config Server.

Tout d'abord, démarrez le serveur, comme suit :


$ cd spring-cloud-config-server $ ../mvnw spring-boot:run

Le serveur est une application Spring Boot, vous pouvez donc l'exécuter depuis votre IDE si vous le préférez (la classe principale est ConfigServerApplication).

Ensuite, essayez un client, comme suit :


$ curl localhost:8888/foo/development {"name":"foo","label":"master","propertySources":[ {"name":"https://github.com/scratches/config-repo/foo-development.properties","source":{"bar":"spam"}}, {"name":"https://github.com/scratches/config-repo/foo.properties","source":{"foo":"bar"}} ]}

La stratégie par défaut pour localiser les sources de propriétés consiste à cloner un dépôt git (à spring.cloud.config.server.git.uri) et à l'utiliser pour initialiser une mini SpringApplication. L'Environment de la mini-application est utilisée pour énumérer les sources de propriétés et les publier sur un endpoint JSON.

Le service HTTP dispose de ressources sous la forme suivante :


/{application}/{profile}[/{label}] /{application}-{profile}.yml /{label}/{application}-{profile}.yml /{application}-{profile}.properties /{label}/{application}-{profile}.properties

où application est injecté comme spring.config.name dans la SpringApplication (ce qui est normalement application dans une application Spring Boot classique), profile est un profil actif (ou une liste de propriétés séparées par des virgules), et label est une étiquette git facultative (par défaut master).

Le serveur de configuration Spring Cloud Config extrait la configuration des clients distants à partir de diverses sources. L'exemple suivant obtient la configuration à partir d'un dépôt git (qui doit être fourni), comme illustré dans l'exemple suivant :

[source,yaml]

spring: cloud: config: server: git: uri: https://github.com/spring-cloud-samples/config-repo

D'autres sources sont toute base de données compatible JDBC, Subversion, Hashicorp Vault, Credhub et les systèmes de fichiers locaux.

=== Utilisation côté client

Pour utiliser ces fonctionnalités dans une application, vous pouvez la construire comme une application Spring Boot qui dépend de spring-cloud-config-client (pour un exemple, voir les cas de test pour le config-client ou l'application exemple). La manière la plus pratique d'ajouter la dépendance est avec un starter Spring Boot org.springframework.cloud:spring-cloud-starter-config. Il existe également un parent pom et BOM (spring-cloud-starter-parent) pour les utilisateurs de Maven et un fichier de propriétés de gestion de version Spring IO pour les utilisateurs de Gradle et Spring CLI. L'exemple suivant montre une configuration Maven typique :

[source,xml,indent=0] .pom.xml

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>{spring-boot-docs-version}</version>
    <relativePath /> <!-- lookup parent from repository -->
</parent>

<dependencyManagement>
	<dependencies>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-dependencies</artifactId>
			<version>{spring-cloud-version}</version>
			<type>pom</type>
			<scope>import</scope>
		</dependency>
	</dependencies>
</dependencyManagement>

<dependencies>
	<dependency>
		<groupId>org.springframework.cloud</groupId>
		<artifactId>spring-cloud-starter-config</artifactId>
	</dependency>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-test</artifactId>
		<scope>test</scope>
	</dependency>
</dependencies>

<build>
	<plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
	</plugins>
</build>

<!-- repositories also needed for snapshots and milestones -->

Vous pouvez maintenant créer une application Spring Boot standard, comme le serveur HTTP suivant :


@SpringBootApplication @RestController public class Application {

Télécharger l’outil