Советы администраторам Linux-систем или людям, желающими ими стать.
Вячеслав Калошин
Обновляйтесь. Самый тривиальный и часто даваемый совет. К сожалению, так же часто не выполняемый. Ведь программа, в которой обнаружена ошибка, является практически открытыми воротами для взломщика. Но обновляйтесь только в том случае, если это действительно необходимо. Содержать самые последние версии только ради того, "что бы были" - это несерьезно. Самый яркий пример - это уязвимость в ssh. Ей уже куча времени, ее даже успели показать в "матрице", а тем не менее серверов с уязвимым sshd еще очень много. А какой был бум взломов через уязвимый named ... Наверняка, если хорошо порыться, можно найти очень много подобных серверов в современной сети.
Разбирайтесь в операционной системе и в составе ее сервисов. Вам стоит знать, что процесс init в системе должен быть один и у него должен быть pid равный единице. И то, что демона irqd не существует, тоже должно являться для вас непреложным фактом. Вы должны прекрасно знать, что и на каком этапе работает в системе - как запускаются сервисы, как узнать, откуда он был запущен и почему он был запущен именно так. А журналирование действий пользователя в системе ... с чей-то легкой руки время сохранения файлов логов в многих дистрибутивах поставлено на 4 недели. Всего лишь один месяц. А это очень короткий срок в современном мире. А вы в курсе, что syslogd может отправлять приходящие сообщения на другую машину? А вы знаете о том, что rpm может проверить целостность всех программ, установленных у вас в системе? А вы это используете? Если ответы "да", то я рад за вас.
Отключите ненужное, а неиспользуемое удалите. Возьмем к примеру обычный linux сервер, установленный неопытным администратором. Поглядите на него и задайтесь вопросом: "а зачем там стоит gcc, nfs и cdparanoia?" Опять хотите пример? Пожалуйста - их есть у меня. Взломщик через ssh или кривой скрипт, запущенный на сервере, получает права пользователя nobody. При установленном gcc ему не составит труда собрать либо трояна, либо использовать другую уязвимость (к примеру, та же проблема с ptrace).
Разберитесь c работающими сервисами и отключите у них "лишние" возможности. Задайтесь вопросом, зачем в конфигурационном файле sshd существуют такие директивы, как ListenAddress и PermitRootLogin? Затем обратите внимание на стоящий apache и узнайте, нужны ли ему модули mod_cgi или mod_rewrite? А ведь каждый лишний модуль - потенциальная лазейка для взломщиков. У вас стоит PHP? Здорово. А вы в курсе, что в файле php.ini существует целая секция, посвященная безопасности? Поищите по слову safe_dir - уверяю, в окрестностях этой директивы можете найти много интересного. Ведь необходимо потратить буквально 10 минут и никакой злой PHP скрипт не сможет прочитать содержимое конфигурационных файлов в каталоге /etc. 5 минут сверху - и MySQL больше не принимает пакеты со всего мира, а мирно работает только через unix socket. Буквально час времени необходимо потратить, что бы даже открытые всему миру сервисы не представляли большой проблемы. А кто из вас потратил этот час?
Пользуйтесь встроенными средствами защиты операционной системы. Вспомните, что Linux, как и все остальные unixы, изначально многопользовательский. Прочитайте про действие команд chroot и ulimit. А флаги для файловой системы? Ведь nosuid, noexec и nodev появились не на пустом месте. А про команду sudo и механизм ее работы вы в курсе?
Используйте сетевые средства защиты. Упредить взлом - значит практически предотвратить его. Возьмем опять же наш любимый www сервер. Зачем ему торчащий во внешний мир sshd? А зачем ему возможность установить соединение с любого порта? Возьмите встроенный файрволл и запретите на нужном интерфейсе прием и передачу пакетов со всех портов, кроме 80го. Теперь даже если в машину закачают троян, он не сможет соединиться со своим владельцем. Мелочь, а взломщику она резко усложнит задачу. Но это пассивная защита. А ведь еще существуют и "активные" варианты, которые работают в тесной связке с IDS, своевременно предупреждая администратора о потенциальных атаках.
Напишите что-нибудь свое. Любой грамотный администратор сможет написать нужный ему скрипт на 2-3 языках. Так почему бы не потратить лишние 10 минут и не написать примитивную ловушку для взломщика? К примеру, в любой системе есть скрипты, которые обслуживают систему - воспользуйтесь ими. Скопируйте /etc/passwd в какой-нибудь малоприметный файлик в недрах рабочих каталогов скриптов и вставьте одну (!) команду в работающий скрипт вот она:
diff /etc/passwd /path/to/saved/passwd
Все. Самая примитивная ловушка готова. В обычном режиме никаких видимых изменений не произойдет. Однако когда взломщик поменяет содержимое /etc/passwd, то diff выдаст те строчки, которыми различаются файлы. А так как скрипты выполняются из-под crond, то последний переадресует эти различия администратору. Просто? Просто! Ловушка примитивна до безобразия, но очень тяжело обнаруживаемая. Однако из двух-трех подобных ловушек при взломе одна обязательно сработает. Не хотите хранить файл passwd - кто мешает считать для него контрольную сумму по алгоритму md5? А чем плох подсчет контрольной суммы программы ps? Эти ловушки хороши имено своим примитивизмом. Даже то, что их приходится периодически "взводить" при обновлении системы или заведении пользователя, хорошо - автоматом вы проверяете их работоспособность.
В общем, не надо надеяться на то, что "linux - это вроде как unix и его поломать невозможно". Ломается все. Главное - за какое время и с каким шумом.
www.sdteam.com
Различные операционные системы 03-02-2007 На предстоящей неделе Microsoft выпускает закрытую бета-версию Service Pack 2 для Vista 28-10-2008 Различные операционные системы На предстоящей неделе корпорация Microsoft выпустит первую закрытую бета-версию пакета обновлений Service Pack 2 для операционной системы Windows Vista. В пакете SP2 заявлено множество нововведений, в том числе встроенная поддержка работы с форматом Blu-ray.Майк Нэш, руководитель отдела разработки Windows, напомнил, что с прошлого года Microsoft начала выводить клиентские и серверные версии своих ОС на единый и синхронный цикл выхода основных нов...
Информация, необходимой для устранения проблемы синего экрана Windows XP 22-08-2008 Различные операционные системы Операционная система Windows XP славится своим умением зависать по самым разным поводам и с самыми разными результатами. Иногда решить проблему можно просто завершением неотвечающего приложения или перезагрузкой, но в некоторых случаях это может привести к сбою всей системы. Microsoft называет такие сбои «стоп-ошибками» (Stop errors), потому что в подобных случаях система перестает реагировать на действия пользователя. При возникновении стоп-ошиб...
Microsoft тратит 300млн. долларов на раскрутку Windows Vista 22-08-2008 Различные операционные системы Корпорация Microsoft готова инвестировать $300 млн на PR-камапнию для Windows Vista. По мнению ведущих маркетологов, этой суммы должно с лихвой хватить для поднятия имиджа операционной системы, которая оказалась не совсем удачной для Microsoft. В основном вся критика по поводу данной ОС сводилась к трем факторам:1. Проблемы с совместимостью оборудования и программного обеспечения;2. Проблемы обеспечения безопасности;3. Потеря производительности.С...
Microsoft выпускает новую Windows XP для работы на ноутбуках OLPC XO 28-07-2008 Различные операционные системы В рамках ранее объявленного сотрудничества между некоммерческим фондом One Laptop Per Child (OLPC) и Microsoft было достигнуто соглашение о выпуске специализированной версии WindowsXP, предназначенной для работы на "стодолларовых" детских ноутбуках XO. Об этом сообщил Джеймс Уцшнайдер, менеджер Microsoft по развивающимся рынкам.Спецверсия Windows XP будет иметь драйверы для загрузки ОС с карты памяти SD, а также получит принципи...
Навигационная система "хлебные крошки" (breadcrumb) как замена кнопке "Вверх" в Vista 18-06-2008 Различные операционные системы Как вам уже, наверное, известно, я нахожусь в постоянном поиске полезных гаджетов и утилит типа PowerToy, расширяющих возможности операционной системы Windows Vista. Во время недавней охоты я наткнулся на ряд программ, разработанных для добавления в интерфейс проводника Vista кнопки «Вверх» (Up).Кнопка «Вверх»Неудивительно, что появилось множество утилит для добавления кнопки «Вверх» в интерфейс Проводника Vista — мы привыкли пользоваться ей для ... |