# SPDX-License-Identifier: CC-BY-4.0
#
# profiles/broadcom_vcenter_server/fiche.yaml
# Fiche NeuralWall — Broadcom vCenter Server 9.0 (VCSA)
#
# Variante NOMMÉE de profiles/enterprise_virtualization_manager/fiche.yaml (ADR-0005).
# Les marques, produits et services Broadcom/VMware sont désormais autorisés dans la
# prose (title, description, rationale, threat_model) — invariant 3 amendé par ADR-0005.
# Les identifiants machine (app_id, enums, zones) restent snake_case ⊆ taxonomie.
# Contenu dérivé de la fiche agnostique vérifiée : 26 ports, 19 règles, références
# identiques. Seule la prose FR+EN est réécrite pour nommer les services réels.

# ─────────────────────────────────────────────────
# FRONTMATTER
# ─────────────────────────────────────────────────

schema_version: "1.0.0"

id: broadcom_vcenter_server

version: "1.0.0"

# community : contribution non encore revue par un mainteneur (ADR-0002 §3).
# Le trust_tier 'verified' est atteignable via publication par un publisher Broadcom
# vérifié (ADR-0005 §2) — le serveur le dérive à la publication, jamais auto-déclaré.
trust_tier: community

title:
  fr: "vCenter Server 9.0 (Broadcom/VMware vSphere)"
  en: "vCenter Server 9.0 (Broadcom/VMware vSphere)"

description:
  fr: |
    Cette fiche couvre les flux réseau de l'appliance vCenter Server Appliance (VCSA)
    de Broadcom, déployée en gestion centralisée d'un parc d'hôtes ESXi dans une
    infrastructure VMware vSphere. La VCSA expose le vSphere Client (HTTPS 443) et
    l'API REST/SDK aux administrateurs, ainsi que l'interface VAMI (vCenter Appliance
    Management Interface, port 5480) pour l'administration système de l'appliance.
    Elle pilote les hôtes ESXi via un canal de gestion bidirectionnel vpxd↔vpxa
    (TCP/UDP 902, TCP 443). Des services conditionnels couvrent : le provisioning
    réseau Auto Deploy des hôtes ESXi (6501/6502, TFTP/iPXE 69), la gestion du cycle
    de vie vSphere Lifecycle Manager (vLCM, ports 9087/9084/8084/8083), vSphere
    Replication (8043), l'intégration Active Directory (Kerberos 88, LDAP 389/636,
    Kerberos changement de mot de passe 464), la supervision SNMP et la collecte de
    logs syslog. Un flux sortant vers dl.broadcom.com permet le téléchargement
    sécurisé des mises à jour (dépôt authentifié, token compte support). Le protocole
    de gestion ESXi en clair hérité est bloqué en durcissement.
  en: |
    This profile covers the network flows of the vCenter Server Appliance (VCSA) from
    Broadcom, deployed to centrally manage a pool of ESXi hosts in a VMware vSphere
    infrastructure. The VCSA exposes the vSphere Client (HTTPS 443) and REST API/SDK
    to administrators, as well as the VAMI (vCenter Appliance Management Interface,
    port 5480) for appliance system administration. It drives ESXi hosts via a
    bidirectional management channel vpxd↔vpxa (TCP/UDP 902, TCP 443). Conditional
    services cover: ESXi host network provisioning via Auto Deploy (6501/6502,
    TFTP/iPXE 69), vSphere Lifecycle Manager (vLCM) host lifecycle management
    (ports 9087/9084/8084/8083), vSphere Replication (8043), Active Directory
    integration (Kerberos 88, LDAP 389/636, Kerberos password change 464), SNMP
    monitoring, and syslog log collection. An outbound flow to dl.broadcom.com enables
    secure update downloads (authenticated repository, support account token). The
    legacy clear-text ESXi management protocol is blocked as a hardening measure.

authors:
  - name: "NeuralWall Rules Team"
    email: "rules@neuralwall.io"
    org: "NeuralWall"

# publisher : attribution éditeur (ADR-0005 §2).
# verified est dérivé par le serveur à la publication par un compte publisher Broadcom
# validé par un admin — jamais auto-déclaré dans le YAML source.
publisher:
  name: "Broadcom"
  verified: false

# references : provenance de la fiche.
# Note ADR-0005 : les marques sont désormais autorisées dans la prose (title, description,
# rationale, threat_model) — references[] reste recommandé pour la provenance/les sources
# mais n'est plus le seul endroit admettant une marque.
references:
  - vendor: "Broadcom"
    product: "vCenter Server 9.0"
    title: "Required Ports for vCenter Server"
    url: "https://ports.broadcom.com"
    retrieved: "2026-06-18"
    # endpoints : domaines de mise à jour documentés par Broadcom (provenance vérifiable).
    # dl.broadcom.com est le dépôt actif depuis avril 2025 (token d'authentification
    # requis par compte support, exclusion SSL/DPI inspection recommandée — KB 431697).
    # Les anciens domaines VMware (depot.vmware.com, hostupdate.vmware.com,
    # vapp-updates.vmware.com) sont retirés depuis le 23 avril 2025 (HTTP 403) —
    # ne plus les autoriser dans les allow-lists de déploiement.
    endpoints:
      - "dl.broadcom.com"
      - "vcsa.vmware.com"
  - vendor: "Broadcom"
    product: "vCenter Server"
    title: "KB 431697 — Configuring SSL inspection exclusion for update repository"
    url: "https://knowledge.broadcom.com/external/article?legacyId=431697"
    retrieved: "2026-06-18"
  - vendor: "Broadcom"
    product: "vCenter Server"
    title: "KB 390098 — Migration des dépôts de mises à jour (depot/hostupdate/vapp-updates.vmware.com retirés)"
    url: "https://knowledge.broadcom.com/external/article?legacyId=390098"
    retrieved: "2026-06-18"
  - vendor: "Broadcom"
    product: "vCenter Server"
    title: "KB 320264 — Ports utilisés par vSphere Lifecycle Manager"
    url: "https://knowledge.broadcom.com/external/article?legacyId=320264"
    retrieved: "2026-06-18"
  - vendor: "Broadcom"
    product: "vCenter Server"
    title: "KB 326184 — Ports requis vCenter Server (toutes versions)"
    url: "https://knowledge.broadcom.com/external/article?legacyId=326184"
    retrieved: "2026-06-18"
  - vendor: "Broadcom"
    product: "vCenter Server"
    title: "KB 313945 — Configuration NTP sur l'appliance de gestion"
    url: "https://knowledge.broadcom.com/external/article?legacyId=313945"
    retrieved: "2026-06-18"

# ─────────────────────────────────────────────────
# THREAT CONTEXT — Champs AUTEURÉS (invariant 5, ADR-0002 §2)
# ─────────────────────────────────────────────────

mitre_attack:
  # T1190 : le vSphere Client/API (443) et la VAMI (5480) sont exposés aux administrateurs ;
  # une CVE applicative sur vCenter Server permet un accès initial non authentifié.
  - technique_id: "T1190"
    name: "Exploit Public-Facing Application"
    tactic: "initial-access"

  # T1210 : depuis la VCSA compromise, pivot vers les hôtes ESXi via le canal
  # vpxd↔vpxa (902/443) ; l'attaquant peut déployer des charges sur toutes les VM.
  - technique_id: "T1210"
    name: "Exploitation of Remote Services"
    tactic: "lateral-movement"

  # T1195.002 : le canal de téléchargement des mises à jour (dl.broadcom.com) est
  # un vecteur de chaîne d'approvisionnement (paquet malveillant injecté ou substitué).
  - technique_id: "T1195.002"
    name: "Compromise Software Supply Chain"
    tactic: "initial-access"

  # T1078 : utilisation d'identifiants valides (comptes vCenter/SSO) pour accéder
  # au vSphere Client ou à la VAMI sans exploit applicatif.
  - technique_id: "T1078"
    name: "Valid Accounts"
    tactic: "defense-evasion"

  # T1133 : accès SSH activé sur la VCSA (désactivé par défaut dans vSphere 9.0),
  # vecteur d'accès initial ou de persistance si non désactivé après maintenance.
  - technique_id: "T1133"
    name: "External Remote Services"
    tactic: "initial-access"

threat_model:
  summary:
    fr: |
      vCenter Server (VCSA) est le plan de contrôle unique de l'infrastructure VMware
      vSphere : sa compromission donne accès aux charges de travail de toutes les VM
      hébergées sur les hôtes ESXi gérés. Trois surfaces d'attaque dominent.
      (1) Le vSphere Client/API REST (T1190, T1078) : CVE applicatives sur vCenter
      (nombreuses CVE critiques historiques) ou vol d'identifiants SSO permettent un
      accès initial, suivi d'un pivot vers les hôtes ESXi via vpxd↔vpxa (T1210).
      (2) Le canal de mises à jour dl.broadcom.com (T1195.002) : un paquet malveillant
      téléchargé par vLCM peut compromettre la VCSA et tous les hôtes ESXi qu'elle
      pilote — vecteur supply chain à très large rayon d'impact.
      (3) Le SSH de maintenance VCSA (T1133) : désactivé par défaut dans vSphere 9.0,
      il expose un shell root si ré-activé et non désactivé après intervention.
      La segmentation de zone (management), l'inspection TLS entrante et sortante, et
      la restriction des groupes d'identité (SSO vCenter) réduisent ces surfaces.
    en: |
      vCenter Server (VCSA) is the single control plane of the VMware vSphere
      infrastructure: its compromise grants access to workloads on all VM guests hosted
      on managed ESXi hosts. Three attack surfaces dominate. (1) The vSphere Client/REST
      API (T1190, T1078): application CVEs on vCenter (many critical CVEs historically)
      or stolen SSO credentials provide initial access, followed by a pivot to ESXi hosts
      via vpxd↔vpxa (T1210). (2) The dl.broadcom.com update channel (T1195.002): a
      malicious package downloaded by vLCM can compromise both the VCSA and all ESXi
      hosts it drives — a supply-chain vector with a very wide blast radius.
      (3) The VCSA maintenance SSH (T1133): disabled by default in vSphere 9.0, it
      exposes a root shell if re-enabled and not disabled after a maintenance window.
      Zone segmentation (management), inbound/outbound TLS inspection, and identity
      group restrictions (vCenter SSO) reduce these surfaces.
  attacker_goal:
    fr: |
      Compromettre la VCSA (vCenter Server) pour pivoter vers les hôtes ESXi et
      leurs charges de travail, ou établir une persistance à l'échelle du parc
      vSphere (déploiement d'implants sur les VM, extraction de secrets).
    en: |
      Compromise the VCSA (vCenter Server) to pivot to ESXi hosts and their
      workloads, or establish fleet-wide vSphere persistence (VM implant deployment,
      secrets extraction).
  key_controls:
    - management_zone_segmentation
    - ssl_inbound_inspection
    - ssl_forward_proxy
    - identity_user_group_restriction
    - block_cleartext_management
    - update_sandboxing
    - ssh_restricted_access

# ─────────────────────────────────────────────────
# RULES
#
# RÈGLES OBLIGATOIRES :
#   1. Entrant  : vSphere Client + API REST (443) — administrateurs vers VCSA
#   2. Entrant  : VAMI — interface d'administration de la VCSA (5480)
#   3. Entrant  : HTTP → redirect HTTPS (80)
#   4. Interne  : VCSA <-> hôtes ESXi — canal vpxd↔vpxa (902, 443)
#   4b. Interne : heartbeat UDP vpxd↔vpxa (902 UDP)
#   5. Interne  : dépendance DNS (53 UDP+TCP)
#
# RÈGLES CONDITIONNELLES :
#   6. Interne  : synchronisation NTP (123 UDP) — si NTP direct VCSA activé
#   7. Entrant  : SSH VCSA (22 TCP) — si SSH activé (désactivé par défaut vSphere 9.0)
#   8. Entrant  : Auto Deploy — provisioning réseau ESXi (6501, 6502 TCP)
#   9. Entrant  : Auto Deploy — boot PXE/iPXE legacy — TFTP (69 UDP)
#  10. Interne  : vLCM — service de cycle de vie HTTPS (9087)
#  11. Interne  : vLCM — ports legacy (9084, 8083)
#  12. Interne  : vSphere Replication — management SOAP (8043)
#  13. Interne  : SNMP polling entrant (161 UDP)
#  14. Interne  : SNMP traps sortants (162 UDP)
#  15. Interne  : syslog non chiffré (514) — vCenter 9.x uniquement, déprécié 9.1+
#  16. Interne  : syslog TLS (1514) — recommandé, obligatoire dès vCenter 9.1
#
# SORTANT :
#  17. Sortant  : dl.broadcom.com — téléchargement MàJ vCenter/ESXi (443)
#
# DURCISSEMENT :
#  18. Drop     : gestion ESXi en clair hérité (HTTP 80 interne)
# ─────────────────────────────────────────────────

rules:

  # ── Règle 1 : OBLIGATOIRE — Entrant — vSphere Client + API REST vers la VCSA ──────
  # Les administrateurs vSphere et les outils d'automatisation (Terraform vSphere,
  # PowerCLI, Ansible VMware) accèdent à la VCSA en HTTPS (443) : vSphere Client
  # (HTML5) et API REST/SDK. Interface principale de gestion vCenter.
  # ssl_inbound_inspection : la VCSA est un serveur interne contrôlé ; on déchiffre
  # le trafic entrant pour détecter les exploits applicatifs (T1190 — nombreuses CVE
  # critiques vCenter historiques) et les uploads malveillants.
  - application:
      app_id: virtualization_mgmt_web
      category: infrastructure
      default_ports:
        - tcp/443
      depends_on:
        - dns
      risk: 5

    identity:
      user_group:
        - "virtualization_admins"
        - "infrastructure_admins"
      device_posture: compliant

    zones:
      source:
        - trust
        - management
        - vpn
      destination:
        - management

    direction: inbound

    service:
      protocol: tcp
      ports:
        - "443"
      app_default: true

    action: allow

    security_profiles:
      antivirus:
        action: block
      ips:
        action: block
        min_severity: medium
      url_filtering:
        credential_phishing: block

    decryption:
      mode: ssl_inbound_inspection
      exclusions: []

    logging:
      log_start: false
      log_end: true
      log_forwarding: true
      profile: "siem_high_priority"

    rationale:
      fr: |
        Cette règle autorise les administrateurs vSphere (postes conformes, groupes SSO
        vCenter restreints) et les outils d'automatisation (PowerCLI, Terraform vSphere,
        Ansible VMware) à atteindre la VCSA en HTTPS sur le port 443 (vSphere Client
        HTML5 et API REST/SDK). La VCSA étant un serveur interne contrôlé,
        ssl_inbound_inspection déchiffre le trafic entrant pour détecter les exploits
        visant vCenter Server (T1190 — nombreuses CVE critiques historiques : CVE-2021-21985,
        CVE-2021-22005, CVE-2023-34048, etc.) et les uploads malveillants. L'identité est
        restreinte par groupe SSO vCenter (moindre privilège). Risque critique (risk 5) :
        compromettre la VCSA permet de pivoter vers l'ensemble des hôtes ESXi via vpxd↔vpxa
        (T1210). Cette règle couvre aussi la redirection depuis le port HTTP 80 (voir règle 3).
      en: |
        This rule allows vSphere administrators (compliant devices, restricted vCenter SSO
        groups) and automation tools (PowerCLI, Terraform vSphere, Ansible VMware) to reach
        the VCSA over HTTPS port 443 (vSphere Client HTML5 and REST API/SDK). Since the VCSA
        is a controlled internal server, ssl_inbound_inspection decrypts inbound traffic to
        detect exploits targeting vCenter Server (T1190 — many historical critical CVEs:
        CVE-2021-21985, CVE-2021-22005, CVE-2023-34048, etc.) and malicious uploaded files.
        Identity is restricted by vCenter SSO group (least privilege). Risk is critical
        (risk 5): compromising the VCSA enables pivoting to all ESXi hosts via vpxd↔vpxa
        (T1210). This rule also covers the redirect from HTTP port 80 (see rule 3).

  # ── Règle 2 : OBLIGATOIRE — Entrant — VAMI (vCenter Appliance Management Interface) ─
  # La VAMI (port 5480) est l'interface d'administration système de la VCSA : sauvegarde,
  # configuration réseau, NTP, certificats, mises à jour OS de l'appliance,
  # activation/désactivation SSH. Port distinct du vSphere Client (443).
  # Accès restreint aux administrateurs système (groupe annuaire plus étroit que règle 1).
  - application:
      app_id: appliance_admin_web
      category: infrastructure
      default_ports:
        - tcp/5480
      depends_on:
        - dns
      risk: 5

    identity:
      user_group:
        - "infrastructure_admins"
      device_posture: compliant

    zones:
      source:
        - management
      destination:
        - management

    direction: inbound

    service:
      protocol: tcp
      ports:
        - "5480"
      app_default: true

    action: allow

    security_profiles:
      antivirus:
        action: block
      ips:
        action: block
        min_severity: medium

    decryption:
      mode: ssl_inbound_inspection
      exclusions: []

    logging:
      log_start: false
      log_end: true
      log_forwarding: true
      profile: "siem_high_priority"

    rationale:
      fr: |
        La VAMI (vCenter Appliance Management Interface, port 5480) est le seul moyen de
        gérer les paramètres système de la VCSA : sauvegarde, configuration réseau, NTP,
        certificats TLS, mises à jour OS de l'appliance et activation/désactivation du SSH.
        Elle est structurellement obligatoire (sans elle, la VCSA ne peut pas être administrée
        hors du vSphere Client) et distincte de l'interface de gestion vSphere 443.
        L'accès est restreint aux administrateurs système uniquement (groupe d'annuaire plus
        étroit que la règle 1). ssl_inbound_inspection couvre les exploits (T1190, T1078).
        Risque critique (risk 5) : l'accès à la VAMI permet la reconfiguration complète de
        la VCSA, y compris l'activation du SSH et la modification des certificats SSO.
      en: |
        The VAMI (vCenter Appliance Management Interface, port 5480) is the only way to
        manage the VCSA system settings: backup, network configuration, NTP, TLS certificates,
        appliance OS updates, and SSH enable/disable. It is structurally mandatory (without
        it, the VCSA cannot be managed outside the vSphere Client) and distinct from the
        vSphere management interface on port 443. Access is restricted to system administrators
        only (a narrower directory group than rule 1). ssl_inbound_inspection covers exploits
        (T1190, T1078). Risk is critical (risk 5): VAMI access allows full reconfiguration of
        the VCSA, including SSH activation and SSO certificate modification.

  # ── Règle 3 : OBLIGATOIRE — Entrant — HTTP → redirect HTTPS ─────────────────────
  # La VCSA redirige automatiquement HTTP 80 vers HTTPS 443 (vSphere Client).
  # Aucune donnée applicative en clair. Inclus dans l'inspection IPS.
  - application:
      app_id: web_browsing
      category: networking
      default_ports:
        - tcp/80
      risk: 2

    zones:
      source:
        - trust
        - management
        - vpn
      destination:
        - management

    direction: inbound

    service:
      protocol: tcp
      ports:
        - "80"
      app_default: true

    action: allow

    security_profiles:
      ips:
        action: block
        min_severity: high

    decryption:
      mode: none

    logging:
      log_start: false
      log_end: true
      log_forwarding: true
      profile: "siem_default"

    rationale:
      fr: |
        La VCSA redirige automatiquement le port 80 vers HTTPS 443 (vSphere Client).
        Aucune donnée applicative ne transite en clair : la session est immédiatement
        redirigée. L'IPS en mode block (high) détecte les tentatives d'exploitation
        visant la couche HTTP de redirection. Le déchiffrement est non applicable :
        le flux HTTP n'est pas chiffré et la redirection intervient avant tout échange
        de données.
      en: |
        The VCSA automatically redirects port 80 to HTTPS 443 (vSphere Client). No
        application data is transmitted in clear text: the session is immediately
        redirected. IPS in block mode (high severity) detects exploitation attempts
        targeting the HTTP redirect layer. Decryption is not applicable: the HTTP
        flow is not encrypted and the redirect occurs before any data exchange.

  # ── Règle 4 : OBLIGATOIRE — Interne — canal vpxd↔vpxa VCSA <-> hôtes ESXi ────────
  # La VCSA pilote les hôtes ESXi via le canal de gestion bidirectionnel vpxd (service
  # vCenter) ↔ vpxa (agent ESXi). TCP 902 : données de gestion, configuration, console
  # de VM (MKS — Mouse/Keyboard/Screen). TCP 443 : API de gestion des agents ESXi.
  # UDP 902 : heartbeat de disponibilité des hôtes ESXi.
  - application:
      app_id: hypervisor_management
      category: infrastructure
      default_ports:
        - tcp/902
        - udp/902
        - tcp/443
      depends_on:
        - dns
      risk: 5

    zones:
      source:
        - management
      destination:
        - management

    direction: internal

    service:
      protocol: tcp
      ports:
        - "902"
        - "443"
      app_default: true

    action: allow

    security_profiles:
      antivirus:
        action: block
      ips:
        action: block
        min_severity: medium

    decryption:
      mode: none
      exclusions:
        - cert_pinned_app

    logging:
      log_start: false
      log_end: true
      log_forwarding: true
      profile: "siem_high_priority"

    rationale:
      fr: |
        La VCSA pilote les hôtes ESXi via le canal bidirectionnel vpxd↔vpxa. Le port
        TCP 902 (port de gestion ESXi) véhicule le transfert de données, la configuration
        et la console de machine virtuelle (MKS — Mouse/Keyboard/Screen via vSphere Client).
        Le port TCP 443 est utilisé par vpxd pour les API de gestion des agents vpxa côté
        ESXi. Le heartbeat de disponibilité UDP 902 est couvert par la règle 4b. Le
        déchiffrement est désactivé (exclusion cert_pinned_app) : les hôtes ESXi présentent
        des certificats d'équipement vSphere et un proxy MITM briserait le canal
        d'authentification mutuelle vpxd↔vpxa. L'IPS détecte les exploits visant les
        services de gestion ESXi (T1210). Risque critique (risk 5) : ce canal est le
        vecteur principal de pivot depuis la VCSA vers les hôtes ESXi.
      en: |
        The VCSA drives ESXi hosts via the bidirectional vpxd↔vpxa channel. TCP port 902
        (ESXi management port) carries data transfer, configuration, and VM console
        (MKS — Mouse/Keyboard/Screen via vSphere Client). TCP port 443 is used by vpxd
        for vpxa agent management APIs on the ESXi side. The UDP 902 availability heartbeat
        is covered by rule 4b. Decryption is disabled (cert_pinned_app exclusion): ESXi
        hosts present vSphere device certificates and a MITM proxy would break the mutual
        authentication channel vpxd↔vpxa. IPS detects exploits targeting ESXi management
        services (T1210). Risk is critical (risk 5): this channel is the main pivot vector
        from the VCSA to ESXi hosts.

  # ── Règle 4b : OBLIGATOIRE — Interne — heartbeat UDP vpxd↔vpxa ─────────────────
  - application:
      app_id: hypervisor_heartbeat
      category: infrastructure
      default_ports:
        - udp/902
      risk: 3

    zones:
      source:
        - management
      destination:
        - management

    direction: internal

    service:
      protocol: udp
      ports:
        - "902"
      app_default: true

    action: allow

    security_profiles:
      ips:
        action: default

    decryption:
      mode: none

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_default"

    rationale:
      fr: |
        Le heartbeat de disponibilité UDP 902 entre la VCSA (vpxd) et les hôtes ESXi
        (vpxa) permet la détection rapide des hôtes indisponibles dans vSphere. Ce flux
        est fondamental pour la gestion de la haute disponibilité vSphere HA et la
        surveillance de l'état des hôtes ESXi dans vCenter. L'IPS en mode default détecte
        les anomalies de protocole sur ce flux UDP sans bloquer les sondes vpxd légitimes.
      en: |
        The UDP 902 availability heartbeat between the VCSA (vpxd) and ESXi hosts (vpxa)
        enables rapid detection of unavailable hosts in vSphere. This flow is fundamental
        for vSphere HA high-availability management and ESXi host health monitoring in
        vCenter. IPS in default mode detects protocol anomalies on this UDP flow without
        blocking legitimate vpxd probes.

  # ── Règle 5 : OBLIGATOIRE — Interne — dépendance DNS ────────────────────────────
  # Résolution DNS requise pour les FQDN de la VCSA, des hôtes ESXi gérés,
  # des contrôleurs Active Directory et de dl.broadcom.com. TCP/53 pour DNSSEC/fallback.
  - application:
      app_id: dns
      category: networking
      default_ports:
        - udp/53
        - tcp/53
      risk: 2

    zones:
      source:
        - management
      destination:
        - internal

    direction: internal

    service:
      protocol: udp
      ports:
        - "53"
      app_default: true

    action: allow

    security_profiles:
      dns_security:
        action: block
        sinkhole: true

    decryption:
      mode: none

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_default"

    rationale:
      fr: |
        La résolution DNS est structurellement obligatoire pour la VCSA : l'installation
        échoue si les enregistrements A/PTR de son FQDN ne sont pas résolus. En exploitation,
        DNS est requis pour joindre les hôtes ESXi gérés, les contrôleurs Active Directory
        (intégration SSO vCenter), et le service dl.broadcom.com (mises à jour vLCM). Le
        flux est restreint vers un résolveur interne contrôlé (pas de résolution directe
        vers Internet). Le profil dns_security avec sinkhole atténue le tunneling DNS depuis
        la VCSA si elle était compromise. TCP/53 (réponses DNSSEC ou >512 octets) est traité
        avec la même règle si le pare-feu supporte multi-protocole ; sinon, dupliquer pour tcp/53.
      en: |
        DNS resolution is structurally mandatory for the VCSA: installation fails if A/PTR
        records for its FQDN cannot be resolved. In operation, DNS is required to reach
        managed ESXi hosts, Active Directory controllers (vCenter SSO integration), and the
        dl.broadcom.com service (vLCM updates). The flow is restricted to a controlled
        internal resolver (no direct Internet resolution). The dns_security profile with
        sinkhole mitigates DNS tunneling from the VCSA if it were compromised. TCP/53
        (DNSSEC or >512-byte responses) is handled by the same rule if the firewall supports
        multi-protocol; otherwise duplicate for tcp/53.

  # ── Règle 6 : CONDITIONNEL — Interne — synchronisation NTP ──────────────────────
  # À activer UNIQUEMENT si la synchronisation NTP directe est configurée sur la VCSA
  # (via la VAMI ou vcsa-util). Alternative : synchronisation via l'hyperviseur hôte ESXi.
  # NTP est critique pour la validité des certificats TLS vSphere, l'authentification
  # SSO/Kerberos vCenter, la cohérence des logs et le fonctionnement de vSphere HA.
  - application:
      app_id: ntp
      category: networking
      default_ports:
        - udp/123
      risk: 2

    zones:
      source:
        - management
      destination:
        - internal

    direction: internal

    service:
      protocol: udp
      ports:
        - "123"
      app_default: true

    action: allow

    security_profiles:
      ips:
        action: default

    decryption:
      mode: none

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_default"

    rationale:
      fr: |
        CONDITIONNEL — À n'activer QUE si la synchronisation NTP directe est configurée
        sur la VCSA (via la VAMI ou vcsa-util). La VCSA peut synchroniser son horloge via
        l'hyperviseur hôte ESXi (mode VMware Tools), mais la synchronisation NTP directe est
        fortement recommandée en production. NTP est critique pour la validité des certificats
        TLS vSphere, l'authentification SSO/Kerberos vCenter, la cohérence des journaux
        d'événements et le fonctionnement de vSphere HA (élection master). L'IPS en mode
        default détecte les anomalies de protocole NTP (amplification, mode hors norme).
      en: |
        CONDITIONAL — Enable ONLY if direct NTP synchronisation is configured on the VCSA
        (via VAMI or vcsa-util). The VCSA can synchronise its clock via the ESXi host
        hypervisor (VMware Tools mode), but direct NTP synchronisation is strongly recommended
        in production. NTP is critical for vSphere TLS certificate validity, vCenter
        SSO/Kerberos authentication, event log consistency, and vSphere HA operation
        (master election). IPS in default mode detects NTP protocol anomalies (amplification,
        non-standard mode).

  # ── Règle 7 : CONDITIONNEL — Entrant — SSH VCSA ─────────────────────────────────
  # À activer UNIQUEMENT si le service SSH de la VCSA a été explicitement activé via la
  # VAMI pour une opération de maintenance. Désactivé par défaut dans vSphere 9.0.
  # Doit être re-désactivé après intervention (via la VAMI ou la console vCenter).
  - application:
      app_id: ssh
      category: remote_access
      default_ports:
        - tcp/22
      risk: 4

    identity:
      user_group:
        - "infrastructure_admins"
      device_posture: compliant

    zones:
      source:
        - management
      destination:
        - management

    direction: inbound

    service:
      protocol: tcp
      ports:
        - "22"
      app_default: true

    action: allow

    security_profiles:
      ips:
        action: block
        min_severity: medium

    decryption:
      mode: ssh_proxy

    logging:
      log_start: true
      log_end: true
      log_forwarding: true
      profile: "siem_high_priority"

    rationale:
      fr: |
        CONDITIONNEL — À n'activer QUE si le service SSH de la VCSA a été explicitement
        activé via la VAMI pour une opération de maintenance. Le SSH est désactivé par
        défaut sur la VCSA dans vSphere 9.0 (bonne pratique de sécurité Broadcom) et doit
        être re-désactivé après intervention. Cette règle doit être activée avec une politique
        de durée limitée (fenêtre de maintenance). Le déchiffrement ssh_proxy permet d'inspecter
        les commandes exécutées via le tunnel SSH (détection d'exfiltration ou de commandes
        suspectes sur le shell root VCSA). L'accès est restreint aux hôtes de gestion conformes
        et au groupe d'administration le plus étroit (T1133). log_start est activé pour tracer
        toute ouverture de session SSH.
      en: |
        CONDITIONAL — Enable ONLY if the VCSA SSH service has been explicitly activated via
        the VAMI for a maintenance operation. SSH is disabled by default on the VCSA in
        vSphere 9.0 (Broadcom security best practice) and must be re-disabled after the
        operation. This rule should be activated with a time-limited policy (maintenance
        window). The ssh_proxy decryption mode allows inspection of commands executed over
        the SSH tunnel (detection of exfiltration or suspicious commands on the VCSA root
        shell). Access is restricted to compliant management hosts and the narrowest
        administration group (T1133). log_start is enabled to trace every SSH session opening.

  # ── Règle 8 : CONDITIONNEL — Entrant — Auto Deploy (provisioning réseau ESXi) ─────
  # À activer UNIQUEMENT si le service Auto Deploy de vCenter est utilisé pour le
  # déploiement automatisé d'hôtes ESXi sans état (stateless ESXi). Auto Deploy distribue
  # les images ESXi, profils de configuration et règles d'assignation vSphere aux hôtes
  # en cours de provisioning.
  - application:
      app_id: network_boot_provisioning
      category: infrastructure
      default_ports:
        - tcp/6501
        - tcp/6502
      risk: 3

    zones:
      source:
        - management
      destination:
        - management

    direction: inbound

    service:
      protocol: tcp
      ports:
        - "6501"
        - "6502"
      app_default: true

    action: allow

    security_profiles:
      antivirus:
        action: block
      ips:
        action: block
        min_severity: medium

    decryption:
      mode: none
      exclusions:
        - cert_pinned_app

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_high_priority"

    rationale:
      fr: |
        CONDITIONNEL — À n'activer QUE si Auto Deploy vCenter est en place pour le déploiement
        automatisé d'hôtes ESXi sans état (stateless ESXi). Auto Deploy distribue les images
        ESXi, les profils de configuration et les règles d'assignation vSphere aux hôtes en
        cours de provisioning : les hôtes se connectent à la VCSA sur les ports TCP 6501
        (service Auto Deploy HTTP) et 6502 (service Auto Deploy HTTPS) pour recevoir leur
        image système. L'antivirus et l'IPS inspectent les flux entrants. Le déchiffrement est
        désactivé (cert_pinned_app) car les hôtes ESXi en boot réseau utilisent des certificats
        vSphere que le proxy ne peut pas impersonner. Si le provisioning utilise UEFI HTTPS
        Boot (boot moderne ESXi 7+), il passe par TCP 443 (règle 1) et cette règle peut rester
        désactivée.
      en: |
        CONDITIONAL — Enable ONLY if vCenter Auto Deploy is in place for stateless ESXi host
        automated deployment. Auto Deploy distributes ESXi images, configuration profiles, and
        vSphere assignment rules to hosts being provisioned: hosts connect to the VCSA on TCP
        ports 6501 (Auto Deploy HTTP service) and 6502 (Auto Deploy HTTPS service) to receive
        their system image. Antivirus and IPS inspect inbound flows. Decryption is disabled
        (cert_pinned_app) as ESXi hosts network-booting use vSphere device certificates that
        a proxy cannot impersonate. If provisioning uses UEFI HTTPS Boot (modern ESXi 7+ boot),
        it goes through TCP 443 (rule 1) and this rule can remain disabled.

  # ── Règle 9 : CONDITIONNEL — Entrant — Auto Deploy boot PXE/iPXE legacy (TFTP) ───
  # À activer UNIQUEMENT si Auto Deploy utilise le boot PXE legacy (BIOS/iPXE classique).
  # NON requis si le boot UEFI HTTPS (nouveau défaut ESXi 7+) est configuré.
  - application:
      app_id: tftp
      category: networking
      default_ports:
        - udp/69
      risk: 3

    zones:
      source:
        - management
      destination:
        - management

    direction: inbound

    service:
      protocol: udp
      ports:
        - "69"
      app_default: true

    action: allow

    security_profiles:
      ips:
        action: block
        min_severity: medium

    decryption:
      mode: none

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_high_priority"

    rationale:
      fr: |
        CONDITIONNEL — À n'activer QUE si Auto Deploy vCenter utilise le boot PXE legacy
        (BIOS ou iPXE classique). Le TFTP (UDP 69) permet le téléchargement du fichier de
        boot iPXE lors du démarrage PXE d'un hôte ESXi en provisioning. Cette règle est
        inutile si le boot réseau UEFI HTTPS (nouveau défaut ESXi 7+) est configuré, ce
        dernier passant entièrement par HTTPS (règle 1 ou règle 8). TFTP est un protocole
        non chiffré : limiter son usage au réseau de gestion segmenté et envisager la
        migration vers le boot UEFI HTTPS pour éliminer ce flux.
      en: |
        CONDITIONAL — Enable ONLY if vCenter Auto Deploy uses legacy PXE boot (BIOS or
        classic iPXE). TFTP (UDP 69) enables download of the iPXE boot file when an ESXi
        host being provisioned PXE-boots. This rule is unnecessary if UEFI HTTPS Boot
        (new default from ESXi 7+) is configured, as it operates entirely over HTTPS
        (rule 1 or rule 8). TFTP is an unencrypted protocol: restrict its use to the
        segmented management network and consider migrating to UEFI HTTPS boot to eliminate
        this flow.

  # ── Règle 10 : CONDITIONNEL — Interne — vSphere Lifecycle Manager (vLCM) HTTPS ───
  # À activer UNIQUEMENT si vLCM (vSphere Lifecycle Manager) est utilisé pour piloter
  # les mises à jour et la conformité des hôtes ESXi. Port HTTPS principal du dépôt de
  # patches/images vLCM distribué depuis la VCSA vers les hôtes ESXi.
  - application:
      app_id: host_lifecycle_patch_https
      category: infrastructure
      default_ports:
        - tcp/9087
      depends_on:
        - dns
      risk: 4

    zones:
      source:
        - management
      destination:
        - management

    direction: inbound

    service:
      protocol: tcp
      ports:
        - "9087"
      app_default: true

    action: allow

    security_profiles:
      antivirus:
        action: block
      ips:
        action: block
        min_severity: medium
      sandboxing:
        enabled: true
        file_types:
          - "archive"
          - "pe"

    decryption:
      mode: ssl_inbound_inspection
      exclusions: []

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_high_priority"

    rationale:
      fr: |
        CONDITIONNEL — À n'activer QUE si vSphere Lifecycle Manager (vLCM) est activé pour
        piloter les mises à jour et vérifier la conformité des hôtes ESXi gérés. vLCM expose
        un dépôt HTTPS de patches et d'images ESXi depuis la VCSA vers les hôtes. Si ce flux
        est bloqué, les vérifications de conformité vLCM et les remédiations échouent
        silencieusement. Port HTTPS 9087 : flux principal depuis vSphere 7/vLCM (remplace le
        port HTTP hérité 9084). ssl_inbound_inspection permet l'inspection antivirus et
        sandboxing du contenu distribué (vecteur supply chain si la VCSA est compromise).
      en: |
        CONDITIONAL — Enable ONLY if vSphere Lifecycle Manager (vLCM) is activated to drive
        updates and check compliance of managed ESXi hosts. vLCM exposes an HTTPS patch/ESXi
        image repository from the VCSA to hosts. If this flow is blocked, vLCM compliance
        checks and remediations fail silently. HTTPS port 9087: the primary flow since
        vSphere 7/vLCM (replaces legacy HTTP port 9084). ssl_inbound_inspection enables
        antivirus and sandboxing inspection of distributed content (supply-chain vector if
        the VCSA is compromised).

  # ── Règle 11 : CONDITIONNEL — Interne — vLCM ports legacy (9084, 8083) ──────────
  # À activer UNIQUEMENT si vLCM gère encore des hôtes ESXi en mode legacy (port HTTP
  # 9084) ou accède au magasin de configuration des hôtes (port 8083). En vSphere 7+/
  # vLCM courant, le flux principal passe par HTTPS 9087 (règle 10).
  - application:
      app_id: host_lifecycle_patch_legacy
      category: infrastructure
      default_ports:
        - tcp/9084
        - tcp/8083
      risk: 3

    zones:
      source:
        - management
      destination:
        - management

    direction: inbound

    service:
      protocol: tcp
      ports:
        - "9084"
        - "8083"
      app_default: true

    action: allow

    security_profiles:
      antivirus:
        action: block
      ips:
        action: block
        min_severity: medium

    decryption:
      mode: none

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_default"

    rationale:
      fr: |
        CONDITIONNEL — À n'activer QUE si vLCM utilise encore le port HTTP hérité (9084)
        pour des hôtes ESXi en mode de compatibilité, ou le port d'accès au magasin de
        configuration des hôtes (8083). En vSphere 7+/vLCM courant, le flux principal passe
        par HTTPS 9087 (règle 10) ; ces ports sont des résidus d'héritage. Note : 9084 étant
        HTTP non chiffré, envisager la migration vers 9087/HTTPS pour éliminer ce flux et
        fermer cette règle.
      en: |
        CONDITIONAL — Enable ONLY if vLCM still uses the legacy HTTP port (9084) for
        compatibility-mode ESXi hosts, or the host configuration store access port (8083).
        In vSphere 7+/current vLCM, the main flow goes through HTTPS 9087 (rule 10); these
        ports are legacy residues. Note: since 9084 is unencrypted HTTP, consider migrating
        to 9087/HTTPS to eliminate this unencrypted flow and close this rule.

  # ── Règle 12 : CONDITIONNEL — Interne — vSphere Replication (management SOAP) ────
  # À activer UNIQUEMENT si vSphere Replication est déployé (VR Appliance). Ce flux
  # couvre la communication de management SOAP entre la VCSA et l'appliance vSphere
  # Replication (distinct du trafic de réplication de données inter-ESXi sur NBD/NFC).
  - application:
      app_id: replication_management
      category: infrastructure
      default_ports:
        - tcp/8043
      depends_on:
        - dns
      risk: 3

    zones:
      source:
        - management
      destination:
        - management

    direction: internal

    service:
      protocol: tcp
      ports:
        - "8043"
      app_default: true

    action: allow

    security_profiles:
      ips:
        action: block
        min_severity: medium

    decryption:
      mode: ssl_inbound_inspection
      exclusions: []

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_default"

    rationale:
      fr: |
        CONDITIONNEL — À n'activer QUE si vSphere Replication est déployé (VR Appliance).
        Ce flux SOAP (TCP 8043) permet à la VCSA de piloter l'appliance vSphere Replication :
        configuration des politiques de réplication, monitoring, orchestration des basculements.
        Il est distinct du trafic de réplication de données inter-ESXi (NBD/NFC), qui relève
        d'une fiche dédiée aux hôtes ESXi. ssl_inbound_inspection inspecte les flux HTTPS SOAP
        entrants vers la VCSA.
      en: |
        CONDITIONAL — Enable ONLY if vSphere Replication is deployed (VR Appliance). This
        SOAP flow (TCP 8043) allows the VCSA to control the vSphere Replication Appliance:
        replication policy configuration, monitoring, failover orchestration. It is distinct
        from inter-ESXi replication data traffic (NBD/NFC), which belongs to a dedicated ESXi
        host profile. ssl_inbound_inspection inspects inbound HTTPS SOAP flows to the VCSA.

  # ── Règle 13 : CONDITIONNEL — Entrant — supervision SNMP polling ─────────────────
  # À activer UNIQUEMENT si l'agent SNMP de la VCSA est activé et qu'un système
  # de supervision (NMS) effectue du polling SNMP. SNMP v3 recommandé.
  - application:
      app_id: snmp
      category: infrastructure
      default_ports:
        - udp/161
      risk: 2

    zones:
      source:
        - management
      destination:
        - management

    direction: inbound

    service:
      protocol: udp
      ports:
        - "161"
      app_default: true

    action: allow

    security_profiles:
      ips:
        action: default

    decryption:
      mode: none

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_default"

    rationale:
      fr: |
        CONDITIONNEL — À n'activer QUE si l'agent SNMP de la VCSA est activé et qu'un
        système de supervision réseau (NMS) effectue du polling. SNMP v3 avec authentification
        et chiffrement est fortement recommandé pour une infrastructure vSphere (les MIB
        vCenter exposent des informations sensibles sur l'infrastructure). L'accès doit être
        restreint à l'adresse IP du NMS. L'IPS en mode default surveille les anomalies de
        protocole SNMP (tentatives de walk non autorisées).
      en: |
        CONDITIONAL — Enable ONLY if the VCSA's SNMP agent is activated and a network
        management system (NMS) performs polling. SNMPv3 with authentication and encryption
        is strongly recommended for a vSphere infrastructure (vCenter MIBs expose sensitive
        infrastructure information). Access must be restricted to the NMS IP address. IPS
        in default mode monitors SNMP protocol anomalies (unauthorised walk attempts).

  # ── Règle 14 : CONDITIONNEL — Interne — supervision SNMP traps ──────────────────
  # À activer UNIQUEMENT si l'envoi de traps SNMP est configuré sur la VCSA.
  - application:
      app_id: snmp_trap
      category: infrastructure
      default_ports:
        - udp/162
      risk: 2

    zones:
      source:
        - management
      destination:
        - management

    direction: internal

    service:
      protocol: udp
      ports:
        - "162"
      app_default: true

    action: allow

    security_profiles:
      ips:
        action: default

    decryption:
      mode: none

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_default"

    rationale:
      fr: |
        CONDITIONNEL — À n'activer QUE si l'envoi de traps SNMP est configuré sur la VCSA
        vers un récepteur de traps (NMS). La VCSA émet des traps SNMP UDP vers le NMS pour
        signaler des événements d'infrastructure vSphere. Préférer SNMP v3 avec authentification.
        L'IPS en mode default surveille les anomalies.
      en: |
        CONDITIONAL — Enable ONLY if SNMP trap sending is configured on the VCSA toward a
        trap receiver (NMS). The VCSA emits SNMP UDP traps to the NMS to report vSphere
        infrastructure events. Prefer SNMPv3 with authentication. IPS in default mode
        monitors anomalies.

  # ── Règle 15 : CONDITIONNEL — Interne — syslog non chiffré (vCenter 9.x) ─────────
  # À activer UNIQUEMENT si la collecte syslog non chiffrée est configurée sur la VCSA
  # ET que la version courante est vCenter 9.x (supporté). Préférer la règle 16 (syslog
  # TLS 1514), voie de migration recommandée. Bloqué et non supporté dès vCenter 9.1.
  - application:
      app_id: syslog
      category: infrastructure
      default_ports:
        - udp/514
        - tcp/514
      risk: 3

    zones:
      source:
        - management
      destination:
        - management

    direction: internal

    service:
      protocol: udp
      ports:
        - "514"
      app_default: true

    action: allow

    security_profiles:
      ips:
        action: block
        min_severity: high

    decryption:
      mode: none

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_default"

    rationale:
      fr: |
        CONDITIONNEL — À n'activer QUE si la collecte syslog non chiffrée est configurée
        sur la VCSA ET que la version courante est vCenter Server 9.x (supporté). AVERTISSEMENT
        DE VERSION : le syslog non chiffré sur UDP/TCP 514 est supporté dans vCenter Server 9.x
        mais est bloqué et non supporté à partir de vCenter Server 9.1. Si une montée de version
        vers 9.1+ est prévue, migrer vers syslog TLS (règle 16, port 1514) AVANT la mise à
        niveau de la VCSA. Syslog non chiffré expose les journaux vCenter à l'interception et
        à la falsification sur le réseau de gestion — préférer la règle 16 en toutes
        circonstances. L'IPS surveille les anomalies sur le flux.
      en: |
        CONDITIONAL — Enable ONLY if unencrypted syslog collection is configured on the VCSA
        AND the current version is vCenter Server 9.x (supported). VERSION WARNING: unencrypted
        syslog on UDP/TCP 514 is supported in vCenter Server 9.x but is blocked and unsupported
        from vCenter Server 9.1 onward. If an upgrade to 9.1+ is planned, migrate to syslog
        TLS (rule 16, port 1514) BEFORE upgrading the VCSA. Unencrypted syslog exposes vCenter
        logs to interception and tampering on the management network — prefer rule 16 in all
        circumstances. IPS monitors flow anomalies.

  # ── Règle 16 : CONDITIONNEL — Interne — syslog TLS (recommandé vCenter 9.x) ──────
  # À activer si la collecte de logs syslog chiffrée TLS est configurée sur la VCSA.
  # Recommandé en vCenter 9.x, obligatoire à partir de vCenter 9.1 (remplace règle 15).
  - application:
      app_id: syslog_tls
      category: infrastructure
      default_ports:
        - tcp/1514
      risk: 2

    zones:
      source:
        - management
      destination:
        - management

    direction: internal

    service:
      protocol: tcp
      ports:
        - "1514"
      app_default: true

    action: allow

    security_profiles:
      ips:
        action: default

    decryption:
      mode: none
      exclusions:
        - cert_pinned_app

    logging:
      log_end: true
      log_forwarding: true
      profile: "siem_default"

    rationale:
      fr: |
        CONDITIONNEL — À activer si la collecte de logs syslog chiffrée TLS est configurée
        sur la VCSA. Recommandé en vCenter Server 9.x, et obligatoire à partir de vCenter
        Server 9.1 (le syslog non chiffré sur 514 étant bloqué dès cette version). Voie de
        migration recommandée depuis la règle 15. Le déchiffrement est désactivé
        (cert_pinned_app) car le collecteur syslog TLS utilise un certificat d'équipement
        vSphere pour l'authentification mutuelle.
      en: |
        CONDITIONAL — Enable if encrypted TLS syslog log collection is configured on the
        VCSA. Recommended in vCenter Server 9.x, and mandatory from vCenter Server 9.1
        onward (unencrypted syslog on 514 is blocked from that version). Recommended
        migration path from rule 15. Decryption is disabled (cert_pinned_app) as the TLS
        syslog collector uses a vSphere device certificate for mutual authentication.

  # ── Règle 17 : OBLIGATOIRE (si mode online) — Sortant — dl.broadcom.com (MàJ) ────
  # Flux sortant vers Internet : la VCSA et vLCM téléchargent les mises à jour vCenter
  # et les patches/images ESXi depuis dl.broadcom.com (dépôt authentifié Broadcom,
  # token par compte support). Vecteur supply chain : ssl_forward_proxy OBLIGATOIRE
  # + antivirus/ips/url_filtering/sandboxing.
  # MIGRATION DOMAINE (avril 2025) : dl.broadcom.com est le seul dépôt actif.
  # Les anciens domaines VMware suivants retournent HTTP 403 depuis le 23 avril 2025
  # et NE DOIVENT PLUS être autorisés dans les allow-lists de déploiement :
  #   - depot.vmware.com
  #   - hostupdate.vmware.com
  #   - vapp-updates.vmware.com
  # Note : dl.broadcom.com requiert un token d'authentification par compte support.
  # Exclure ce domaine de l'inspection SSL/DPI (KB 431697) — utiliser les exclusions
  # du proxy déployé, pas une exclusion de déchiffrement générale dans cette règle.
  - application:
      app_id: software_update
      category: infrastructure
      default_ports:
        - tcp/443
      depends_on:
        - dns
        - ssl
      risk: 4

    zones:
      source:
        - management
      destination:
        - internet

    direction: outbound

    service:
      protocol: tcp
      ports:
        - "443"
      app_default: true

    action: allow

    security_profiles:
      antivirus:
        action: block
      ips:
        action: block
        min_severity: low
      url_filtering:
        block_categories:
          - malware
          - phishing
          - c2
          - newly_registered_domain
          - compromised
        uncategorized_action: block
        credential_phishing: block
      sandboxing:
        enabled: true
        file_types:
          - "archive"
          - "pe"
      dns_security:
        action: block
        sinkhole: true

    decryption:
      mode: ssl_forward_proxy
      exclusions: []

    logging:
      log_start: false
      log_end: true
      log_forwarding: true
      profile: "siem_high_priority"

    rationale:
      fr: |
        La VCSA et vLCM téléchargent les mises à jour vCenter Server et les patches/images
        ESXi depuis dl.broadcom.com, dépôt authentifié Broadcom (token par compte support,
        KB 431697). C'est le seul flux sortant vers Internet et un vecteur critique de chaîne
        d'approvisionnement (T1195.002) : ssl_forward_proxy est obligatoire pour permettre à
        l'antivirus et au sandboxing d'inspecter les paquets téléchargés. url_filtering bloque
        les catégories à risque et les sites non catégorisés.
        ALLOW-LIST DE DÉPLOIEMENT : autoriser uniquement dl.broadcom.com (dépôt actif depuis
        avril 2025). NE PAS autoriser les anciens domaines VMware retirés
        (depot.vmware.com, hostupdate.vmware.com, vapp-updates.vmware.com — HTTP 403 depuis
        le 23 avril 2025, KB 390098).
        Note de déploiement : dl.broadcom.com utilise un token d'authentification par compte
        support ; configurer l'exclusion d'inspection SSL sur ce domaine spécifique au niveau
        du proxy déployé (KB 431697), pas une exclusion générale de déchiffrement dans cette
        règle. Risque élevé (risk 4) : vecteur supply chain à large rayon d'impact sur la VCSA
        et l'ensemble des hôtes ESXi gérés.
      en: |
        The VCSA and vLCM download vCenter Server updates and ESXi patches/images from
        dl.broadcom.com, Broadcom's authenticated repository (per-support-account token,
        KB 431697). This is the only outbound Internet flow and a critical supply-chain
        vector (T1195.002): ssl_forward_proxy is mandatory to allow antivirus and sandboxing
        to inspect downloaded packages. url_filtering blocks risky categories and uncategorised
        sites.
        DEPLOYMENT ALLOW-LIST: authorise only dl.broadcom.com (active repository since
        April 2025). DO NOT authorise the retired legacy VMware domains
        (depot.vmware.com, hostupdate.vmware.com, vapp-updates.vmware.com — HTTP 403 since
        23 April 2025, KB 390098).
        Deployment note: dl.broadcom.com uses a per-support-account authentication token;
        configure the SSL inspection exclusion for this specific domain at the proxy level
        (KB 431697), not a general decryption exclusion in this rule. High risk (risk 4):
        supply-chain vector with wide blast radius on the VCSA and all managed ESXi hosts.

  # ── Règle 18 : DURCISSEMENT — Drop — gestion ESXi en clair hérité ────────────────
  # Les flux de gestion non chiffrés (HTTP) vers les hôtes ESXi doivent être bloqués
  # silencieusement. Les hôtes ESXi modernes (vSphere 7+) n'exposent leurs interfaces
  # de gestion qu'en HTTPS ; un flux HTTP interne vers un ESXi est un résidu hérité
  # ou une tentative de contournement.
  # L'absence de security_profiles est correcte sur action=drop (rien à inspecter).
  - application:
      app_id: clear_text_hypervisor_mgmt
      category: infrastructure
      default_ports:
        - tcp/80
      risk: 4

    zones:
      source:
        - management
      destination:
        - management

    direction: internal

    service:
      protocol: tcp
      ports:
        - "80"

    action: drop

    logging:
      log_start: true
      log_end: true
      log_forwarding: true
      profile: "siem_high_priority"

    rationale:
      fr: |
        Durcissement : les tentatives de communication en clair (HTTP) vers les interfaces
        de gestion des hôtes ESXi sont bloquées silencieusement. Les hôtes ESXi modernes
        (vSphere 7+) n'exposent leurs interfaces de gestion qu'en HTTPS (port 443, règle 4 —
        canal vpxd↔vpxa) ; un flux HTTP interne vers un hôte ESXi est soit un résidu de
        configuration hérité, soit une tentative de contournement du chiffrement
        (T1557 — interception en vol, vol d'identifiants vCenter/ESXi). Le log en haute
        priorité signale toute tentative pour investigation. Note : cette règle cible les
        flux internes VCSA <-> hôtes ESXi ; la redirection HTTP 80 vers HTTPS pour les
        clients administrateurs (vSphere Client) est couverte par la règle 3 (sens entrant).
      en: |
        Hardening: clear-text (HTTP) communication attempts toward ESXi host management
        interfaces are silently dropped. Modern ESXi hosts (vSphere 7+) expose their
        management interfaces only over HTTPS (port 443, rule 4 — vpxd↔vpxa channel); an
        HTTP flow toward an ESXi host is either a legacy configuration residue or an attempt
        to bypass encryption (T1557 — in-flight interception, vCenter/ESXi credential theft).
        High-priority logging flags every attempt for investigation. Note: this rule targets
        internal VCSA <-> ESXi host flows; the HTTP 80 to HTTPS redirect for administrator
        clients (vSphere Client) is covered by rule 3 (inbound direction).
