我們擅長(cháng)商業(yè)策略與用戶(hù)體驗的完美結合。
歡迎瀏覽我們的案例。
近日,谷歌開(kāi)源了 Sandboxed API(沙箱式 API)。該項目用于在 Linux 系統上運行的 C/C++ 庫,是谷歌公司內部多年來(lái)一直在數據中心使用的工具,可以幫助開(kāi)發(fā)人員免受惡意用戶(hù)的輸入和漏洞利用。
沙箱是什么?
許多軟件項目需要處理到外部數據,在安全方面會(huì )顯得有些不足。當解析外部數據的軟件庫足夠復雜時(shí),軟件會(huì )存在著(zhù)嚴重的安全隱患,容易成為安全漏洞的受害者,從而遭遇內存損壞或是像路徑遍歷的邏輯解析問(wèn)題。
一般的做法是將軟件隔離,這個(gè)過(guò)程就是“沙箱”。通過(guò)“沙箱”,開(kāi)發(fā)人員可以確保在解析用戶(hù)生成內容涉及的代碼時(shí),只訪(fǎng)問(wèn)必要的資源(文件、網(wǎng)絡(luò )連接和其他操作系統資源)。最壞的情況下,當潛在的攻擊者取得軟件項目范圍內的遠程代碼執行權限時(shí),沙盒技術(shù)可以將這些部分包含,從而保護其余的軟件基礎結構。
沙盒技術(shù)必須具有很強的抵御攻擊能力,從而充分保護操作系統的其余部分。同時(shí)沙箱必須足夠易于使用,以供軟件開(kāi)發(fā)人員使用。為了幫助完成這項任務(wù),谷歌開(kāi)源了 Sandboxed API,一個(gè)經(jīng)過(guò)實(shí)戰考驗的項目,可以為各個(gè)軟件庫創(chuàng )建安全策略。
Sandboxed API 用于訪(fǎng)問(wèn)沙盒庫中的各個(gè)軟件功能,也因此谷歌還公開(kāi)了核心沙盒項目 Sandbox2。Sandbox2 現在是 Sandboxed API 的一部分,提供了底層的沙盒原型。它也可以單獨用于隔離任意 Linux 進(jìn)程,可以視為更低級的 API。
Sandboxed API 怎么工作?
Sandboxed API 目前是針對用 C 語(yǔ)言編寫(xiě)的軟件庫實(shí)現的,未來(lái)可能增加更多編程語(yǔ)言的支持。
從高層次的角度看,Sandboxed API 將要加入沙箱的庫和其調用者分成兩個(gè)獨立的操作系統進(jìn)程:主機二進(jìn)制文件和沙箱。具體的工作流程是:實(shí)際的庫調用由主機端的 API 對象進(jìn)行編組,通過(guò)進(jìn)程間的通信發(fā)送到沙箱,沙箱的 RPC stub 會(huì )進(jìn)行解組,并將調用轉發(fā)到原始庫。
其中,API 對象(即圖中的 SAPI 對象)和 RPC stub 都由項目提供,前者由接口生成器自動(dòng)生成。用戶(hù)只需提供沙盒策略、允許底層庫進(jìn)行的一組系統調用,以及允許訪(fǎng)問(wèn)和使用的資源。這些準備好了之后,基于沙盒 API 的庫就可以輕松地在其他項目中重用了。
生成的 SAPI 對象的 API 類(lèi)似于原始庫的 API,不過(guò)會(huì )有額外的代碼出現。這些代碼用來(lái)設置沙箱,以及將內存傳入和傳出沙箱。但除此之外,代碼流保持不變。
未來(lái)計劃
Sandboxed API 和 Sandbox2 已經(jīng)被谷歌的許多團隊使用。雖然該項目已經(jīng)成熟,但除了維護之外,谷歌也做了一些未來(lái)的計劃:
支持更多的操作系統:目前只支持 Linux。開(kāi)發(fā)團隊將研究如何將 Sandboxed API 引入類(lèi) Unix 系統,如 BSD(FreeBSD,OpenBSD) 和 macOS。Windows 端是一項更難的任務(wù),還需要更多的基礎工作才能實(shí)現。
新的沙盒技術(shù):隨著(zhù)硬件虛擬化技術(shù)的流行,用沙盒將代碼限制在虛擬機中有了實(shí)現的可能性。
系統構建:目前是使用 Bazel 構建項目,這其中包括依賴(lài)項。但這不是每個(gè)人都想要的使用方式,因此 CMake 支持有著(zhù)很高的任務(wù)優(yōu)先級。
Sandboxed API 的傳播:使用 Sandboxed API 來(lái)保護開(kāi)源項目,有機會(huì )參與補丁獎勵計劃。
?。?a href="http://www.chemdevice.net">邯鄲網(wǎng)站建設)
小米應用商店發(fā)布消息稱(chēng) 持續開(kāi)展“APP 侵害用戶(hù)權益治理”系列行動(dòng) 11:37:04
騰訊云與CSIG成立政企業(yè)務(wù)線(xiàn) 加速數字技術(shù)在實(shí)體經(jīng)濟中的落地和應用 11:34:49
樂(lè )視回應還有400多人 期待新的朋友加入 11:29:25
亞馬遜表示 公司正在將其智能購物車(chē)擴展到馬薩諸塞州的一家全食店 10:18:04
三星在元宇宙平臺推出游戲 玩家可收集原材料制作三星產(chǎn)品 09:57:29
特斯拉加州San Mateo裁減229名員工 永久關(guān)閉該地區分公司 09:53:13