URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 129954
[ Назад ]

Исходное сообщение
"Критическая уязвимость в Wasmtime, runtime для WebAssembly-приложений"

Отправлено opennews , 10-Мрт-23 18:12 
В корректирующих обновлениях Wasmtime 6.0.1, 5.0.1 и 4.0.1 устранена уязвимость (CVE-2023-26489), которой присвоен критический уровень опасности. Уязвимость позволяет организовать запись  данных в области памяти вне границы, допустимой для изолированного WebAssembly-кода, что потенциально может быть использовано атакующим для организации выполнения своего кода вне изолированного окружения WASI...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=58775


Содержание

Сообщения в этом обсуждении
"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Иваня , 10-Мрт-23 18:12 
Смысл было писать это на Rust? От уязвимостей он не спасёт...

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено annonn , 10-Мрт-23 18:30 
а он обещал спаси от логических ошибок?
или ты это сам придумал?

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 19:36 
фигасе ошибочка - переполнение буфера на десятки гигабайт!

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено anon_III , 10-Мрт-23 19:57 
в Heartbleed можно было читать всего 64 килобайт памяти и от этого стало легче?
напомни когда размер уязвимости начали мерять в Гб буфера?

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 20:23 
с того самого, когда переполнение в 1 байт и в 1 ГБ - вещи, мягко сказать, совсем разные.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено trdm , 10-Мрт-23 21:24 
> а он обещал спаси от логических ошибок?

си не за это же распинают? глючит человек, а страдает репутация языка.
это тупо...


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 19:07 
если бы писали на другом языке, то уязвимостей было бы сильно больше
и да, раст не серебрянная пуля

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 19:11 
Серебряная пуля – Modula 2.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 19:18 
Там вроде Ada выбирают сегодня.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 19:14 
>если бы писали на другом языке, то уязвимостей было бы сильно больше

Какое сильное утверждение. Обосновывать его ты конечно же не будешь.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено eganru , 10-Мрт-23 19:38 
[i]Смысл было писать это на Rust?[/i] - потому что кто-то любит rust и решил написать на нем свой проект.

Вы почему-то рассматриваете, что альтернативой будет что-то лучше: по моему опыту в 9 случаях из 10 альтернативой было бы, что никто бы ничего делать не стал.

Хотят - пусть пишут. Хоть на чем. Нравится rust? Пожалуйста. Хоть на чем пусть пишут, главное пишут и радуются.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 19:46 
> радуются

В итоге, диапазон виртуальной памяти от 6 до 34 ГБ от базового адреса оказывался доступен для чтения и записи


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено eganru , 10-Мрт-23 19:55 
Вот эти программы без багов, они сейчас здесь, с нами?

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 20:21 
растаманы обещали справиться с переполнением буфера на этапе компиляции, а тут вона как неожиданно получилось...

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноньимъ , 10-Мрт-23 20:29 
Вы новость вообще читали? Раст тут причём? Ошибка в генерированном программой коде. Генератор написан с логической ошибкой.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 20:20 
>никто бы ничего делать не стал.

Так было бы лучше. Меньше всякого культистского дерьма, к тому же уязвимого, людям бы приходилось использовать (есть альтернативно одарённые, предлагающие все программы компилировать в wasm и так распространять).


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 18:13 
" запись данных в области памяти вне границы "
" на языке Rust "

ну дык! на C писать надо было!


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 18:18 
С си такое не могло случиться, потому что там никто не верит в обещания.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 00:15 
Угу, в си оно бы получило рут еще на этапе генерации кода))

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 10:45 
Уязвимости в коде, генерируемом тем же, bison не шутка, но поэтому и нет доверия. Ничему. Когда ты ожидаешь, что кто-то уже позаботился об определённых вещах за тебя (ведь в рекламе не будут врать), ты расслабляешь булки. Это нормальное и ожидаемое поведение для приматов, как по мне, грязно только эксплуатировать природные особенности.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 18:18 
Переполнение то в машинном коде, генерируемом кодом на Rust.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 19:22 
А растаманы обещали, что все проверки границ будут в компилтайме...

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноньимъ , 10-Мрт-23 20:30 
Так они все в компайлтайме для кода на раст и выполняются.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 20:49 
> все в компайлтайме

критическая уязвимость с тобой не согласна.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноньимъ , 10-Мрт-23 21:15 
>> все в компайлтайме
> критическая уязвимость с тобой не согласна.

Переполнение буфера не в раст коде происходит.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 00:27 
>>уязвимость вызвана логической ошибкой при определении правил линейной адресации памяти в генераторе кода Cranelift

Cranelift (formerly known as Cretonne) is an optimizing compiler backend that converts a target-independent intermediate representation into executable machine code. It is written in Rust...

;)


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноньимъ , 11-Мрт-23 00:59 
И?


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 01:14 
Буфер переполняет код, сгенерированный кодом, написанном на расте
Сгенерированный код руками не правится и не проверяется

Конечно, это другое, но переполнение буфера можно считать результатом работы раст-программиста)
Безо всяких unsafe справились)


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноньимъ , 11-Мрт-23 01:53 
Да, логическая ошибка в коде допущенная программистом.
Раст не защищает от логических ошибок.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Sw00p aka Jerom , 11-Мрт-23 06:38 
>Раст не защищает от логических ошибок.

Раст написанный на расте защитит?


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено uis , 11-Мрт-23 12:20 
Если отстутствие проверки жоступа к памяти - логическая ошибка, то в расте по заявлением создателей не бывает логических ошибок.
Тут как обычно: если это происходит на си, то сишка плохая, а если на расте, то программист

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Анонимусс , 11-Мрт-23 14:35 
Как ты вообще живешь с таким мозгом?

> отстутствие проверки жоступа к памяти

где произошло? В раст коде? Нет, не в раст коде, там все ок.
Или ты предлагаешь раст-проверки еще и в другой генерированный код добавлять?

> если это происходит на си, то сишка плохая, а если на расте, то программист

Если взять питон и написать кодогенератор для си и там будет такая проблема - то тоже будет виноват программист (хотя при кодогенерации раст-кода, раст бы спас ситуацию)


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 03:22 
>  то в расте по заявлением создателей не бывает логических ошибок.

с дуба рухнул? От логических, как эта, ничего не спасает. Только в твоих влажных мечтах создатели раста могли такое заявлять. Раст спасает от ошибок работы с памятью, коих под 70% от всех ошибок в типичном си-коде. От того, что ты там знаки больше-меньше перепутаешь или умножишь вместо деления ничто не спасет.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Олексий , 11-Мрт-23 02:09 
Ну раст это хотя бы лучшее что у нас есть, на с/с++ проблемы бы вылезли ещё на этапе считывания файла с диска или парсинга :) А так у ребят будет раз в 10 меньше секьюрити багов (согласно статистике типов уязвимостей). Учите матчасть.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 01:51 
Чел, зачем ты пишешь, если ты не профик? Приходи в треды по своей профессии и там общайся.

Смысл то какой белый шум генерить.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 13-Мрт-23 08:01 
Конечно, код на расте - это же буквы и цифры. Какое там может быть переполнение.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Олексий , 11-Мрт-23 02:06 
А ничо что бага в асме и раст тут вообще не причём? Или "не читал, но осуждаю"? Понабежало школьников опять.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 13:19 
Они думают, что чем больше бреда напишут - тем больше их будут слушать. Необучаемые)

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено ИмяХ , 10-Мрт-23 20:45 
Хорошую отмазку придумали.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено AKTEON , 10-Мрт-23 18:23 
Выбери что-то одно : производительность, безопасность , работу с не доверенными источниками

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 19:23 
> Выбери что-то одно

Примечательно, что раста в этом списке нету.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено anon_III , 10-Мрт-23 19:58 
но и С тоже

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 13:21 
Производительность может быть безопасной. В ваше ЦПШ об этом не рассказывали? Ну так ты в вуз поступи.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено AKTEON , 11-Мрт-23 14:50 
Кричали выпускники провинциальных вузов, пока не приехал spectre

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 12:51 
> Производительность может быть безопасной.

...так появился САБЖ :)


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Енот Берт , 12-Мрт-23 23:44 
Wasmtime is a fast and secure runtime for WebAssembly.
Это лол...

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено annonn , 10-Мрт-23 18:29 
логическая ошибка, печально, но хорошо что заметили
возможно в будущем научатся и их отлавливать

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 18:44 
Не научатся. Кодогенератор очень сложный, в нем легко сделать ошибку

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено anonimusIII , 10-Мрт-23 18:58 
ну в 60х годах прошлого века про интернет только задумывались
видеозвонки были в научной фантастике наравне с телепортом и фазером
VR, машинное обучение, распознавание образов - думаю тоже только в фильмах и книгах

кто знает что будет через лет 20-30

и это без учета того, что уже сейчас некоторые инструменты могут находить некоторые логические ошибки - например копипаста в условиях if


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 19:07 
Люди пытаются воплотит то, что уже было придумано. Если сейчас этого никто не видит, то это не случится через 20-30 лет. Кроме того, там ресурсы подходят к концу. Эффективные портативные источники энергии так и не изобрели -- натриевые аккумуляторы менее опасны, но и менее эффективны. Нанометры тоже невозможно уменьшать бесконечно, и уже сегодня они не настоящие.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено anon_III , 10-Мрт-23 19:35 
> Люди пытаются воплотит то, что уже было придумано.

давай стразу определимся - то что не противоречит текущей физике, возможно к воплощению
а дальше как повезет - если откроем неизвестные законы физики, может и к звездам полетим

из того что не противоречит физике и уже исследуется:
- про батарейки ты и так написал, думаю в ближайшие лет 10-15 будут продолжать улучшаться
- нанометры можно улучшать, новые материалы, более жесткий ультрафиолет, или пространственное размещение слоев (типа Gate-All-Around)
- новые виды памяти (ReRAM, MRam) и прочие думаю еще имеют потенциал для развития, результатом которого может стать объединение оперативной и энергонезависимой памяти (идеально для реализации машины Тьюринга)
- квантовые компьютеры (уже есть куча разных вариантов технологии, которые в итоге сведуться в нескольким под запросы пользователей)
- оптоэлектроника (уже есть в каждом gpon терминале), возможно разовьется в полноценные транзисторные сборки или даже микроконтролеры
- системы соединения нервов и електроники, уже есть прототипы

- электростанции и фабрики в космосе
- одноступенчатые корабли на орбиту
- ядерные реакторы и плазменные двигатели типа VASIMR
- ...

Если в ближайшие 30 лет не запустят управляемый термояд, тогда придется строить много ветряков, солнечных панелей и ядерных реакторов для базовой выработки.

В общем есть куча всего интересного что можно сделать и есть куда стремится)


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 19:39 
> одноступенчатые корабли на орбиту

Послать тебя почитать хотя бы Циолковского, что ли...


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено anon_III , 10-Мрт-23 19:54 
DC-X, Skylon, Корона - да попытки оказались неудачные
но если каждый раз при неудаче отказывались от идеи, то сегодня сидели бы в пещерах

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 20:16 
> каждый раз при неудаче отказывались от идеи

до сих пор изобретаешь перпетум мобиле?


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 19:42 
> Если в ближайшие 30 лет не запустят управляемый термояд

Дак Европе сейчас не до него... Так что про ИТЭР можно забыть, распилили там уже все средства и камеру тоже (гуглите про дыры в сварочных швах, даже это сделать не смогли).


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено anon_III , 10-Мрт-23 20:10 
до него или нет - посмотрим
+ не итером единым (есть тот же JET)
кроме токамаков есть варианты со стеллаторами, эксперименты с пробкотронами (TAE, Hellion Energy, российский ГДМЛ), лазерные технологии (NIF)
есть еще интересные идеи у Zap Energy

и это без китайцев которые не сильно открыты в публикациях


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 20:18 
> кроме токамаков есть варианты ...

... расширения угольных разрезов в ЕС.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено uis , 11-Мрт-23 03:11 
>квантовые компьютеры

Им до сих пор применение не нашли. Кроме взлома шифров, да и то теперь пост-квант есть.

>оптоэлектроника (уже есть в каждом gpon терминале), возможно разовьется в полноценные транзисторные сборки или даже микроконтролеры

...
>возможно разовьется в полноценные транзисторные сборки

О нет, раскопали мумию. FYI микросхемы существуют уже лет... 50? 60?

>системы соединения нервов и електроники, уже есть прототипы

Боюсь спросить "електроники" или твоих невов? Когда ожидать сложных структур из нервов? Как скоро выйдет прототип мозга?

>ядерные реакторы

В планах? Беру свои слова назад, микросхемы появятся только через 15-20 лет.

>тогда придется строить много ветряков, солнечных панелей и ядерных реакторов для базовой выработки.

Когда появится прототип мозга, попробуй им понять, что ты тут сгенерировал.
Твой прототип вообще понимает, что такое базовая выработка.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено anonymous , 11-Мрт-23 13:20 
>"Нанометры тоже невозможно уменьшать бесконечно, и уже сегодня они не настоящие. "

Ага вот эти ребята.

Для вас уродов не имеющих даже массового надежного производства хотя бы 120нм хорошая отмазка, все же хорошо микроэлектроника российская давно не нужна (уперлись в нанометры) надо петон ИИ худи с какртинкой в комплекте, штурмовать и закупать дроны дижиай ссылка в описании. Собрать бы вас на одном параходе. И похрен что размер атома известен и можно тупо посчитать школьнику 2 класса сколько их вмещается в канавы 3 нм размером а говорят уже и к 2 нм подбираются в массовом производстве. Ненене уперлись в нанометры ололо я читалс татью уперлись дутые они дутые.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 14:01 
Я искренне надеюсь, что тебя тоже "денафицируют" (желательно свои же, для отельных лулзов).

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 04:29 
> видеозвонки были в научной фантастике

В 60-х годах-то? К этому времени они уже давно вышли из области фантастики, просто, как бы так выразиться, были не особо доступны массово.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 05:44 
Уже научились, формальное доказательство корректности кода, и языки с зависимыми типами, позволяющие записать доказательство средствами самого языка - Idris, например.

Но это очень трудоемко. Для кода управления ядерным реактором или системами жизнеобеспечения затраты приемлемы, для этих ваших вебов - нафиг не надо.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 13:22 
Профаны не понимают этого, бро.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Рустик , 10-Мрт-23 19:06 
Какая-то лоускильная байда. Сишный код в чужую память не залезает и проверка делается бесплатно на уровне mmu, а эти получается, в рантайме чекают каждое обращение к памяти? Должно тормозить.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено ChatGPT , 10-Мрт-23 20:02 
И будет тормозить, это же для веба

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено trdm , 11-Мрт-23 14:45 
а-ха-ха...
традиция такая....

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Вы забыли заполнить поле Name , 10-Мрт-23 21:43 
"Программа на С выходит за границы массива" - ааа! уязвимость! дырявая сишка!

"Программа на rust выходит за границы массива" - это не уязвимость, а логическая ошибка, понимать надо!


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 21:50 
> "Программа на rust выходит за границы массива" - это не уязвимость, а логическая ошибка, понимать надо!

Где ты там видишь программу на расте, выходящую за границы массива, о Воен Супротив Раста?



"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено uis , 11-Мрт-23 02:55 
https://github.com/bytecodealliance/wasmtime

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 21:57 
> https://github.com/bytecodealliance/wasmtime

Настоящие Воены не читают дальше заголовка?


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Вы забыли заполнить поле Name , 11-Мрт-23 22:30 
>> "Программа на rust выходит за границы массива" - это не уязвимость, а логическая ошибка, понимать надо!
> Где ты там видишь программу на расте, выходящую за границы массива, о
> Воен Супротив Раста?

Уже не в состоянии в код посмотреть? Растоман во всей красе.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 00:18 
>>>
;   movl    %esi, %ecx

;   movq    -1(%rdi,%rcx,8), %rax
;   movq    %rsi, %rdx
;   shll    $3, %edx, %edx
;   movq    -1(%rdi,%rdx,1), %rax


>>> "Программа на rust выходит за границы массива" - это не уязвимость, а логическая ошибка, понимать надо!
>> Где ты там видишь программу на расте, выходящую за границы массива, о
>> Воен Супротив Раста?
> Уже не в состоянии в код посмотреть? Растоман во всей красе.

Газификаторы луж^W^W Воены Супротив Раста во всей красе.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 13-Мрт-23 11:01 
> ;   movq    -1(%rdi,%rcx,8), %rax
> ;   movq    %rsi, %rdx
> ;   shll    $3, %edx, %edx
> ;   movq    -1(%rdi,%rdx,1), %rax

> Газификаторы луж^W^W Воены Супротив Раста во всей красе.

Ты сам то посмотри, что копируешь. Два чтения из памяти в аккумулятор. Подряд. Ты пялился в код и  тебя не смутило, что первое чтение не имеет смысла?

На само деле вот:

- ;   movl    %esi, %ecx
- ;   movq    -1(%rdi,%rcx,8), %rax
+ ;   movq    %rsi, %rdx
+ ;   shll    $3, %edx, %edx
+ ;   movq    -1(%rdi,%rdx,1), %rax

Удалённый вариант адресовал без ограничений. Новый вариант сбрасывает старшие 32 разряда rdx, поскольку операндом команды shll является edx.

https://github.com/bytecodealliance/wasmtime/commit/63fb30e4...


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 18-Апр-23 15:57 
> Ты сам то посмотри, что копируешь. Два чтения из памяти в аккумулятор.
> Подряд. Ты пялился в код и  тебя не смутило, что первое чтение не имеет смысла?
> На само деле вот:
> - ;   movl    %esi, %ecx
> - ;   movq    -1(%rdi,%rcx,8), %rax
> + ;   movq    %rsi, %rdx
> + ;   shll    $3, %edx, %edx
> + ;   movq    -1(%rdi,%rdx,1), %rax

Ну ты вон пялился в код и писал разоблачительный коммент, при этом тебя не смутило, что цитированный код идентичен твоему - за исключением плюсиков и минусиков (которые в новой-модной верстке не в каждом браузере копируются)?


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 00:13 
"Программа на С выходит за границы массива" - ааа! уязвимость! дырявая сишка!
Именно так

"Программа, сгенеренная программой на rust, выходит за границы массива" - сама программа на расте никуда не вышла.
Жаль что ты такой особенный, что не понимаешь разницы. Даже удивительно, что ты в состоянии писать на си.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Олексий , 11-Мрт-23 02:13 
`subprocess.run(sys.argv[1])`

А! Питон позволяет запустить любую команду без проверок! Питон насквозь дырявый! А!
А, нет, стоп, это же то, что я хотел. Язык никогда не ограничивает разработчика в той логике, которую он может реализовать, только в инструментах для этого.

Вы хоть одну строку кода в своей жизни написали? :D


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 08:13 
> subprocess.run(sys.argv[1])

проблемка в том, что "sys.argv[1]" - творение растаманов.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 13:38 
В растений вроде os.argv ?

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 13:42 
Прошу прощение, не уследил за автоподстановкой. Не растение, а расте.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 16:05 
Это python

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 13:58 
Многие языки позволяют запустить процесс по строке имени, если есть собственная реализация exec или доступ к системным вызовам.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 10:55 
> А! Питон позволяет запустить любую команду без проверок! Питон насквозь дырявый! А!

А за эттим в соседнюю новость, где питоняши не слышали что входные данные еще и проверять надо.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено ChatGPT , 10-Мрт-23 20:01 
>(rule 3 (amode_add (Amode.ImmReg off (valid_reg base) flags)
>                   (uextend (ishl index @ (iadd _ _) (iconst (uimm8 >shift)))))
>      (if (u32_lteq (u8_as_u32 shift) 3))
>     (Amode.ImmRegRegShift off base index shift flags))

запутались в _@_ ^-^


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 20:15 
> запутались в _@_

безопасно запутались... всего-то на 28 гигабайт переполнили...


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено НяшМяш , 10-Мрт-23 20:38 
Опять местные кексперты показали уровень кекспертности. В пулике ни строки на расте не пофиксили, а код на ISLE - чёто типа ассемблера. Хотя чего это я, ни один кексперт и строки кода в своей жизни не написал, он асм от хтмля не отличит.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 01:55 
Логическая ошибка. АСМ от хтмл отличить очень просто - первый не является ЯВУ, а второй является языком разметки. Логичней было бы сказать "С от Bliss не отличит". Впрочем я сильно сомневаюсь, что ты знаешь что такое bliss..

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 10:44 
Так ты сам за всю жизнь ни одной строки кода не написал, чего выпендриваешься?

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено НяшМяш , 11-Мрт-23 11:29 
Значит знаю о чём говорю xD

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено VoiD , 10-Мрт-23 21:56 
Каким же раздутым и абсурдным стал современный web.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 10-Мрт-23 22:36 
особенно когда "Инструментарий написан на языке Rust".

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено uis , 11-Мрт-23 02:51 
Rust.js

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено раст переусложнён , 11-Мрт-23 00:12 
надо усложнить язык Rust так, чтобы в нём было невозможно допустить логические ошибки.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Sw00p aka Jerom , 11-Мрт-23 06:44 
Зачем так сложно, отключите логику и делов то :)

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Tron is Whistling , 12-Мрт-23 09:25 
Поздно :D

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 01:41 
"а уязвимость вызвана логической ошибкой при определении правил линейной адресации памяти в генераторе кода Cranelift, транслирующем независимое от аппаратных архитектур промежуточное представление в исполняемый машинный код для архитектуры x86_64."

Больше оберток и разных. Больше абстраций кем-то придуманных и не всеми понимаемых. Долой простоту Си.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено uis , 11-Мрт-23 02:50 
Не, это как раз нормально, именно так компиляторы и делают

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 01:44 
А где гарантия что это последняя логическая ошибка? Язык уже сложен? Сложность превалирует над безопасностью?

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено нуда , 11-Мрт-23 07:18 
Чьто такое runtime? Время выполнения?

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 17:44 
Точнее этап выполнения, чтобы не путать с тем сколько времени выполняется программа. )

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 18:29 
Если был бы код на си - была бы такая же дырень. Как в TPM, хардблид, или ядре... тысячи их

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 20:17 
Если бы это было написано на расте там было бы столько же дыреней, но стоил бы этот код в 10 раз дороже.  

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 14:41 
В привиденном линке код не на расте написан, а на ассемблере. И фикс на нем.
https://github.com/bytecodealliance/wasmtime/commit/63fb30e4...
Ахаха, растохейтеры не читают новость, а сразу комментировать.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 19:36 
А ещё ОС не на расте, процессор не на расте, и, говорят, сами программисты тоже не на расте, а с помощью дырявой ДНК написаны. Вот когда вселенную перепишут на расте - вот тогда не будет уязвимостей, а до тех пор никакие претензии не принимаются.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 09:53 
Всё равно будут уязвимости, так то можно даже не напрягаться.  

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 15:29 
Вот что бывает, когда свой ЯП узковат для замысла программиста. Они лезут туда чем пользоваться не умеют.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 18:46 
> В привиденном линке код не на расте написан, а на ассемблере. И фикс на нем.

"на расте написан ЧПУ, это он намотал токаря на вал а не раст!"


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено kusb , 11-Мрт-23 15:59 
Я попросил OpenAI, что нужно делать, чтобы выполнить мечту многих на Опеннете.

- [ ]  Провести исследование о причинах популярности языка Rust
- [ ]  Подготовить аналитический отчет на основе проведенного исследования
- [ ]  Разработать стратегию по уменьшению числа проектов, использующих Rust
- [ ]  Создать блог, посвященный проблемам, связанным с использованием Rust

- [ ]  Организовать кампанию в социальных сетях для привлечения внимания к проблемам использования Rust
- [ ]  Провести обучающие курсы по альтернативным языкам программирования
- [ ]  Поддерживать контакт с сообществом разработчиков и продолжать продвижение альтернативных языков
- [ ]  Создать петицию с требованием ограничения использования Rust в крупных проектах
- [ ]  Подготовить материалы для конференции, посвященной проблемам Rust, и выступить с презентацией
- [ ]  Создать альтернативный инструмент, который позволит использовать другие языки программирования вместо Rust
- [ ]  Провести интервью с разработчиками, которые используют Rust, и выяснить, почему они выбрали именно этот язык
- [ ]  Спонсировать разработку альтернативных языков программирования и создание инструментов для их использования
- [ ]  Провести рекламную кампанию, направленную на привлечение разработчиков в сообщество альтернативных языков программирования
- [ ]  Организовать хакатон, посвященный разработке проектов на альтернативных языках программирования
- [ ]  Вовлечь в кампанию компании, предоставляющие услуги программирования и производство программного обеспечения, чтобы они использовали альтернативные языки программирования
- [ ]  Создать открытый проект, где разработчики могут делиться своим опытом использования Rust и альтернативных языков программирования
- [ ]  Провести опрос разработчиков, чтобы выяснить, какие языки программирования они предпочитают, и на основе этого разработать стратегию дальнейшего продвижения альтернативных языков
- [ ]  Создать образовательную программу для студентов и начинающих разработчиков, где они могут изучать альтернативные языки программирования и получать сертификаты
- [ ]  Выступить на международных конференциях и выставках, чтобы привлечь внимание к проблемам использования Rust и продвижению альтернативных языков программирования
- [ ]  Участвовать в разработке стандартов, которые будут регулировать использование Rust и других языков программирования в крупных проектах
- [ ]  Создать онлайн-курсы и видеоуроки по альтернативным языкам программирования, чтобы разработчики могли изучать их в любое время и в любом месте


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 17:50 
Чек-лист, когда комьюнити недовольно растом. )

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 18:28 
> по альтернативным языкам программирования

Zig выглядит очень хорошо.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 20:10 
> Участвовать в разработке стандартов, которые будут регулировать использование Rust и других языков программирования в крупных проектах

Для начала, неплохо бы, сам язык стандартизировать.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 11-Мрт-23 20:16 
Как это сделать если у них цель сложность ради сложности. Как только ты что-то стандартизировал ты сразу снизил сложности и прекратил дальнейшее усложнение в рамках версии. Это недопустимо.  Сложность должна быть сложной.    

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 00:54 
> сложность ради сложности

Три слова и ты описал всё современное IT.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 12:26 
> Я попросил OpenAI, что нужно делать,

ChatGPT залогинься! И базу русского подгоните ему нормальную, ну что за позор то, alicebot лучше чатился.


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено kusb , 12-Мрт-23 12:36 
А что не так с его словами?

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 17:56 
То самое чувство, когда ИИ написал в сто раз более полезный комментарий, чем любой из критиков этого языка.

"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 10:53 
> запись данных в область памяти вне границы,
> допустимой для изолированного WebAssembly-кода,
> Инструментарий написан на языке Rust

Но как же так, Холмс?! :)


"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 12-Мрт-23 11:42 
>>> а уязвимость вызвана логической ошибкой при определении правил линейной адресации памяти в генераторе кода Cranelift, транслирующем независимое от аппаратных архитектур промежуточное представление в исполняемый машинный код для архитектуры x86_64.

...
>>> This commit removes two incorrect rules as part of the x64 backend's computation of addressing modes. These two rules folded a zero-extended 32-bit computation into the address mode operand, but this isn't correct as the 32-bit computation should be truncated to 32-bits


- ;   movl    %esi, %ecx
- ;   movq    -1(%rdi,%rcx,8), %rax
+ ;   movq    %rsi, %rdx
+ ;   shll    $3, %edx, %edx
+ ;   movq    -1(%rdi,%rdx,1), %rax

>> запись данных в область памяти вне границы,
>> допустимой для изолированного WebAssembly-кода,
>> Инструментарий написан на языке Rust
> Но как же так, Холмс?! :)

Элементарно Ватсон! Настоящие опеннетные Воены Супротив Раста не читают дальше заголовка и не умеют в ЯП ...



"Критическая уязвимость в Wasmtime, runtime для WebAssembly-п..."
Отправлено Аноним , 14-Мрт-23 14:45 
Внезапно оказывается, что полагаться на безопасные язычки не стоит и надо учиться кодить безопасно самому, да ещё и с ресурсами работать. Никогда такого не было и вот опять.

...А потом ещё окажется, что безопасные язычки отучают думать о ресурсах и безопасности - вот вою-то на болотах прибавится!