下載和部署 PHP IAST 代理程式

使用此程序下載AppScan Enterprise PHP IAST 代理並將其部署到您的應用伺服器環境(Windows、Ubuntu 或 Red Hat)。PHP IAST 代理在運行時測試(手動或自動)期間監控您的運行中網絡應用程式,並向AppScan Enterprise報告漏洞。

開始之前

  • 確保您擁有 AppScan Enterprise 訪問權限,並具有管理應用程式和 IAST 代理的許可。
  • 識別目標應用程式在AppScan Enterprise。
  • 確認您在目標 PHP 應用伺服器(Windows、Ubuntu 或 Red Hat)上擁有管理員權限。
  • 確認您的 PHP 版本是 8.1.0 或更高版本。

執行這項作業的原因和時機

與 Java 或 .NET 的代理不同,PHP 代理需要使用下載包中包含的 ase-config.json 文件中的詳細信息來進行手動配置。您必須在伺服器上配置特定的環境變數,以便代理連接到AppScan Enterprise。

下載 PHP 代理

程序

  1. 登入AppScan Enterprise。
  2. 從應用程式列表中,導航至目標應用程式。
  3. 選擇應用程式標籤,然後點擊IAST Agents
  4. 按一下建立新代理程式
  5. 從代理類型列表中,選擇與您的 PHP 應用程式部署環境相匹配的選項:
    • PHP - Windows
    • PHP - Ubuntu
    • PHP - 紅帽
  6. 在代理名稱框中,輸入一個描述性的名稱以代表此代理實例。
  7. 點擊 下載代理程式
    代理 ZIP 套件會自動下載。

了解下載的套件

程序

  1. 找到下載的 ZIP 文件。
  2. 了解其內容:
    • 代理二進位檔案:
      • Windows: hcl_agent.dll
      • Ubuntu:hcl_agent.deb
      • 紅帽:hcl_agent.rpm
    • ase-config.json:一個包含此代理實例特定配置詳細信息的文件,包括手動伺服器配置所需的accessTokenhost值。
    • 許可文件:包含許可協議信息(例如,HCL 主許可協議)。

第3部分:部署代理(選擇適合您操作系統的部分)

在 Windows 上部署:

程序

  1. 將下載的代理 ZIP 文件內容提取到伺服器上的臨時位置。
  2. 將 PHP 配置為載入代理擴展:
    1. 找到您的 PHP 擴展目錄。打開命令提示符並運行:php -i | findstr "extension_dir"
    2. hcl_agent.dll 檔案(從解壓縮的檔案中)複製到步驟2a中找到的 PHP 擴展目錄中。
    3. 找到您正在使用的 php.ini 配置文件。在命令提示符中運行:php --ini | findstr "Loaded Configuration File"
    4. 使用文字編輯器編輯在步驟2c中找到的php.ini檔案。
    5. 在文件末尾添加以下行:extension=hcl_agent.dll
    6. 保存並關閉 php.ini 文件。
  3. 配置環境變數。從 ase-config.json 文件中檢索 accessTokenhost 值。
    註:
    • IAST_ACCESS_TOKENIAST_HOST 可以在伺服器上本地設定。例如,在 XAMPP 伺服器上,它們可以在 httpd.conf 檔案中設定。
    • 如果其他代理(Java、.NET、Node.js)安裝在同一台機器上,您必須在伺服器層級(方法B)而不是系統層級設置變數。

    方法 A:系統層級(預設)

    以系統管理員身份打開命令提示符,然後運行以下命令:
    將 IAST_ACCESS_TOKEN 設置為 "your_accessToken_from_ase-config.json" /M 將 IAST_HOST 設置為 "your_host_from_ase-config.json" /M

    方法 B:伺服器層級(XAMPP 範例)

    編輯您的 XAMPP 伺服器的 httpd.conf 文件,並在通常位於您的網頁根目錄的 <Directory> 區段中添加以下行:
    設置環境變數 IAST_HOST 為 "your_host_from_ase-config.json" 設置環境變數 IAST_ACCESS_TOKEN 為 "your_accessToken_from_ase-config.json"
  4. 重新啟動您的網頁伺服器(例如,Apache 服務,IIS)以套用更改。

在 Ubuntu 上部署:

程序

  1. 將下載的代理 ZIP 文件內容提取到伺服器上的臨時位置。
  2. 安裝代理程式包:
    1. 打開終端窗口。
    2. 確保 dpkg 可用。如果沒有,請安裝它(例如,sudo apt-get update && sudo apt-get install dpkg)。
    3. 導航 (cd) 到包含已解壓縮的 hcl_agent.deb 文件的目錄。
    4. 運行安裝命令:sudo dpkg -i hcl_agent.deb
      註:
      如果出現有關相依性的提示,您可能需要之後執行 sudo apt-get install -f
  3. 配置環境變數。從 ase-config.json 文件中檢索 accessTokenhost 值。
    註:
    • 為了使代理能夠正確地與網頁伺服器服務一起運行,必須為該服務持久地設置環境變數。在終端中使用export只會將它們設置為當前的會話。
    • 建議的方法是將SetEnv指令添加到您的 Apache 配置文件(例如,httpd.conf 或虛擬主機配置文件)中。

    編輯您的 Apache 配置文件,並添加以下行:

    設置環境變數 IAST_HOST 為 "your_host_from_ase-config.json" 設置環境變數 IAST_ACCESS_TOKEN 為 "your_accessToken_from_ase-config.json"
  4. 重新啟動您的網頁伺服器(例如,sudo service apache2 restartsudo service nginx restart)以應用更改。

在 Red Hat 上部署:

程序

  1. 將下載的代理 ZIP 檔案內容提取到伺服器上的臨時位置。
  2. 安裝代理程式套件:
    1. 打開一個終端窗口。
    2. 確保 rpm 可用。如果沒有,請安裝它(例如,sudo yum install rpm)。
    3. 導航 (cd) 到包含已解壓縮的 hcl_agent.rpm 文件的目錄。
    4. 運行安裝命令:sudo rpm -ivh hcl_agent.rpm
  3. 配置環境變數。從 ase-config.json 文件中檢索 accessTokenhost 的值。
    註:
    • 為了使代理能夠正確地與網頁伺服器服務運作,必須為該服務持久設置環境變數。在終端中使用export只會將它們設置為當前的會話。
    • 建議的方法是將SetEnv指令添加到您的 Apache 配置文件(例如,httpd.conf 或虛擬主機配置文件)中。

    編輯您的 Apache 配置文件並添加以下行:

    將環境變數 IAST_HOST 設置為 "your_host_from_ase-config.json" 將環境變數 IAST_ACCESS_TOKEN 設置為 "your_accessToken_from_ase-config.json"
  4. 重新啟動您的網頁伺服器(例如,sudo systemctl restart httpdsudo systemctl restart nginx)以應用更改。

結果

PHP IAST 代理已安裝並配置在您的應用伺服器上。在網頁伺服器重新啟動後,代理會嘗試使用提供的環境變數連接到 AppScan Enterprise。

下一步:

程序

  1. 在AppScan Enterprise中,導航至應用程式 > IAST代理,並確認新代理顯示為“已連接”狀態。
  2. 對您的應用程式進行測試(例如,功能測試、手動探索、DAST 掃描)。IAST代理監控此流量。
  3. 查看代理發現的 AppScan Enterprise 中報告的漏洞。