Hack FAQ

Xakep, номер #049, стр. 049-048-1


VEiDER

hack-faq@real.xakep.ru

Задавая вопросы, конкретизируй их. Давай больше данных о системе, описывай абсолютно все, что ты знаешь о ней. Это мне поможет ответить на твои вопросы и указать твои ошибки. И не стоит задавать вопросов вроде "Как сломать www-сервер?" или вообще просить у меня "халявного" интернета. Я все равно не дам, я жадный :). И проверяй, пожалуйста, свои письма на ошибки. У меня тоже с русским языком проблемы, но иногда такие шедевры приходят, что просто криптография какая-то :).

Q: Что такое "сканер портов"? Зачем они нужны? И как они работают?

A: Из названия понятно, что это софт, который может сканировать заданный диапазон адресов на предмет открытых/закрытых портов. Работа любого порт-сканера сводится к попытке установить соединение с удаленным хостом на определенный порт, и если соединение удалось, то порт открыт, в противном случае - закрыт.

Q: Могут ли меня засечь, когда я сканю порты некоторого компа?

A: Засечь можно, но ты можешь максимально усложнить эту задачу. Помимо обычного (connect()) сканирования, которое, естественно, легко вычисляется, также существует stealth-сканирование. При stealth-сканировании на порт удаленного компьютера отправляется пакет с флагом SYN - начало установления tcp-соединения. В ответ, если порт открыт, возвращается пакет с флагами SYN/ACK. Таким образом ты узнаешь, что порт открыт, но при этом в файлах журнала соединение не зафиксируется, так как tcp-соединение не было установлено. Существует еще множество способов скрыть попытки сканирования. Многие из них реализованы в сканере nmap (http://www.insecure.org/nmap/).

Q: Я просканил один комп, а сканер показал, что на нем открыто 3575 портов. Как такое может быть?

A: Возможно, но крайне маловероятно, что на сервере действительно запущено такое ненормальное количество сервисов. С другой стороны, на сервере может стоять система защиты от сканирования, типа siphon, которая работает следующим образом: повисает на неиспользуемые порты и при попытке подключения к ним пишет лог.

Q: Сканировал один сервак на порты открытые. Порта три отсканил, теперь он на пинг не отвечает. Это я его своим сканом так зафлудил?

A: Ну, если у тебя широкий канал, а сервак стоит у модемщика, то может ты его и зафлудил... Но вряд ли. Скорее всего, там стояла утилита, выявляющая попытку сканирования, и она добавила тебя в /etc/hosts.deny. Или все та же прога, заметив, что ты сканишь сервак, добавила правило к фаерволу. Методы разные, а результат один - прикрывается доступ к серверу.

Q: Лазал по инету, нашел сервер http-шный. Решил посмотреть, что на нем еще есть, а мой любимый сканер говорит что "host down". Почему я страницу посмотреть могу, а хост по ping'у недоступен?

A: Видимо твой сканер, прежде чем начать сканирование, проверяет, жива ли вообще жертва. Он посылает на нее icmp echo request (ping) и ждет icmp echo reply. Если он этого ответа не получает, то считает, что хост в дауне. Самое тривиальное, что может быть - на сервере прикрыты icmp echo request'ы. Таким образом твой сканер не получает ответа на свой запрос и отказывается сканить хост. У большинства сканеров есть функция не проверять на живучесть сервера, у nmap'а это опция -P0.

Содержание  Вперед на стр. 049-048-2