З тобою інший хлопець? Якщо у нього є фізичний доступ або доступ до кореня, він може стерти всі свої сліди і навіть посадити помилку, щоб шпигувати за вами . З іншого боку, деякі сліди - це стерти біль, і важко все придумати.
У системних журналах вже записано різні речі, як правило, у /var/log
деяких системах (наприклад, /var/logs
або /var/adm
). У нормальній конфігурації всі входи та кріплення записуються, серед інших. Якщо ви турбуєтесь про те, щоб журнали були стерті, ви можете налаштувати віддалений журнал (як це зробити, залежить від реалізації syslog, але зазвичай у файлі конфігурації відправника та на приймачі потрібно змінити один-два рядки).
Якщо ви або ваш дистрибутив не відключили цю функцію, кожен файл має час доступу ("atime"), який оновлюється щоразу, коли файл читається. (Якщо файлова система змонтована з параметром noatime
або relatime
, atime не оновлюється.) Atime може бути підробленим touch -a
, але це оновить ctime, тому воно залишає слід. (Навіть root не може безпосередньо видалити цей слід, вам потрібно обійти код файлової системи.)
Різні програми мають історію сеансів . Зняти або підробити це легко, якщо зловмисник згадав це зробити. Bash тримає ~/.bash_history
, браузери, як правило, записують багато матеріалів у каталог своїх профілів тощо. Ви також можете знайти говорити про помилки та попередження в ~/.xsession-errors
або /var/log/Xorg.0.log
чи іншої системи в залежності від місця розташування.
Багато уніцій мають accounting особливість обліку процесів . Дивіться, наприклад, посібник з бухгалтерських служб GNU , запис у посібнику FreeBSD або інструкцію з Linux або посібник Solaris . Після ввімкнення він записує, який користувач запустив який процес, коли (він реєструє execve
дзвінки) і, можливо, трохи більше. Існує багато цікавої інформації, до якої вона не входить, наприклад файли, до яких отримує доступ процес.
Якщо ви хочете контролювати всі доступ до файлової системи, ви можете надати їх через loggedfs . Це дуже легко помітити, якщо хлопець думає подивитися.
Є більш всебічні програми ведення журналів, але вони можуть потребувати додаткової підтримки ядра. У Solaris, FreeBSD, NetBSD та Mac OS X є dtrace (там працює порт Linux, але я не знаю, чи досягнуто зручного етапу). Ви також можете простежити конкретні процеси через інтерфейс до ptrace
системного виклику, наприклад, strace
в Linux; це може спричинити помітне уповільнення.
¹ Щось, чого немає у Вікіпедії? Ні, це божевільна розмова.