Если это онтопик, то в целом это довольно безопасная система если все ставится из официальных реп с заявленными публичными сетами заверенных хэшей, возможностью пересборки.
Вообще предпочтение, если возможно запускать через firejail, в планах docker, chroot, просто виртуалки. rootkit запускался эпизодически
Плюс иногда и выборочно lsof|grep -i tcp|grep -i established.
онтопик, то в целом это довольно безопасная система если все ставится из официальных реп с заявленными публичными сетами заверенных хэшей, возможностью пересборки.
Есть две идеи:
1. Написать проверочку для distfiles/*, получить архивы, их подписи, хеши с других источников, архива интернета, можно начать с официальных сайтов и сверить с портадж. (Помню инцендент с vsftpd, разные струи одной версии).
2. Возможность пересборки для верификации бинарников. Желательно чтобы такая возможность была в базовой системе. В теории если стейдж, portage-*, /etc/portage, список команд или скрипт установки одинаковы,- системы должны получится идентичны.
Настрой любую крыптографическую верификацию системы, периодически загружается с LiveCD/DVD и проверяй целосность... отловленные руткиты отсылай тем кто пишет антивирусные сигнатуры.
Первая команда покажет загруженные сертификаты. Они должны быть уникальны для каждого административного домена. Единый сертификат для всего дистрибутива неприемлем!
Вторая, вместо usbcore, можно ввести название любого другого модуля ядра, покажет подписаны ли модули ядра.
Третья - спрятан/уничтожен ли секретный ключ для подписи модулей ядра, этого файла в рабочей системе быть не должно!
И отпишите здесь название дистра и результат проверки.
я так на винде баловался, брал простейшие шел команды - например эту
Get-AppxPackage -AllUsers | Remove-AppxPackage
заворачивал все это в ехе, добавлял прав на запуск и вуаля ни один антивирус не мог определить подставу, но уже буквально через неделю мои поделия почему то палились обычным встрооеным защитником, хотя я ничего не отправлял в сеть - видать винда сама сливала данные...
Никак, хотя была машинка попой в наружу, но после выставления попы всё переводилось в RO и только 2 рабочих каталога были активными, это tmp с noexec и каталог с базой и всё. Вот и вся безопасность, а вся эта активная защита хтьфу. Если в софте есть дырка то она никуда не денется пока её не закрыть, поэтому запрещено всё что не разрешено. Но на домашней системе лично мне глубоко всрать =)
Ну, я хз как там с динамикой у меня на KORE.io был сервер, всё было просто как палка =) Ну, а если ты ты генерируешь скрипты и потом исполняешь их думаю у тебя не 100500 скриптов генерятся поэтому можно на tmp оставить noexec сделать ещё одну tmpfs размером метров в 50 (хватит наверное под дин-скриптоту) всё генерированно-запускаемое скидывать туда (по факту просто в память) после исполнения удалять, и вообще принципиально удалять всё что там может появится кроме момента когда нужно исполнить что-то. Но меня не слушай это просто идеи. Я уж 100 лет ничего подобного не делал =)
В подавляющего большинства должен быть один единственный сертификат, УНИКАЛЬНЫЙ для каждой установки Линукс. Это сертификат с помощью которого ядро крыптограытчески верифтцирует свои модули. В ядре есть только открытый ключ этого сертификата необходимый для верификации модулей. Секретный ключ должен уничтожался сразу после выполнения 'make modules_install' или очень надёжно прятался (а зачем его прятать? кому он нужен кроме руткита?). Если руткит украдет секретный ключ сертификата то выполнит:
И все, руткит подписан, а его установка и загрузка в ядро дело двух строк кода.
Зачем у арча аж 5 сертификатов в ядерном кейринге? Заметте каждый с этих сертификатов должен быть уникален для каждой установки арча!
У меня в самых продвинутых установках GNU/Linux используется только 4 сертификата, хоть теория рекомендует максимум 3:
1. Ядерный сертификат для автоматической подписи модулей ядра.
2. Мой личный корневой сертификат CA который гружу в ядерный кейринг и использую для подписи других сертифткатов.
3. Сертификат в кейринге IMA подписанный моим CA (его считают устаревшим) используется для верификации всех неизменяемых файлов (бинарей, библиотек, настроек) начиная с init.
4. Сертификат в кейринге EVM используется для защиты разных атрибутов файла в файловых системах Линукс (IMA, Linux capabiletis, selinux,...)
Посмотреть загруженные сертификаты иногда можно в:
cat /proc/keys
Ещё раз в каждой установки Линукс ВСЕ сертификаты ядра должны быть уникальны!!! Наличие хоть одного одинакового сертификата ядра в дистрибутиве неприемлемо! Товарищ майор подойдёт к разрабу с длинным, толстым и сильно горячим паяльником и попросит предоставить этот ключ ему!!!
3. Гарантировать надёжное уничтожение/хранение секретных ключей ядра Линукс.
3. нет такого файла или каталога
Он был создан и во время выполнения 'make modules_install' подписал все модули ядра. Вы должны гарантировать его надёжное уничтожение/хранение.
ls -l /usr/src/linux*/certs/signing_key.pem
find / -name signing_key.pem -type f
Вы должны гарантировать надёжное уничтожение/хранение ВСЕХ созданных секретных ключей ядра после подписания ими всех модулей ядра, программ, библиотек, настроек, файловых атрибутов!
Стырят у вас ключ, разрабы дистров передадут ключ товварищу майору и будут здесь рыдания по поводу руткита в GNU/Linux и плохих антивирусов.
PS: Если вас вся эта криптография уже достала можете скомпилировать монолитное ядро без протдержки модулей.
Один это нормально, главное чтобы он был уникален в каждой установки Manjaro GNU/Linux, а не как в федорке один на всех с копией секретного ключа в майора АНБ.
у меня в sid 4 сертификата - типа самый продвинутый?
А цель этих сертификатов? Вы гарантирует что все эти сертификаты были созданы на вашем компе во время установки Debian GNU/Linux? Вы гарантирует надёжное уничтожение/хранение всех секретных ядерных сертификатов Линукс в дистрибутиве Дебиан?
Вывод этих комманд даёт только отпечаток ключей. Ядро не знает секретного ключа. На безопасность вашей установки это не влияет, Я, анонимус ЛОРа, гарантирую.
Нам отпечатки ключей сей час необходимы для обнаружения дистрибутивов Линукс которые подписывают все модули одним ключом разработчика - вот это дырище в безопасности, я анонимус ЛОРа, жирный, тучный писец гарантирую.
В случае хорошего дистрибутива GNU/Linux, в котором все ядерные ключи уникальны для каждой его установки, отпечаток ключа может использоваться товарищем майором для вашей деанонимизации!!! Но в виду того что отпечатки может просмотреть только root риск не велик. В прочем нормальные дистры предоставляют инструментарий для замены ядерных ключей - переустановка системы. ;)
Расскажите, что делать? Я готов на любые эксперименты.
Я не знаю вашей квалификации.. С предоставленного вами вывода могу сказать, что в вашем дистрибутиве криптографическая верификация модулей ядра не используется.
Напиши в этой теме пост, в заголовке укажи название дистрибутива, а в тексте сообщения укажи что дистрибутив не использует никаких методов onaccess верификации модулей ядра Линукс при загрузке. Возможно предусмотрена IDS проверка по требованию.
А зачем этот сертификат Фёдоре? Что за «regulatory database»? Посмотри, если разберёшся, оно наверно кроме модулей верифтцирует некоторые этапы загрузки. Интересно насколько продвинулись и какие технологии используют в Фёдоре?