Сетевые сервисы

Ядро системы

Операционная система Linux является плодом труда людей, а им, как известно, свойственно ошибаться, даже в коде ядра. Отсюда первая угроза безопасности – ошибки в ядре системы. Подобные ошибки обнаруживаются не столь часто, сколь ошибки во всём остальном программном обеспечении, однако же такое бывает. Защита здесь одна (одинаковая для всех подобных проблем) – постоянное отслеживание информации безопасности (например, неплохим источником информации, помимо списка рассылки от производителя дистрибутива, является сайт www.securityfocus.com и его списки рассылки) и показания сервера.

Впрочем, существуют патчи на ядро, которые позволяют повысить защищённость системы в целом и ядра в частности. Основное внимание в таких патчах (в том числе кумулятивных) уделяется возможности противостоять системе от общих атак на программы с ошибкой на переполнение буфера, от атак на программы с некорректным созданием временных файлов и также на возможность уменьшить количество информации, которую может получить атакующий о системе (https://www.openwall.com/).

Также существуют патчи, специализирующиеся на сетевом аспекте работы ядра ОС. В их задачи входит встраивание функции защиты от сканирования в ядро системы (https://www.lids.org), а также функции затруднения определения версии ОС средствами таких сетевых сканеров, как nmap.

При объединении всех этих патчей получается ядро системы, которое самостоятельно сможет предохранять систему от большинства типов известных атак: атаки на переполнение буфера, атаки на программы с неправильной работой с временными файлами, сетевое сканирование машины с целью определения открытых портов и версии операционной системы.

В большинстве случаев, по непонятным для автора причинам, на «свежеустановленном» сервере по умолчанию запущены практически все возможные сервисы (например, совершенно не нужный на сегодняшний день 7-ой порт, сервис echo).

Практически каждый день находятся новые ошибки программирования в программном обеспечении. В том случае если будет найдена ошибка в сервисе, работающем на сервере, то через некоторое (не очень большое) время можно будет ожидать желающих скопрометировать сервер (так как, например, ошибки на переполнение буфера, дают возможность выполнить любой код с правами сервера, которые нередко есть права суперпользователя – root). Защититься от таких проблем можно:

во-первых, регулярно отслеживая события безопасности (и опять же www.securityfocus.com будет, пожалуй, самым авторитетным и полным источником информации);

во-вторых, немного «подковав» ядро системы (различными патчами безопасности, как описано выше);

в-третьих, просто используя серверы, которые пишутся с большой осторожностью и с учётом требований безопасности, ну и конечно же, не используя ненужные сервисы.

Начнём, пожалуй, с ненужных сервисов. Задачи, конечно, у каждого сервера могут быть специфичными, но всё же можно сказать, что в большинстве случаев ненужными и в чём-то просто опасными являются порты (с соответствующими сервисами) с первого по девятнадцатый включительно. Какие-то из них могут быть полезными, но большинство из них сейчас не используется. Не стоит открывать без особых причин и такие порты как 37 (time), 69 (tftp), 79 (finger), 111 (sunrpc), 512 (TCP – exec; UDP – biff), 513 (TCP – login; UDP – who), 514 (TCP – cmd; UDP – syslog), 517 (talk), 525 (timeserver).

Теперь что касается наиболее часто используемых сервисов, а именно: HTTP/HTTPS, FTP, Telnet/SSH, SMTP, POP3/IMAP и прокси-сервисы. Рассмотрим каждый сервис подробно.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: