/dev/null
специальный файл, устройства символа текста. Драйвер для того устройства посимвольного ввода-вывода игнорирует то, что Вы пытаетесь записать в устройство, и записи всегда успешны. Если запись к /dev/null
сбои, это означает, что Вам так или иначе удалось удалить надлежащее /dev/null
и замените его регулярным файлом. Вы, возможно, случайно удалили /dev/null
; затем следующее … >/dev/null
воссоздал бы его как регулярный файл.
Выполненный ls -l /dev/null
и проверьте, что строка смотрит что-то как
crw-rw-rw- 1 root root 1, 3 Sep 13 2011 /dev/null
Это должно начаться crw-rw-rw-
: c
для устройства посимвольного ввода-вывода и полномочий, которые позволяют всем читать и писать. Файл должен принадлежать корню, хотя это не очень важно. Эти два числа после владельца и группы определяют устройство (главный и незначительный номер устройства). Выше я показываю значения в соответствии с Linux; различные варианты Unix имеют различные значения. Дата является обычно или датой, когда система была установлена или дата последней перезагрузки и не имеет значения.
Если необходимо воссоздать файл, некоторые системы обеспечивают a MAKEDEV
команды, или в ПУТИ корня или в /dev
. Выполненный cd /dev; ./MAKEDEV std
или что-то вроде этого для воссоздания стандартных основных устройств такой как /dev/null
. Или создайте устройство вручную, предоставив числа правильного устройства; на Linux это
mknod -m 666 /dev/null c 1 3
Существует несколько способов сделать это:
используйте следующую команду для включения контроля auditd файла (после того, как проверка auditd
услуга работает):
auditctl -a exit,always -F path=/path/to/file
Затем загляните /var/log/audit/audit.log
видеть, что продолжается.
Используйте следующее для удаления правила при выполнении:
auditctl -d exit,always -F path=/path/to/file
fanotify является системой, разработанной для вещей как вирусные сканеры. Это позволяет программе получать уведомление о событии, когда другая программа открывает любой файл. Программа мониторинга может затем выполнить действия как запрет доступа к файлу или просто входа его. Преимущество здесь состоит в том, что программа мониторинга может просто находиться на событии и ничего не сделать, таким образом, программа, которая пытается открыть файл просто, задерживается. Это не получит отказ или успех, пока программа мониторинга не позволит этому продолжаться.
Проблема с этим маршрутом, хотя то, что fanotify является новым, и нет никаких простых утилит командной строки, которые можно использовать для доступа к нему. Необходимо было бы записать собственный сценарий (если какие-либо библиотеки сценариев имеют интерфейс), или программа.
Если на Linux, chattr +i the-file
предотвратит любую операцию модификации на файле даже к root
(кроме другого chattr
).
Для небольших заданий сценариев, где мелкомодульный доступ фс необходим, но можно было бы предпочесть стараться не иметь дело со сложной утилитой "песочницы" хинду инструментов аудита, исключительно удобно. В частности, это обеспечивает, простой способ включить и отключить доступ для записи к выбранным файлам в интерактивном режиме (для теста затем развертывают сценарии).
На хинду это доступно по умолчанию, но не должно быть слишком трудно установить на других дистрибутивах.
http://git.overlays.gentoo.org/gitweb/?p=proj/sandbox.git;a=summary
Внутренне это реализовано сверх получения по запросу механизма LD_PRELOAD в "libsandbox.so" библиотеке, которая прерывает и фильтрует вызовы файловой системы. Это также идет с аккуратной интерактивной оберткой оболочки, таким образом, единственные потребности ввести "песочницу" для заскакивания в защищенную оболочку.
Функциональность, которую особенно попросил относительно OP (поддельные записи), поддерживается: http://devmanual.gentoo.org/function-reference/sandbox-functions/index.html
Если Ваша система поддерживает dtrace (Солярис и производные, FreeBSD, Oracle Linux, Mac OS X), dtrace сценарий может зарегистрировать и даже предотвратить упомянутые действия в файлы, которые Вы хотите любым пользователем включая корень.
Dtrace может также использоваться, чтобы заморозить виновный процесс и позволить Вам принять решение возобновить или уничтожить его.
FAN_ONDIR
смотреть каталог вместо этого. – Patrick 23.10.2013, 20:10