AWS近日表示將開源兩個項目,一個項目是用於查找軟體漏洞的新模糊測試工具,另一個是用於控制應用訪問的授權策略語言。
AWS是在Linux基金會年度開源峰會上公布這些新工具的,這些工具都以安全為重點。AWS公司表示,就SnapChange而言,這是一種新的模糊測試工具,讓開發人員和研究人員能夠試驗「快照模糊測試」。
模糊測試是一種用於發現軟體(尤其是開源項目)中安全問題的技術,可以監視系統在處理隨機數據時的行為方式,例如可能涉及為呈現圖像的應用更改樣本JPEG文件,然後在該應用中打開該文件。如果應用崩潰,則可能是存在應用安全問題。
AWS公司開源戰略和營銷總監David Nalley表示,SnapChange建立在這個概念之上,讓目標應用能夠通過最少量的修改進行模糊測試。他說,模糊測試工具在行業中得到廣泛使用,「近年來幫助根除了數百個安全漏洞」。
Nalley解釋說,SnapChange不是唯一的模糊測試工具,但它的獨特之處在於,它不需要用戶重寫底層Linux核心或者使用修改後的基於核心的虛擬機。相反,它可以與現有Linux核心和現有KVM協同工作,從而降低研究門檻,同時也擴展到數十個處理器核心。他說:「SnapChange將使模糊測試更高效。」
據他說,他們最初並沒有打算把SnapChange作為一個獨立的項目。它是由AWS的Find & Fix(F2)威脅搜尋研究團隊開發的,該團隊的任務是不僅要查找漏洞,還要嘗試修補這些漏洞。他說:「該團隊必須開發大量工具來進行大規模的安全研究,該工具就是其中之一。」
儘管AWS計劃通過增加新特性和功能支持SnapChange,但Nalley表示,AWS希望與研究群體展開合作,從長遠來看打造一個更強大的工具。他說:「AWS在開源供應鏈安全方面擁有既得利益,我們在開源方面有著共同的命運。」
此次發布的第二個工具是Cedar,這是Amazon Verified Permissions和AWS Verified Access託管服務使用的授權策略語言。
Cedar既是一種開源語言,也是一種軟體開發工具包,可用於編寫和實施應用的授權策略。開發人員使用Cedar可以對照片共享應用中的圖像、微服務集群中的計算節點、或者工作流自動化平台中的組件等資源進行訪問控制。它的靈活性讓開發人員能夠將細粒度的權限指定為Cedar策略,並通過調用Cedar SDK的授權引擎來授權訪問請求。
Nalley說,Cedar的策略語言是圍繞使用基於數學證明的「自動推理」概念編寫的。自動推理超越了測試驅動的開發範疇,利用數學來確保策略實際上是按照開發人員要求進行。 根據Nalley的說法,如果儘可能實現自動化,則更容易確保策略和限制的正確性。他解釋說:「你可以使用已經存在的數學證明,來證明一個程序將以特定的方式工作。」
儘管Cedar不能通過數學證明對所有事情實施自動化,但它是很有用的,因為它讓開發人員可以專注於僅測試策略不起作用的那些邊緣情況。
Nalley說,AWS開源Cedar主要是為了透明性,這樣開發人員就可以看到它是按預期工作的。「我們希望客戶相信Cedar能夠按預期工作,我們希望人們用它,去拆解它。」