Téléchargement et déploiement des agents IAST PHP

Utilisez cette procédure pour télécharger l'AppScan Enterprise agent PHP IAST et le déployer dans votre environnement de serveur d'application (Windows, Ubuntu ou Red Hat). L'agent IAST PHP surveille votre application web en cours d'exécution pendant les tests d'exécution (manuels ou automatisés) et signale les vulnérabilités à AppScan Enterprise.

Avant de commencer

  • Assurez-vous d'avoirAppScan Enterprise accès avec les autorisations pour gérer les applications et les agents IAST.
  • Identifiez l'application cible dans AppScan Enterprise.
  • Vérifiez que vous avez des privilèges administratifs sur le serveur d'application PHP cible (Windows, Ubuntu ou Red Hat).
  • Vérifiez que votre version de PHP est 8.1.0 ou plus récente.

Pourquoi et quand exécuter cette tâche

Contrairement aux agents pour Java ou .NET, l'agent PHP nécessite une configuration manuelle en utilisant les détails d'un fichier ase-config.json inclus dans le package de téléchargement. Vous devez configurer des variables d'environnement spécifiques sur votre serveur pour que l'agent se connecte à AppScan Enterprise.

Partie 1 : Téléchargez l'agent PHP

Procédure

  1. Connectez-vous à l'AppScan Enterprise.
  2. Depuis la liste des applications, accédez à l'application cible.
  3. Sélectionnez l'onglet Application, puis cliquez sur Agents IAST.
  4. Cliquez sur Créer un agent.
  5. Dans la liste des types d'agents, sélectionnez l'option qui correspond à l'environnement de déploiement de votre application PHP :
    • PHP - Windows
    • PHP - Ubuntu
    • PHP - Red Hat
  6. Dans la case Nom de l'agent, saisissez un nom descriptif pour cette instance d'agent.
  7. Cliquez sur Télécharger l'agent.
    Le package ZIP de l'agent se télécharge automatiquement.

Partie 2 : Comprendre le package téléchargé

Procédure

  1. Localisez le fichier ZIP téléchargé.
  2. Comprendre son contenu :
    • Agent binaire :
      • Windows : hcl_agent.dll
      • Ubuntu : hcl_agent.deb
      • Red Hat: hcl_agent.rpm
    • ase-config.json : Un fichier contenant des détails de configuration spécifiques à cette instance d'agent, y compris les valeurs accessToken et host nécessaires pour la configuration manuelle du serveur.
    • Fichier de Licence : Contient des informations sur l'accord de licence (par exemple, Accord de Licence Principal HCL).

Partie 3 : Déployer l'agent (sélectionnez la section pour votre système d'exploitation)

Déploiement sur Windows :

Procédure

  1. Extraire le contenu du fichier ZIP de l'agent téléchargé vers un emplacement temporaire sur le serveur.
  2. Configurez PHP pour charger l'extension de l'agent :
    1. Trouvez votre répertoire d'extensions PHP. Ouvrez une invite de commande et exécutez : php -i | findstr "extension_dir".
    2. Copiez le fichier hcl_agent.dll (à partir des fichiers extraits) dans le répertoire des extensions PHP trouvé à l'étape 2a.
    3. Trouvez votre fichier de configuration php.ini actif. Dans l'invite de commande, exécutez : php --ini | findstr "Loaded Configuration File".
    4. Modifiez le fichier php.ini trouvé à l'étape 2c à l'aide d'un éditeur de texte.
    5. Ajoutez la ligne suivante à la fin du fichier : extension=hcl_agent.dll.
    6. Enregistrez et fermez le fichier php.ini.
  3. Configurer les variables d'environnement. Récupérez les valeurs accessToken et host du fichier ase-config.json.
    Remarque :
    • Le IAST_ACCESS_TOKEN et le IAST_HOST peuvent être configurés localement sur le serveur. Par exemple, sur un serveur XAMPP, ils peuvent être configurés dans le fichier httpd.conf.
    • Si d'autres agents (Java, .NET, Node.js) sont installés sur la même machine, vous devez définir les variables au niveau du serveur (Méthode B) plutôt qu'au niveau du système.

    Méthode A : Niveau système (par défaut)

    Ouvrez une invite de commande en tant qu'administrateur et exécutez les commandes suivantes :
    
    setx IAST_ACCESS_TOKEN "votre_accessToken_de_ase-config.json" /M setx IAST_HOST "votre_hôte_de_ase-config.json" /M
    

    Méthode B : Niveau serveur (exemple XAMPP)

    Modifiez le fichier httpd.conf de votre serveur XAMPP et ajoutez les lignes suivantes, généralement dans la section <Directory> de votre répertoire racine web :
    DéfinirEnv IAST_HOST "votre_hôte_de_ase-config.json" DéfinirEnv IAST_ACCESS_TOKEN "votre_accessToken_de_ase-config.json"
  4. Redémarrez votre serveur web (par exemple, le service Apache, IIS) pour appliquer les modifications.

Déploiement sur Ubuntu :

Procédure

  1. Extraire le contenu du fichier ZIP de l'agent téléchargé vers un emplacement temporaire sur le serveur.
  2. Installez le package de l'agent :
    1. Ouvrez une fenêtre de terminal.
    2. Vérifiez que dpkg est disponible. Si ce n'est pas le cas, installez-le (par exemple, sudo apt-get update && sudo apt-get install dpkg).
    3. Accédez (cd) au répertoire contenant le fichier hcl_agent.deb extrait.
    4. Exécutez la commande d'installation : sudo dpkg -i hcl_agent.deb.
      Remarque :
      Si vous êtes invité à propos des dépendances, vous devrez peut-être exécuter sudo apt-get install -f par la suite.
  3. Configurer les variables d'environnement. Récupérez les valeurs accessToken et host du fichier ase-config.json.
    Remarque :
    • Pour que l'agent fonctionne correctement avec le service de serveur web, les variables d'environnement doivent être définies de manière persistante pour ce service. Utiliser la commande export dans un terminal ne les définira que pour la session actuelle.
    • Une méthode recommandée consiste à ajouter les directives SetEnv à votre fichier de configuration Apache (par exemple, httpd.conf ou un fichier de configuration d'hôte virtuel).

    Modifiez votre fichier de configuration Apache et ajoutez les lignes suivantes :

    DéfinirEnv IAST_HOST "votre_hôte_de_ase-config.json" DéfinirEnv IAST_ACCESS_TOKEN "votre_accessToken_de_ase-config.json"
  4. Redémarrez votre serveur web (par exemple, sudo service apache2 restart ou sudo service nginx restart) pour appliquer les modifications.

Déploiement sur Red Hat :

Procédure

  1. Extraire le contenu du fichier ZIP de l'agent téléchargé vers un emplacement temporaire sur le serveur.
  2. Installez le package de l'agent :
    1. Ouvrez une fenêtre de terminal.
    2. Assurez-vous que rpm est disponible. Si ce n'est pas le cas, installez-le (par exemple, sudo yum install rpm).
    3. Accédez (cd) au répertoire contenant le fichier extrait hcl_agent.rpm.
    4. Exécutez la commande d'installation : sudo rpm -ivh hcl_agent.rpm.
  3. Configurer les variables d'environnement. Récupérez les valeurs accessToken et host du fichier ase-config.json.
    Remarque :
    • Pour que l'agent fonctionne correctement avec le service de serveur web, les variables d'environnement doivent être définies de manière persistante pour ce service. Utiliser la commande export dans un terminal ne les définira que pour la session actuelle.
    • Une méthode recommandée consiste à ajouter les directives SetEnv à votre fichier de configuration Apache (par exemple, httpd.conf ou un fichier de configuration d'hôte virtuel).

    Modifiez votre fichier de configuration Apache et ajoutez les lignes suivantes :

    DéfinirEnv IAST_HOST "your_host_from_ase-config.json" DéfinirEnv IAST_ACCESS_TOKEN "your_accessToken_from_ase-config.json"
  4. Redémarrez votre serveur web (par exemple, sudo systemctl restart httpd ou sudo systemctl restart nginx) pour appliquer les modifications.

Résultats

L'agent PHP IAST est installé et configuré sur votre serveur d'application. Après le redémarrage du serveur web, l'agent tente de se connecter àAppScan Enterprise en utilisant les variables d'environnement fournies.

Prochaines étapes :

Procédure

  1. DansAppScan Enterprise , accédez à Agents IAST > d'application et confirmez que le nouvel agent affiche un statut « Connecté ».
  2. Exécutez des tests sur votre application (par exemple, tests fonctionnels, exploration manuelle, scan DAST). L'agent IAST surveille ce trafic.
  3. Afficher les vulnérabilités signalées dans leAppScan Enterprise au fur et à mesure que l'agent les détecte.