瞭解專用網站掃描

ASoC 提供來自雲端型掃描器(例如 SaaS)的動態應用程式安全測試 (DAST)。這個功能需要雲端型掃描器能夠存取受測的應用程式。公用的 Web 型應用程式可以掃描,沒有問題。但是,專用網站掃描 (PSS) 只有在新增網路元件(例如 VPN 或 Proxy),或將網路變更為允許掃描器存取 Web 應用程式的主機伺服器之後才可行。

PSS 通道作業

我們針對 PSS 的解決方案不會對客戶的網路進行特殊的變更,因此不會造成網路風險。在客戶的網路中設定的 PSS 用戶端只需要網際網路的連出存取權(直接或透過 HTTP Proxy),以及要掃描的網站存取權。

解決方案是由兩個端點組成(伺服器和用戶端),建立由客戶(用戶端)一端上端點起始的 TCP/IP 通道。

通道伺服器

此端點位於掃描器旁的 SaaS 網路,只會在掃描啟動時啟動。伺服器有兩「端」,由接聽連線(背對背伺服器)組成。

  • 第一個接聽來自通道用戶端的連入連線。這是通道端。
  • 第二個接聽來自掃描器的連入連線。這個部分是在模擬 HTTP Proxy,因此稱為 Proxy 端。

當來自用戶端的連線可用時,掃描器會將要求傳送給 Proxy 端,這一端接著埠轉遞至通道端的連入連線。當用戶端傳回回應時,回應會透過 Proxy 端轉遞回掃描器。

通道用戶端

此端點位在客戶網路內,並且會產生連接伺服器的 TCP/IP 連線。它會執行與通道伺服器相同的功能,差異在於此端點是由兩組用戶端連線(背對背用戶端)所組成。通道用戶端也有兩「端」。

  • 通道端是自通道伺服器連出的一組連線。
  • 用戶端是自掃描的伺服器(直接或透過 Proxy)連出的一組連線。

通道端會執行埠轉遞。

AppScan Presence

私有網站掃描通道仰賴稱為 AppScan Presence 的 SaaS 控制機制:一種從雲端服務接收要執行作業,然後觸發處理常式以執行工作的通訊通道。Presence 服務是輪詢服務,使用安全的 HTTP 通訊,持續輪詢雲端型服務是否有作業。

AppScan Presence 服務僅會從 SaaS 服務擷取作業、下載處理作業所需的資訊,以及觸發處理常式。在此情況下,作業是由通道用戶端處理,擷取的資訊是啟動通道作業用戶端連線至伺服器的必要資料。

執行掃描

如果要執行掃描,通道用戶端必須啟動且連線至伺服器。這是由 AppScan Presence 架構執行。

AppScan Presence 架構是由 Presence 服務(在通道用戶端機器上執行)所組成。Presence 服務會輪詢 Presence SaaS 伺服器,此伺服器在雲端上執行,並且指示掃描何時已就緒執行。服務之間的交換由掃描詳細資料組成,包含用戶端應連線的通道伺服器 IP 位址。此外,它會接收資訊,主動識別所連線的伺服器。相關詳細資訊在後續的「安全考量」一節。

一旦使用者要求專用掃描,並且選取 Presence 實例(掃描應該透過該實例來執行),系統會配置掃描代理程式,並啟動該代理程式的通道伺服器。接著作業會排入 SaaS 伺服器的佇列。此作業由 Presence 服務接受,該服務接著會使用相關的連線資訊來啟動通道用戶端。

安全考量

要考量到兩個重要的安全性層面:客戶的網路和通道連線的安全性。

解決方案不需要對客戶的網路進行任何變更。請務必記得,AppScan Presence 和 PSS 通道用戶端不需要任何特殊的讓步。這樣可讓客戶在執行 AppScan Presence 和 PSS 通道用戶端的主機機器上,套用組織安全原則。不需要變更組織防火牆(例如允許特定埠或 IP 位址的連入連線)。在大部分情況下,不需要變更組織防火牆(例如允許特定埠或 IP 位址的連入連線)。唯一的例外是:
  • 如果機器受限而無法直接連出網際網路存取,則必須容許管理 AppScan Presence 的機器通過。
  • 如果組織使用自己的憑證重新簽署 SSL/TLS 流量,則必須排除對 AppScan on Cloud 的連線,使得通訊不會中斷,且內建在架構中的安全機制可以正確運作。
在這種情況下,請確定將 ASoC 使用的 IP 範圍排除,使其無法重新簽署,或容許直接存取它們,並確定防火牆不會封鎖它們。

Presence ID

每個 Presence 服務都有用來作為其 ID 的獨特金鑰。這是用來識別 Presence 實例,並且提供正確的掃描作業。金鑰可以隨時更新,因此可以符合需要定期更新的組織安全原則。一旦伺服器上的金鑰更新,Presence 實例就會停止接收作業,直到 Presence 機器實際持有金鑰為止。

鑑別

通道伺服器和通道用戶端的相互信任相當重要,可防止從未驗證位置的外部存取專用網路。當掃描備妥可執行且通道伺服器已啟動時,將會產生私有伺服器金鑰和憑證,以及隨機用戶端金鑰(25 個英數字元)。伺服器憑證會隨著用戶端金鑰傳遞給通道用戶端,並隨附掃描作業詳細資料(透過 Presence 服務與 SaaS 服務之間的通訊)。然後通道用戶端和伺服器可以驗證遠端連線的身分。

伺服器憑證和用戶端金鑰在掃描完成之後隨即失效,且永不重複使用,即使是重新掃描時。

憑證符合不定期更新的最新 NIST 和 FIPS 標準(加密演算法、雜湊演算法和金鑰長度)。

轉移中資料保護

該通道連線使用 TLS 1.2 加密。通道用戶端會事先取得特定伺服器憑證,並使用該憑證來驗證 TLS 鑑別中的伺服器憑證是否為預期憑證。用戶端鑑別伺服器後,會將用戶端金鑰傳送至伺服器,讓伺服器能夠鑑別用戶端。傳遞經過此通道的資料是由掃描器與測試應用程式之間的要求和回應組成,因此屬於敏感資訊。為了保護資料,當資料在通道端之間轉移時,會使用這些一次性憑證和金鑰進行加密。