Christian S.J. Peron предложил (http://groups-beta.google.com/group/mailing.freebsd.hackers/...) провести тестирование mac_chkexec патча для FreeBSD -CURRENT и RELENG_5, дающего возможность защититься от подмены или модификации запускных файлов в системе.В случае если для запущенной программы, библиотеки, скрипта или модуля ядра не совпадает контрольная сумма, приложение завершается с ошибкой.
mac_chkexec может работать в режиме самообучения (автогенерация хеша для ранее не запускавшихся программ) и режим выполнения только авторизированных запускных файлов.
URL: http://groups-beta.google.com/group/mailing.freebsd.hackers/...
Новость: http://www.opennet.me/opennews/art.shtml?num=5230
что мешает модифицировать злостным программам мд5 суммы?
А кто говорит про использование md5?
Кэш-алгоритмов не хватает что-ли?
"Что мешает злоумышленнику нарисовать ЛЮБОЙ мыслимый хэш?"
:)
EPERM, а что, сложно догадаться?
Интересная мысль, но нуждается в доработке. А то такая система будет работать только до тех пор, пока гады и сволочи не просекут, что для изменённого файла надо просто пересчитать контрольную сумму и запихнуть её куда-то там.Для начала надо хранить контрольные суммы там, где их нельзя подменить. Для этого годится файл, защищённый chflags при условии повышенного уровня секурности (впрочем, этот же метод может защитить сами файлы). Динамические обновления, вычисляемые по мере запуска новых программ, пишутся в новый файл, который потом тоже защищается флагами.
Контрольные суммы можно хранить на файловой системе, смонтированной Read-Only, но тут динамического обновления сумм ждать не призодится.
Контрольные суммы должны подписываться электронной подписью с асиметричным ключом. Ежели динамического обновления не нужно, то закрытая часть ключа на машине может не присутствовать. А любой дистрибутив программы должен содержать контрольные суммы исполняемых файлов, т.е. д.б. подписан производителем.
В конечном счёте можно встроить такие контрольные суммы прямо в формат исполняемого файла (со скриптами сложнее).
>Интересная мысль, но нуждается в доработке.замени контрольные суммы и сделай пакость админу :)
>Контрольные суммы можно хранить на файловой системе, смонтированной Read-Only, но тут динамического>обновления сумм ждать не призодится.
а не проще ли хранить тогда сами бинарники на ro системе?! Для обновления mount -u -o rw, останавливаем систему и вновь откатываемся на ro ?!
>Контрольные суммы должны подписываться электронной подписью с асиметричным ключом. Ежели динамического обновления
>не нужно, то закрытая часть ключа на машине может не присутствовать.
>А любой дистрибутив программы должен содержать контрольные суммы исполняемых файлов, т.е.
>д.б. подписан производителем.
>
>В конечном счёте можно встроить такие контрольные суммы прямо в формат исполняемого
>файла (со скриптами сложнее).Напридумывать можно все что угодно, лучше бы разобрались с тем буреломом, который уже нарубили (это я про БЗДишников)
А что делать если перекомпиливать одну программу с внесением больших измений? каждые 5 минут перемонтировать фс? или обновлять таблицу? неоченьто уж удобно это будет для разработки, вот.