本主題說明如何在 Web 伺服器上建立 .NET IAST 代理程式類型。
開始之前
如果執行 IAST 的伺服器位於 Proxy 之後,則 IAST .NET 代理程式支援以兩種方式來配置傳出 HTTP Proxy:
- 系統 Proxy 設定,會自動從標準 OS 設定或 HTTP_PROXY, HTTPS_PROXY 環境變數偵測。
- IAST 專用 Proxy 設定,透過應用程式自身的環境變數定義。配置方式如下:
IAST_PROXY_HOST={proxy_ip}
IAST_Deploy_dot_net.html
如已設定應用程式專用變數,則會優先使用;否則會使用系統 Proxy。如果兩者皆未定義,則應用程式會直接連線。Proxy 設定會在啟動時讀取;若有變更則需要重新啟動。檢查 IAST 日誌,確認 Proxy 已正確配置。
執行這項作業的原因和時機
使用 NuGet 套件管理程式,將 IAST 代理程式新增至您的應用程式。下列範例適用於 Visual Studio,但其他 IDE 的程序也類似如此。
程序
-
設定 NuGet 套件來源:
-
開啟 Visual Studio,導覽至「功能表 > 工具 > 選項 > NuGet 套件管理程式 > 套件來源」。
-
選取包含
SecAgent 套件的資料夾。
-
按一下 + 符號並為新的來源命名。
-
識別 Web 伺服器專案:IAST 代理程式只能安裝在您通常負責用來提供 Web 內容的 Web 伺服器專案上(例如:ASP.NET Core 或 ASP.NET MVC 專案)。尋找如 Startup.cs、Controllers,或 wwwroot 資料夾等檔案來識別這些專案。
-
安裝 IAST 代理程式 NuGet:在「解決方案總管」中,於 Web 伺服器專案上按一下滑鼠右鍵,然後選取「管理 NuGet 套件」。搜尋
com.HCL.AppScan.IAST.agent,並選取結果中的第一個套件。按一下安裝。為解決方案中的每個 Web 伺服器專案重複此步驟。
-
設定環境變數(僅限 .NET Core):如果您使用 .NET Core,請設定下列環境變數:
"ASPNETCORE_HOSTINGSTARTUPASSEMBLIES": "SecagentCore"
-
驗證安裝:驗證安裝成功。
-
若為 .NET Framework:開啟 web.config 檔案,並確認 nuget 安裝已新增下列行。如果沒有自動新增這些行,則表示安裝失敗:
<system.webServer>
<modules>
<add name="SecagentModule" type="Secagent.SecagentModule" preCondition="managedHandler" />
</modules>
</system.webServer>
...
<appSettings>
<add key="IASTAgentKey" value="<token to access ASoC IAST session>" />
<add key="IASTHost" value="URL to ASoC host, e.g. /https://cloud.appscan.com/IAST/" />
<add key="IASTActive" value="true" />
</appSettings>
-
若為 .NET Core:確認已將 asoc-config.json 檔案新增至專案的根資料夾。
結果
IAST 代理程式會在您使用或測試應用程式時監視要求,並回報安全問題(執行功能測試、執行動態掃描,或手動探索應用程式)。