IREX - Tests de sécurité à réaliser sur la plateforme ACRA : Démarche de tests

Un test de sécurité n’a de valeur que s’il est autorisé, reproductible et documenté. Cet article décrit la démarche suivie pour tester la plateforme ACRA : les règles à respecter, les étapes, le périm

 · 4 min read

Démarche de tests de sécurité sur la plateforme ACRA


  1. Introduction

  2. Un test de sécurité n’a de valeur que s’il est autorisé, reproductible et documenté.
    Cet article décrit la démarche suivie pour tester la plateforme ACRA : les règles à respecter, les étapes, le périmètre et la manière de consigner les résultats.

    Il fait suite à l’article sur les référentiels, qui explique par rapport à quoi ACRA est évaluée.
    Il précède l’article sur les outils, puis les deux articles qui détaillent les tests eux-mêmes.

  3. Principes de la démarche

  4. Quatre principes encadrent tous les tests.

    Autorisation et périmètre. Aucun test ne commence sans accord écrit. Le périmètre et les règles d’engagement sont fixés avant le premier test.

    Environnement. Les tests sont réalisés en préproduction, après une sauvegarde, et sont non destructifs.

    Comptes de test. Un compte par profil utilisateur : profane, administrateur système, administrateur sécurité et administrateur réseau. Le risque principal d’ACRA est qu’un profil accède aux fonctions d’un autre.

    Traçabilité. Chaque test est relié à une exigence d’un référentiel, à une catégorie du NIST CSF 2.0 et à une preuve.

  5. Le cycle de test en quatre phases

  6. Le cycle suit les quatre phases du guide NIST SP 800-115 : planification, découverte, attaque et rapport.

    Cycle de test en quatre phases

    PhaseCe que l’on faitApplication à ACRARésultat
    1. PlanificationFixer les règles et les objectifs avant tout testRecenser les composants, définir le périmètre, créer les comptes de testFiche de cadrage validée
    2. DécouverteIdentifier ce qui peut être testéRelever les ports, les services, les interfaces et les configurationsListe des cibles et des interfaces exposées
    3. AttaqueVérifier si les faiblesses sont réellement exploitablesTester chaque exigence, puis enchaîner des scénariosConstats vérifiés, avec preuves
    4. RapportConsigner et recommanderSe fait tout au long des trois autres phasesRapports de vulnérabilités et de conformité

    Ce cycle n’est pas strictement linéaire.
    Si l’attaque révèle une nouvelle cible, on revient à la découverte.
    Le rapport, lui, s’écrit au fil des tests plutôt qu’à la fin.

  7. Cadrage et périmètre

    1. Recenser les composants

    2. ACRA repose sur un serveur d’applications sous Debian, qui héberge Nginx, Grafana, Prometheus, Zabbix, Thanos et SeaweedFS.
      Keycloak fonctionne comme fournisseur d’identité interne, en dehors de ce serveur. Jenkins, sur un serveur d’automatisation, déploie les composants.
      Chaque service est précédé de son propre Nginx interne.

    3. Identifier les interfaces

    4. Les utilisateurs accèdent à ACRA en HTTPS (port 4443) par le Nginx frontal.
      Celui-ci transmet les requêtes aux services en HTTP : Keycloak (8080), Grafana (8089), Prometheus (9090), Zabbix (8080), Thanos et SeaweedFS (8089).
      Chaque profil utilise une interface précise : le profane consulte Grafana, l’administrateur système configure Prometheus, l’administrateur réseau configure Zabbix et l’administrateur sécurité gère les règles et les alertes.

    5. Définir le périmètre

    6. Le périmètre indique ce qui est testé

      Périmètre des tests

      ÉlémentDécisionJustification
      Serveur d’applications, serveur d’automatisationDans le périmètreIls hébergent tous les composants
      Nginx (frontal et internes), Keycloak, Grafana, Prometheus, Zabbix, Thanos, SeaweedFSDans le périmètreComposants déployés
      Jenkins et son pipelineDans le périmètreDroits de déploiement sur les composants
      Flux HTTP entre composantsDans le périmètreLe chiffrement est à vérifier
      Quatre profils utilisateursDans le périmètreCloisonnement des rôles

  8. Points de vue et ordre d’exécution

    1. Points de vue de test

    2. Le guide NIST SP 800-115 distingue des points de vue de test : externe ou interne, ouvert ou discret.
      Le tableau suivant indique le choix proposé pour ACRA.

      Points de vue de test

      Point de vueSignificationChoix pour ACRA (à valider)
      ExterneTest depuis l’extérieur du périmètreOui : par le Nginx frontal, seul point d’entrée
      InterneTest depuis l’intérieur du réseauOui : entre composants, avec un compte de chaque profil
      OuvertLes équipes techniques sont informées du testOui : environnement de préproduction
      DiscretLes équipes ne sont pas informéesNon

    3. Ordre d’exécution

    4. L’ordre des tests va du plus bas niveau vers le plus haut : une faiblesse sur un serveur change la lecture de tous les tests applicatifs.

      Ordre d’exécution

      OrdreCe que l’on testePourquoi à ce moment
      1Serveurs Debian et serveur d’automatisationLe socle : une faiblesse ici touche tout le reste
      2Nginx frontal et flux entre composantsPremier contact avec l’extérieur, chiffrement
      3KeycloakTous les accès dépendent de l’authentification
      4Grafana, interfaces de Prometheus et de ZabbixCloisonnement des profils, injections
      5Collecte de Prometheus et de ZabbixConfiguration et exposition réseau
      6Thanos et SeaweedFSAccès et intégrité de l’historique
      7Jenkins et pipelineSecrets, droits, modification du pipeline
      8Scénarios combinésIls enchaînent les faiblesses trouvées avant

  9. Consigner un test

  10. Chaque test est consigné avec six champs : la référence dans le référentiel, le contrôle, la description, les vérifications à effectuer, le moyen de vérification et la preuve.
    Le résultat est l’un des quatre suivants : conforme, non conforme, partiellement conforme ou non applicable.

    Exemple suivi de bout en bout : les flux entre composants.
    Planification. Les flux HTTP du Nginx frontal vers les services sont dans le périmètre. Le test retenu est l’exigence V12.3.3 de l’ASVS 5.0 (niveau 2) : le chiffrement de transport entre services internes.
    Découverte. On relève les ports en écoute sur le serveur d’applications, pour confirmer sur quel port répond chaque service.
    Attaque. On capture, en préproduction, le trafic entre le Nginx frontal et un service, puis on regarde si le contenu est lisible.
    Rapport. On consigne le résultat, la capture comme preuve et la correction recommandée : activer TLS entre les composants, selon le guide ANSSI.

    Le résultat n’est pas connu à l’avance : le schéma de déploiement montre ces flux en HTTP, et le test doit le confirmer ou l’infirmer.

Annexe :

Sources consultées du 03-10-2026 au 13-10-2026 : NIST SP 800-115 ; OWASP ASVS 5.0.0 (fichier officiel) ; NIST CSF 2.0 ; guide ANSSI Recommandations de sécurité relatives à TLS (v1.2).


No comments yet

No comments yet. Start a new discussion.

Add Comment