>> Вот RISC-V прогулял на аппаратном уровне защиту пямяти W^X.
> Вообще-то если его MMU запрограмить с нужными правами - будет тот набор прав. И оно прочекает именно эти права на уровне железа. ... Если кернел делает не то что вам хочется, при чем тут железка? Это как-то доказывает что железка технически не способна на такое? С фига ли?Потому, что RISC-V вместо корректной установки прав на выделяемую память RWX устанавливает RW_Протрояненый_бит_изменения_памяти : https://www.opennet.ru/openforum/vsluhforumID3/129886.html#323
> Кстати для тех кто не в курсе, у "конструкторов" типа ARM, RISCV и проч - MMU так то отдельная от проца железка, ничему не противоречит даже какую-то другую прилепить (при этом конечно же придется ее подержку в кернелах интересных ос накодить). И идея предъявлять за дизайн MMU вот именно процессорному, именно ядру, или его набору команд - вообще немного не в ладах со здравым смыслом. Это вообще отдельный хардварный блок как таковой.
Может они себе и без трояна сделают. А пока констатируем факт, что вместо бита запрета исполнения ЕСТЬ ТРОЯН - бит изменения памяти: https://www.opennet.ru/openforum/vsluhforumID3/129886.html#323
>> И большинство GNU/Linux, *BSD прогуливают корректную работу с памятью W^X.
> Мир не идеален. Но он не идеален по чертовой куче аспектов.
Но даже в этом мире есть те кто стремится к идеалу: NetBSD, Linux+PAX, ... поддерживают даже в неидеальном мире строгую W^X.
> В 1960 еще не было хакеров и атак на системы в современном понимании этого. Поэтому проблема не была изучена и понята. Да и судя по вашему спичу - она и сегодня некоторыми как-то очень превратно и криво понята.
А я тогда откуда узнал? Были хакеры, была проблема и ее решение W^X из тех времен. В 1983 году W^X уже стал предъявлятся как МИНИМАЛЬНОЕ требование ко всем OS. Но и сегодня многие принцип W^X не понимают.
> Ну да, только про быстрые эмуляторы других архитектур придется забыть ... и в generic семействе процов это как-то "не очень".
Intel, AMD с NX инструкциями живут и эмуляторам не мешают. Но у x86 для защиты W^X требуется ядро с W^X. Grsecurity имеет готовые профили специально для виртуализации. Все довольны.
Есть строгие архитектуры, где аппаратно запрещено W^X но виртуализация в них тоже есть и работает. Надо смотреть как с производительностью эмуляции других архитектур, например, на IBM POWER*
> Могли. Но жесткий неотключаемый энфорс этого в железе все же нагнет ряд применений. Софт и железо эволюционируют совместно, друг под друга.
Подстраивание есть: инструкции NX, инструкции виртуализации. Но JIT ради строгой W^X для безопасности стоит пожертвовать. Я за оптимизацию во время компиляции.
> Мне слабо в полный аудит мало-мальски крупной ОС, как впрочем и всем остальным.
Необходимо не только ОС, а архитектуру: процесор + ОС
Для оценки архитектуры соответствию уровню C2 хватит результатов ~8 простых тестов, на 10 минут работы, опыт не требуется: https://www.opennet.ru/openforum/vsluhforumID3/129886.html#309
> Они так то разные бывают, от MMU-less микроконтроллеров до здоровенных апликушников. И MMU у них внезапно не есть неотъемлимая и прибитая на гвозди часть вот именно процессорного ядра. Для начала. В свете этого претензии "RISCV" выглядят довольно забавно. Видно что человек вообще не понимает что есть RISCV.
Пришол спросить как дела в RISC-V сегодня с защитой памяти: https://www.opennet.ru/openforum/vsluhforumID3/129886.html#134