Жаль, что мы не можем запретить маршрутизацию от источника на компьютере хакера, но мы не должны принимать такие пакеты на своей стороне и тем более на компьютере, который выполняет роль шлюза в Интернет (прокси-сервер или сетевой экран). Для этого необходимо установить 1 в файле /proc/sys/net/ipv4/conf/all/accept_source_routeили выполнить команду:
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
Протокол SNMP (Simple Network Management Protocol, простой протокол сетевого управления) применяется для управления сетевыми устройствами, такими как маршрутизаторы, управляемые коммутаторы и даже бытовыми устройствами, подключенными к сети.
Существует три версии этого протокола. Первая версия была разработана очень давно и, конечно же, осуществляла открытый обмен паролями и данными. Шифрование было добавлено в SNMP, начиная со второй версии. Именно поэтому первую версию не рекомендуется использовать, а лучше даже запретить.
У SNMP есть еще один недостаток — протокол использует в качестве транспорта UDP-протокол, который не поддерживает виртуальное соединение, и передача осуществляется простой отправкой пакетов в сеть без подтверждения доставки и без каких-либо авторизаций, т.е. злоумышленник легко может подделать любые поля пакета.
Я не рекомендую использовать SNMP вообще, потому что для большинства задач можно обойтись без него. Конечно же, шифрование, добавленное во второй версии, значительно повысило безопасность, и его можно стало применять даже в особо важных случаях. Но необходимо сначала убедиться, что вы работаете именно со второй или более старшей версией и шифрование используется.
Когда вы запускаете какие-либо команды или программы, то необходимо указывать полный путь к ним. Большинство пользователей и администраторов просто указывают имя запускаемого объекта, что может стать причиной взлома. Да что там говорить, я сам грешу вводом коротких команд
Рассмотрим пример того, как злоумышленник может использовать короткие имена в своих целях на примере команды ls
:
□ хакер создает в каком-либо каталоге (например, в общедоступном /tmp) файл с таким же именем, как и у атакуемой программы;
□ в этот файл может быть записан сценарий, который выполняет необходимые хакеру действия.
Например, следующий код может быть записан в такой файл:
#!/bin/sh
# Изменяем права доступа к файлам /etc/passwd и /etc/shadow
chmod 777 /etc/passwd > /dev/null
chmod 777 /etc/shadow > /dev/null
# Выполняем программу
ls exec /bin/ls "$@"
В данном примере выполняется всего три команды. Первые две изменяют права доступа к файлам /etc/passwdи /etc/shadowтак, чтобы любой пользователь смог их прочитать. При этом все сообщения, которые могут возникнуть во время выполнения команд, направляются на нулевое устройство /dev/null, чтобы они не отображались на экране. После этого выполняется системная команда ls
из каталога bin
.
Теперь устанавливаем программе ls права, которые позволят выполнять ее любому пользователю:
chmod 777 /tmp/ls
Ложный файл готов. Теперь необходимо сделать так, чтобы он выполнялся вместо системной команды ls
. Для этого достаточно добавить в системную переменную окружения PATH
в самое начало каталог /tmp. Если теперь кто-либо запустит команду ls
без указания полного пути, то выполнится наш сценарий, который попытается изменить права доступа на файлы паролей. Если у пользователя, запустившего команду, хватит полномочий для изменения прав, то можно считать, что система взломана.
Следите за содержимым системной переменной окружения PATH
, чтобы ее никто не изменил.
14.12.5. Доверительные хосты
В файле .rhostsможно прописать адреса хостов, которым вы доверяете. Пользователи этих компьютеров смогут подключаться к серверу без аутентификации с помощью таких программ, как Telnet или FTP.
Мы уже столько раз говорили о безопасности, что нетрудно догадаться, что хакер может подделать адрес отправителя. Если ему удастся это сделать, то ваш сервер превращается в проходной двор.
Для защиты паролей Linux достаточно только охранять файл /etc/shadow. Помимо этого вы должны контролировать сложность паролей, регулярно пытаясь подобрать пароль по популярным словарям, которые легко найти в Интернете (именно их используют хакеры). Если пароли сложные, то даже при получении файла взломщику понадобится слишком много времени, и скорей всего ничего не удастся.
Читать дальше
Конец ознакомительного отрывка
Купить книгу