AWS宣布開源SnapChange和Cedar兩個項目
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能夠按預期工作,我們希望人們用它,去拆解它。”