Lucent Sky AVM:常見問題

相容性

Lucent Sky AVM 相容於使用 .NET、ASP、Android、C/C++、Go、iOS、JDK、PHP、Python、Ruby、Visual Basic 開發的應用程式。它也支援靜態網站以及附加的程式碼檔案,例如 ECMAScript、SQL、XML。

Lucent Sky AVM 和使用 C#、VB.NET 以及 .NET Framework 2.0 至 4.8、.NET Core 1.0 至 3.1、.NET 5 至 7 所開發的應用程式相容。

Lucent Sky AVM 和使用 JDK 1.5 至 17 所開發的應用程式相容。

Lucent Sky AVM 和使用 PHP 4 至 8 所開發的應用程式相容。

以 C 來說,有支援 C99 和 C17。以 C++ 來說,有支援 C++98 至 C++20。雖然不在支援清單中,但使用較舊的標準(例如 C89 和 C90)所開發的應用程式一般來說也能夠正常被掃描。

Lucent Sky AVM 和使用 Python 2 至 3.9 所開發的應用程式相容。

Lucent Sky AVM 支援為 Android SDK(C#、ECMAScript、Java、Kotlin)、iOS(C#、ECMAScript、Objective-C、Swift)和 UWP(C#、VB.NET)開發的行動應用程式。

佈署與整合

Lucent Sky AVM 有 3 種佈署方式:雲端(Microsoft Azure、Rackspace、Amazon AWS)、以軟體形式安裝在 Windows 伺服器中,或是預先設定好的硬體。你可以在技術規格中找到系統需求資訊。

Lucent Sky AVM 的更新分為兩類,次要更新和維護更新。次要更新約每三至四個月推出,著重於新功能(例如新的識別演算法、修正演算法或編譯器),以及對於新的基準的支援(例如新的弱點類別和新版本的框架及函式庫)。維護更新則在每個次要更新之間視需要推出,著重於產品問題的修正以及其他緊急的更新。此外,雲端推送的威脅情報則提供即時資訊來識別不安全的軟體相依性。

Lucent Sky AVM 透過 CLI 或 IDE 外掛元件和版本控制系統,例如 Azure DevOps (TFS)、CVS、Git、SVN,整合。了解更多關於如何整合 Lucent Sky AVM 和你的 CI 或組建伺服器。

Lucent Sky AVM 透過 CLI 或 API 能和大多數的 CI 伺服器和組建伺服器整合。了解更多關於如何整合 Lucent Sky AVM 和你的 CI 或組建伺服器。

分析

掃描一個應用程式所需要的時間取決於應用程式的規模和複雜度,以及執行 Lucent Sky AVM 的硬體規格。一個一百萬萬行程式碼的應用程式通常可在 30 至 60 分鐘內掃描完成。

如果一個應用程式是由多個較小的專案或模組組成(多數大型應用程式都是),建議逐一或以小組方式掃描並修正這些專案和模組的弱點。因為 Lucent Sky AVM 使用混成掃描,逐一掃瞄專案和一次掃描整個應用程式的掃描範圍和精準度相同,但效率較高。

Lucent Sky AVM 掃描過的最大應用程式有超過五百萬行程式碼。但為了提升分析和修正的效率,建議將大型程式的各專案分開掃描,而非一次掃描整個應用程式。這也有助降低掃描時所需的硬體需求。

Lucent Sky AVM 有兩種掃描模式,智慧分析和完整分析。智慧分析會自動偵測需要掃描的程式碼。完整分析會掃描所有程式碼和函式庫,使用者亦可依照命名空間和類別名稱來指定要掃描的部分。

因為 Lucent Sky AVM 用來修正弱點的脈絡和意向資訊經常會跨越模組和類別,因此建議讓 Lucent Sky AVM 選擇掃描範圍。

第三方函式庫,不論是 .dll 或 .jar 檔案等二進位形式或程式碼形式,都會和應用程式本身一起進行二進位和程式碼分析,來找出其中未知的弱點。此外函式庫和其他的相依性也會進行軟體組成分析,來找出其中已知的弱點。未知的弱點會有 Instant Fix 和修正建議,已知的弱點則會用相依性更新指引。

Lucent Sky AVM 使用多級混成分析做為修正演算法的基礎。資料流、控制流、語意和意向分析不僅識別弱點的位置,還能獲得弱點的脈絡。透過意向分析,Lucent Sky AVM 在發現弱點時可評估每個弱點所帶來的風險,並排除風險極低的弱點。因此,和 SAST 工具相比,Lucent Sky AVM 有較低的誤報機率。對於仍然存在的誤報,使用者可以使用抑制功能,讓這些結果在未來的掃描中不會出現。

弱點修正

Lucent Sky AVM 修正弱點的方式和開發者相同。它使用特定技術框架中內建的安全功能來修正弱點。例如使用參數化查詢來修正 .NET 和 Java 應用程式中的 SQL injection。除此之外,當內建的安全功能無法或不足以修正某個弱點時,則會使用一個名為 APL 的安全函式庫來修正弱點。

APL(Application Protection Library)是 Lucent Sky 以多個常見的安全函式庫如 OWASP ESAPI 和 Microsoft WPL 為基礎所開發的安全函式庫。每一個 Lucent Sky AVM 標準版或企業版訂閱,都包含了 APL 程式碼的永久授權。使用者也可以修改 APL 以符合應用程式或組織的需求。另外 Lucent Sky AVM 訂閱到期了,使用者也可以繼續使用 APL。

Lucent Sky AVM 能自動修正絕大多數因不安全的實作所導致的弱點,例如注入問題、XSS 和路徑竄改等。Lucent Sky AVM 會對這些弱點產生 Instant Fix,可以直接插入程式碼中並完成修正。至於因為不安全的設計所導致的弱點,例如將資料儲存在不安全的位置或是使用過時的加密演算法,則因為需要開發者的調整而無法被自動修正。Lucent Sky AVM 會依照這些弱點的脈絡,個別產生修正建議來些協助開發者了解並修正這種類型的弱點。

Lucent Sky AVM 的修正演算法能識別脈絡和意向,也包含多個防錯機制,來避免不安全的程式碼的原始邏輯或行為受到影響。然而,任何程式碼的變更都有可能「弄壞」應用程式。因此,被 Lucent Sky AVM 修正過的應用程式仍應該通過標準的測試和品管程序,就如同一個開發者對應用程式做了變更一樣。

因為弱點是透過修改程式碼來修正,對效能的影響極小。根據內部測試和使用者回報的數據,一個應用程式經由 Lucent Sky AVM 修正之後,99% 的請求的回應時間和原始、不安全的應用程式相同。和 WAF 或 RASP 相比,熱門的 WAF 或 RASP 解決方案對效能的影響,大約是 Instant Fix 對效能影響的 18 倍(雖然將 Lucent Sky AVM 和 WAF 或 RASP 做比較並不適當)。你可以在這篇網誌文章 Lucent Sky works with New Relic to put offline security into runtime analytics 中了解更多關於效能影響的資訊。

報告

  • 互動式、數位簽章的 HTML 報告,具有篩選和搜尋弱點的能力
  • PDF 報告
  • 數位簽章的 XML 報告
  • 透過 WCF API 直接存取資料庫

授權

Lucent Sky AVM 授權包含使用者用戶端存取授權(使用者 CAL)和處理器授權。用戶端存取授權決定能存取 Lucent Sky AVM 伺服器的使用者數目上限,處理器授權則決定 Lucent Sky AVM 伺服器可使用的處理器數目以及同時可以進行的掃描數目。要了解更多關於授權結構的資訊,請參考 Lucent Sky AVM Server 授權概觀

所有 Lucent Sky AVM 標準版和企業版的授權都允許在授權範圍內無限次數的掃描。一個授權可以同時進行多個掃描。

不需要。修正過的應用程式不需要任何 Lucent Sky 授權即可運作。即使你的 Lucent Sky AVM 授權過期,它們也會持續運作。

Lucent Sky AVM 授權允許你掃描所有目前已有以及授權期間中增加的技術框架和語言。

為了準確地表示一個應用程式的大小,Lucent Sky AVM 檢查應用程式的行數,以及使用函式庫的大小。常見的第三方函式庫(例如 Entity Framework 和 Spring MVC) 不會被計算在函式庫大小限制中。

如果你的 Lucent Sky AVM 授權使用 LOCe(等效行數)限制,你可以繼續使用或轉換為行數+函式庫大小限制。

每個授權的使用者都可以同時從多個位置和介面(例如 web 介面、IDE 外掛元件和命令列界面)存取 Lucent Sky AVM。

Lucent Sky AVM 僅能被用來掃描被授權人直接擁有或開發的應用程式。掃描第三方(包括被授權人的關係企業)的應用程式是禁止的。如果你是服務提供者想使用 Lucent Sky AVM 提供服務,或有其他授權問題,請連絡 Lucent Sky 技術支援,我們的授權工程師會與你連絡。

客製化與維護

可以。掃描開始前,使用者可以選擇開啟或關閉各種來源(例如 web requset 或 database) 和規則(例如 cross-site scripting 和 SQL injection)來改變會被識別的弱點類型。進階的使用者若要細部調整 Lucent Sky AVM 的分析行為,也可以直接修改規則套件(一組規範什麼是弱點的 XML 檔案)。要了解更多關於如何客製化規則套件,請連絡 Lucent Sky 技術支援

可以。Lucent Sky AVM 預設使用業界標準和最佳建議來修正弱點。使用者可以透過修改規則套件來變更修正演算法的行為。舉例來說,使用者可以指定「對於所有 .NET 應用程式中從 database 發生的 privacy violation 弱點,使用我的公司的標準 DLP 函式庫來修正它們。」要了解更多關於如何客製化規則套件,請連絡 Lucent Sky 技術支援

將 Lucent Sky AVM 與安全測試產品一起使用

SAST 工具經常是由資訊安全團隊使用,並且著重於發現弱點以及確保上線應用程式的安全等級。Lucent Sky AVM 多半是由開發團隊使用,透過弱點修正來提升軟體開發流程的效率。許多企業和組織選擇將 Lucent Sky AVM 與既有的 SAST 工具共同使用-透過在 SDLC 的早期自動化修正弱點,來大幅降低應用程式上線 SAST 掃描時剩餘的弱點數量。

不一定。許多企業和組織在軟體開發流程的尾聲或應用程式已經上線後,才進行安全檢測。在這樣的情況下,Lucent Sky AVM 適合在程式開發階段由開發者使用,能夠大幅降低測試前程式中的弱點數量以及程式碼在開發團隊與資訊安全團隊間來回的時間。

對於已經上線且被安全檢測找出需修正弱點的應用程式,使用 Lucent Sky AVM 使用於一般需要人工進行修正的階段。Lucent Sky AVM 掃描程式碼並產生修正後的應用程式後,應用程式再次測試後即可重新上線。

Lucent Sky AVM 可以被設定來修正特定 SAST 工具所識別的弱點,例如 Checkmarx CxSAST、Fortify SCA、Klocwork。要了解更多關於如何使用 Lucent Sky AVM 來加速修正你的 SAST 工具所識別的弱點,請告訴我們,我們的團隊成員會和你連絡。
Try Lucent Sky AVM