成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

NDSS 2025| 抖音集團(tuán)安全研究團(tuán)隊(duì)提出機(jī)密沙箱內(nèi)存管理方案WAVEN

安全
抖音集團(tuán)安全研究團(tuán)隊(duì)和南方科技大學(xué)可信系統(tǒng)安全實(shí)驗(yàn)室合作的研究論文《WAVEN: WebAssembly Memory Virtualization for Enclaves》,于近日入選信息安全領(lǐng)域國際頂會NDSS 2025。

一、概述

NDSS會議(Network and Distributed System Security Symposium)是網(wǎng)絡(luò)與信息安全領(lǐng)域的四大頂級會議之一,也是中國計(jì)算機(jī)學(xué)會推薦的網(wǎng)絡(luò)與信息安全領(lǐng)域A類國際學(xué)術(shù)會議。會議以其高水準(zhǔn)和創(chuàng)新性著稱,近五年平均錄用率約為17%,涵蓋密碼學(xué)、攻擊防御、隱私保護(hù)等主題,是推動信息安全發(fā)展的重要平臺。

本次入選的研究論文聚焦于為運(yùn)行在可信執(zhí)行環(huán)境(TEE)內(nèi)的WebAssembly(Wasm)運(yùn)行時設(shè)計(jì)一套適合機(jī)密計(jì)算的內(nèi)存管理方案,以實(shí)現(xiàn)機(jī)密計(jì)算環(huán)境中Wasm模塊之間的高效數(shù)據(jù)共享,并支持細(xì)粒度的內(nèi)存訪問控制。

圖片

二、研究背景

可信執(zhí)行環(huán)境(TrustedExecution Environments, TEEs)是一種硬件擴(kuò)展,為機(jī)密應(yīng)用程序提供了名為飛地(enclave)的安全容器,能夠有效保護(hù)私有數(shù)據(jù)及計(jì)算的機(jī)密性和完整性。英特爾SGX是目前廣泛部署的TEE之一,其成功極大地推動了機(jī)密計(jì)算范式的發(fā)展,并為WebAssembly(Wasm)帶來了新的機(jī)遇。

Wasm是一種新的可移植、輕量級的二進(jìn)制格式,也是許多高級語言(如C、C++和Rust等)的編譯目標(biāo)。用其他語言編寫的程序首先被編譯成Wasm格式,然后可以在Wasm運(yùn)行時中作為模塊執(zhí)行。通過強(qiáng)制每個模塊只能訪問其自己的內(nèi)存區(qū)域,Wasm為不受信任的代碼提供了一個安全的沙箱執(zhí)行環(huán)境,這是其最顯著的安全特性。由于機(jī)密計(jì)算平臺需要同時執(zhí)行來自多個用戶的不可信代碼,因此需要在飛地內(nèi)實(shí)現(xiàn)多租戶和隔離功能,而這正是Wasm所提供的。

Wasm和TEE的結(jié)合實(shí)現(xiàn)了飛地內(nèi)多租戶隔離,使得這一搭配非常適合機(jī)密計(jì)算場景。然而,Wasm的線性內(nèi)存模型缺乏有效的跨模塊數(shù)據(jù)共享和細(xì)粒度的內(nèi)存訪問控制,這大大限制了其在機(jī)密計(jì)算中的應(yīng)用。在機(jī)密計(jì)算領(lǐng)域,常見的情況是多個數(shù)據(jù)用戶共享一份機(jī)密數(shù)據(jù),并且只允許少數(shù)特權(quán)用戶(例如數(shù)據(jù)所有者)對數(shù)據(jù)進(jìn)行修改,例如機(jī)密函數(shù)即服務(wù)(FaaS)平臺,機(jī)密數(shù)據(jù)交易市場等場景(如下圖所示)。

圖片

針對上述問題,本項(xiàng)目主要研究英特爾SGX內(nèi)Wasm運(yùn)行時的內(nèi)存管理,以使“Wasm+TEE”這一設(shè)計(jì)范式能夠更好地契合機(jī)密計(jì)算需求。具體而言,本項(xiàng)目提出了一種面向可信Wasm運(yùn)行時的內(nèi)存虛擬化方案,在SGX飛地內(nèi)實(shí)現(xiàn)了多個模塊之間的安全高效數(shù)據(jù)共享。

三、技術(shù)方案

為了應(yīng)對前述挑戰(zhàn),研究團(tuán)隊(duì)設(shè)計(jì)了WAVEN(WebAssembly Memory Virtualization for Enclaves)內(nèi)存虛擬化方案。WAVEN旨在支持飛地內(nèi)Wasm模塊間的高效內(nèi)存共享,并實(shí)現(xiàn)內(nèi)存頁粒度的訪問控制。其核心設(shè)計(jì)包括以下幾個方面:

3.1 分頁方案

研究論文中提出的分頁方案支持任意頁大小,但根據(jù)Wasm規(guī)范,我們將頁面大小設(shè)置為64KB。對于一個32位的Wasm地址,其較高的16位表示頁索引,而較低的16位表示頁面內(nèi)的偏移量。

一個Wasm模塊最多擁有4GB內(nèi)存空間,即65536個內(nèi)存頁面。頁表將Wasm模塊的32位地址(0x00000000~0xFFFFFFFF)轉(zhuǎn)換為Wasm運(yùn)行時中的64位虛擬地址。我們采用了單級頁表來減少查表次數(shù),從而減少內(nèi)存虛擬化帶來的開銷。因此,一個模塊所對應(yīng)的頁表由65536個條目組成,每個條目包含一個64位的虛擬地址。在這種設(shè)置下,一個頁表僅占用512KB內(nèi)存空間。

在將Wasm地址翻譯成64位虛擬地址的過程中,Wasm運(yùn)行時首先提取Wasm地址高16位作為頁索引,查找頁表以獲取該Wasm頁面的虛擬地址,然后加上低16位所代表的頁內(nèi)偏移量來計(jì)算要訪問的虛擬地址。

圖片

上圖展示了前述分頁方案,箭頭表示從Wasm頁到虛擬頁的映射(即一個頁表項(xiàng))。注意到,相鄰的Wasm頁面可以映射到非相鄰的虛擬頁面。與線性內(nèi)存模型相比,分頁在該地址翻譯過程中引入了一個額外的內(nèi)存讀取。

3.2 內(nèi)存隔離與訪問控制

WAVEN通過控制頁表項(xiàng)來實(shí)現(xiàn)不同Wasm模塊間的內(nèi)存隔離。在模塊實(shí)例化過程中,Wasm運(yùn)行時不僅為其分配初始內(nèi)存頁,同時也為其創(chuàng)建了一個64KB大小的空異常頁。對于初始內(nèi)存空間內(nèi)的Wasm地址(合法內(nèi)存訪問),Wasm運(yùn)行時將它們對應(yīng)的頁表項(xiàng)設(shè)置為所分配的內(nèi)存頁的虛擬地址;對于初始內(nèi)存空間之外的Wasm地址(越界內(nèi)存訪問),Wasm運(yùn)行時會修改相關(guān)頁表項(xiàng)使得他們指向異常頁面。因此,當(dāng)Wasm模塊執(zhí)行越界訪問時,地址翻譯流程會將非法地址指向模塊的異常頁,這可以有效地防止該模塊干擾或者訪問其他模塊的內(nèi)存。

與現(xiàn)代計(jì)算機(jī)系統(tǒng)中的分頁方案類似,WAVEN也需要處理未對齊內(nèi)存訪問:完全位于64KB頁面內(nèi)的非對齊內(nèi)存訪問不需要關(guān)注,而那些跨越頁面邊界的非對齊內(nèi)存訪問則需要特殊處理。考慮到跨頁訪問的高開銷和低發(fā)生概率,WAVEN禁止跨頁訪問——它為每個虛擬頁填充若干個字節(jié),以確保所有內(nèi)存訪問都位于單個虛擬頁內(nèi)。由于一個Wasm訪存指令最多讀寫8個字節(jié)(不考慮SIMD指令),我們將頁填充大小設(shè)為7字節(jié)。

訪問控制方面,由于每個Wasm模塊都有自己的頁表,WAVEN利用雙頁表來實(shí)現(xiàn)高效的內(nèi)存訪問控制。

具體而言,WAVEN使用兩個獨(dú)立的頁表來進(jìn)行讀取和寫操作:寫頁表處理內(nèi)存寫操作,并存儲可寫Wasm頁的虛擬地址;讀頁面表則用于內(nèi)存讀取,并存儲可讀Wasm頁的虛擬地址??蓪慦asm頁的頁表項(xiàng)在讀、寫頁表內(nèi)是相同的,均指向?qū)?yīng)虛擬頁的虛擬地址。對于只讀頁而言,在讀頁表中與只讀頁指向有效的虛擬地址;而在寫頁表中,只讀頁指向異常頁的虛擬地址。

圖片

上圖是對WAVEN內(nèi)存隔離和訪問控制方案的說明,異常頁用紅色高亮部分表示,頁填充則用黑色細(xì)長條矩形表示。同時,在該模塊的讀頁表中,Wasm頁面3被映射到一個普通的虛擬頁面;但是,在寫頁表中,它被映射到異常頁。因此,該模塊可以讀取Wasm頁面3的內(nèi)容,但不能對其進(jìn)行修改。這種細(xì)粒度的訪問控制在共享內(nèi)存場景中特別有用。在共享內(nèi)存場景中,多個Wasm模塊可能需要讀取共享內(nèi)容,但不能隨意修改它。此外,只讀頁面的引入也提高了Wasm內(nèi)存管理的安全性。

3.3 內(nèi)存重映射

在WAVEN中,頁表項(xiàng)將Wasm頁面映射到虛擬頁面,這允許Wasm運(yùn)行時特定覆寫頁表項(xiàng)來將Wasm頁面輕松地重新映射到另一個虛擬頁面。這種內(nèi)存重映射特性極大地促進(jìn)了多個Wasm模塊之間的共享內(nèi)存,因?yàn)椴煌K可以將它們的Wasm頁面都映射到相同的虛擬頁面上,實(shí)現(xiàn)數(shù)據(jù)共享。此外,通過將內(nèi)存重映射與前述內(nèi)存訪問控制相結(jié)合,可以對共享內(nèi)存區(qū)域規(guī)定只讀權(quán)限,這意味著一些模塊只能從共享內(nèi)存中讀取內(nèi)容,而另一些模塊還可以擁有修改權(quán)限。

四、總結(jié)

WAVEN通過創(chuàng)新的設(shè)計(jì)方案解決了Wasm線性內(nèi)存模型的局限,滿足了機(jī)密計(jì)算中對高效數(shù)據(jù)共享和訪問控制的需求。其實(shí)現(xiàn)已在WAMR運(yùn)行時及英特爾SGX環(huán)境中成功部署,并在多種測試中展示了良好的性能表現(xiàn)。研究結(jié)果表明,WAVEN在PolyBench測試套件平均引入10.42%的開銷,在高并發(fā)數(shù)據(jù)共享場景下性能最高提升2.4倍。

WAVEN目前已經(jīng)被納入到Jeddak數(shù)據(jù)安全沙箱的能力矩陣中,在端云融合計(jì)算、數(shù)據(jù)共享計(jì)算等多類場景模式下,為用戶挖掘和創(chuàng)造更多數(shù)據(jù)價(jià)值。

責(zé)任編輯:龐桂玉 來源: 字節(jié)跳動技術(shù)團(tuán)隊(duì)
相關(guān)推薦

2024-12-25 15:23:26

2024-10-31 08:22:56

2024-07-18 08:33:19

2016-09-06 21:37:41

2023-03-28 08:28:34

2024-01-22 09:17:35

2022-07-20 22:55:39

直播OOM抖動

2010-01-05 20:05:24

2024-11-13 08:47:24

2025-03-18 07:00:00

Portcullis大型語言模型

2025-01-09 08:22:05

2023-09-07 17:11:07

畫質(zhì)評估工具

2010-07-29 15:56:04

FlexSocket

2016-02-24 22:26:04

2021-06-28 05:19:32

抖音電腦

2022-06-06 12:19:08

抖音功耗優(yōu)化Android 應(yīng)用

2011-12-08 15:02:14

2012-10-23 16:20:20

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 国产美女h视频 | 国产欧美精品一区二区 | av乱码| 亚洲欧美综合 | 美女高潮网站 | 国产区精品 | 国产日韩欧美在线播放 | 在线观看第一页 | av日韩在线播放 | 国产精品久久久久久久久免费桃花 | 欧美视频在线看 | 天天干天天爽 | 欧美精品成人 | 日韩欧美在线观看 | 欧美成人激情 | 九色在线观看 | 亚洲精品91 | 亚洲一区二区三区在线 | 久久丁香 | 欧美精品一二三区 | 午夜精品久久久久久久久久久久久 | 日韩精品影院 | 日本一区二区三区在线观看 | 国产精品美女www爽爽爽 | 欧美视频在线免费 | 久久国产精品视频观看 | 久久成人国产精品 | 久久人体视频 | 欧美日韩国产一区二区 | 国产精品美女久久久久久免费 | 亚洲精品久久久久中文字幕欢迎你 | 成人在线观看网站 | 亚洲网站在线观看 | 91久操视频 | 免费一级毛片 | 亚洲精品一区二区三区丝袜 | 欧美日韩激情 | 激情欧美一区二区三区中文字幕 | 毛片站 | 国产成人免费视频网站视频社区 | 国产毛片久久久 |