alias vprod='git add $(git rev-parse --show-toplevel) && git commit -m "some fixes" && git push --force origin master'🔥23🤡11
  #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 в нативный код, что впоследствии поменяли, но эта более старая статья содержит больше технических деталей.
👍3🔥1
  Почему "маменькин сыночек" является оскорблением? Буквально все мужчины являются сынами матерей.
🥴7
  Допустимые ключевые слова для определения функции (можно выбрать несколько):
  Anonymous Poll
    52%
    function
      
    4%
    fctn
      
    57%
    func
      
    46%
    fun
      
    77%
    fn
      
    15%
    f
      
    9%
    sub
      
    54%
    def
      
    13%
    defun
      
    31%
    let
      
    😁4🤝1