#prog #article
WebAssembly and Back Again: Fine-Grained Sandboxing in Firefox 95
Статья от 2021 года о технологии сендбоксинга компонентов с низким оверхедом, в которой неожиданно пригождается WASM. Базовая идея проста: скомпилировать отдельные компоненты в WASM, чтобы убедиться в их достаточной изолированности и в том, что они не вылезают за пределы своей памяти, а затем при помощи wasm2c перевести в сишный код, который может линковаться с остальным. Этот подход позволяет использовать весь доступный тулинг для отладки и профилировки, а также позволяет компилятору инлайнить код через границу между доверенным кодом и кодом в песочнице, и при этом вносит довольно малый оверхед.
Не смотря на изоляцию, код внутри песочницы всё ещё может выдавать значения, которые могут заставить хостовый код исполнять нежелательные действия. Для того, чтобы снизить риски, был разработан специальный фреймворк RLBox, который позволяет автоматизировать изоляцию компонентов и помечать данные, приходящие из песочницы. Это позволяет убедиться, что каждое значение из песочницы явно валидируется перед передачей в основной код.
Статья от 2020 года Securing Firefox with WebAssembly рассказывает о прототипе этого подхода. На этапе прототипирования разработчики использовали Cranelift для компиляции WASM в нативный код, что впоследствии поменяли, но эта более старая статья содержит больше технических деталей.
WebAssembly and Back Again: Fine-Grained Sandboxing in Firefox 95
Статья от 2021 года о технологии сендбоксинга компонентов с низким оверхедом, в которой неожиданно пригождается WASM. Базовая идея проста: скомпилировать отдельные компоненты в WASM, чтобы убедиться в их достаточной изолированности и в том, что они не вылезают за пределы своей памяти, а затем при помощи wasm2c перевести в сишный код, который может линковаться с остальным. Этот подход позволяет использовать весь доступный тулинг для отладки и профилировки, а также позволяет компилятору инлайнить код через границу между доверенным кодом и кодом в песочнице, и при этом вносит довольно малый оверхед.
Не смотря на изоляцию, код внутри песочницы всё ещё может выдавать значения, которые могут заставить хостовый код исполнять нежелательные действия. Для того, чтобы снизить риски, был разработан специальный фреймворк RLBox, который позволяет автоматизировать изоляцию компонентов и помечать данные, приходящие из песочницы. Это позволяет убедиться, что каждое значение из песочницы явно валидируется перед передачей в основной код.
Статья от 2020 года Securing Firefox with WebAssembly рассказывает о прототипе этого подхода. На этапе прототипирования разработчики использовали Cranelift для компиляции WASM в нативный код, что впоследствии поменяли, но эта более старая статья содержит больше технических деталей.
Почему "маменькин сыночек" является оскорблением? Буквально все мужчины являются сынами матерей.
Допустимые ключевые слова для определения функции (можно выбрать несколько):
Anonymous Poll
52%
function
4%
fctn
57%
func
45%
fun
77%
fn
15%
f
9%
sub
54%
def
12%
defun
32%
let
#лингво #article
Впечатляющий обзор множества статей касательно обработки языка мозгом, его когнитивных способностях и связи между ними. Общий объём аргументов даёт основания полагать, что пресловутая гипотеза Сепира-Уорфа таки неверна.
BTW ссылка на Nature в посте ниже с пейволлом, так что вот PDF.
(thanks @al_tch)
Впечатляющий обзор множества статей касательно обработки языка мозгом, его когнитивных способностях и связи между ними. Общий объём аргументов даёт основания полагать, что пресловутая гипотеза Сепира-Уорфа таки неверна.
BTW ссылка на Nature в посте ниже с пейволлом, так что вот PDF.
(thanks @al_tch)