Сквозь огненные стены Докучаев Дмитрий aka Forb Xakep, номер #066, стр. 066-064-1 (forb@real.xakep.ru) Методы обхода файрволов Способов защитить свой сервер много. Однако каждый из них требует особого внимания: необходимо постоянно изучать логи, обновлять софт, читать багтрак... С другой стороны, можно просто поставить файрвол и идти пить пиво. Ведь даже слабо настроенный брандмауэр способен отпугнуть любого скрипткиддиса. Но не такого матерого хакера, как ты :). Постановка задачи Как ты понял, мы обсудим несколько эффективных методов обхода файрвола. Они тебе, несомненно, пригодятся в поисках изъяна в настройках твоего сетевого экрана (а не для того чтобы беспрепятственно ломать невинных провайдеров :)). Все способы опробованы лично мной и зарекомендовали себя очень хорошо (\m/ - прим. ред.). Начнем с простого - назови мне главную функцию любого файрвола. Правильно! Любой брандмауэр ориентирован на фильтрацию пакетов, приходящих на определенный сетевой интерфейс. Обрубание пакетов происходит на основании так называемых правил, составленных системным администратором. Главная задача для тебя - обойти эти самые правила, тогда брандмауэру будет не к чему прикопаться. Поиск достоверной машины Представь ситуацию: ты соединяешься с 22 портом машины, к которой имеешь полноценный доступ, но жестокий файрвол блокирует соединение. Недалекие люди сразу забивают на такую тачку, мотивируя это тем, что ничего другого не остается. Как же они ошибаются :). В данном случае необходимо просканировать на порты сабнет, в котором находится машина. Если подсеть не особо защищена, ты увидишь множество серверов с открытыми портами. Вот тут от тебя и потребуется настоящее хакерское мастерство. Каким-либо способом (неважно каким, я уже сказал, что не собираюсь учить тебя ломать невинные серверы ;)) ты должен попасть внутрь машины. Например, если тебе действительно известен SSH-аккаунт на Unix-тачку, куда не пускает файрвол, то есть вероятность совпадения логина и пароля на другой сервер из этого сабнета. Если же пароль не совпадает, ничего не остается, как щупать серверы на известные баги. Возможно, удача тебе улыбнется, и администратор не заметит твоих шалостей :). Итак, ты внутри. Повторюсь, что для данного метода желательно поиметь именно шелл на Unix-сервере. Теперь ты можешь попробовать подключиться на защищенную файрволом машину с только что взломанной: ssh victim.com. В большинстве случаев соединение не будет отфильтровано, ведь ты подключаешься к защищенному серверу из доверенной сети. Таким вот образом из-за ошибки на одной машине ставится под угрозу безопасность всей сети. Плюсы: 1. Несложная реализация. Достаточно лишь найти уязвимую машину в подсети с ломаемым сервером, и файрвол тебя пропустит. 2. Низкие привилегии. Для обхода совсем не обязательно получать рутовые права. Минусы: 1. Низкая вероятность. Если админ не дурак, он проставит ACCEPT не на весь сабнет, а только на избранные машины. Считай, что тебе крупно повезло в случае, когда ты забрался на достоверный сервер. 2. Высокая опасность. Когда администратор выполнит last, он может увидеть подозрительные входы на его машину. Тут все зависит либо от твоей сообразительности, либо от IQ админа. |