Кто владеет информацией — тот владеет миром.
Ротшильд
Пока другие только пытаются понять законы рынка, используй их!
Терморектальный криптоанализTM
| |
Контроль данных
Контроль данных - это учет входящей и исходящей информации. Вы, администратор, решаете и проверяете, какие данные могут идти по определенному адресу. Эта функция имеет огромное значение. После того как система, входящая в Honeynet, будет взломана, мы несем ответственность за то, чтобы ею не воспользовались для нападения на производственные системы в других сетях. Ключевым элементом контроля данных является устройство проверки трафика, такое как брандмауэр (сетевой экран). Он используется для того, чтобы отделить Honeynet от производственных сетей или от остальной части сети Internet. Любые данные, входящие или исходящие из Honeynet, должны сначала пройти через брандмауэр. Мож-но использовать прозрачный брандмауэр, и пользователи не будут знать, что информация проходит через его систему.
На рис. 3.1 изображена примерная Honeynet, в том числе структура для контроля данных. Три сети - Internet, Honeynet и административная -разделены брандмауэром. Internet - это недоверенная (untrusted) сеть; именно отсюда приходят «плохие парни». Сеть Honeynet - это набор сис-тем honeypot, которые предназначены для взлома. Имейте в виду, что большинство устройств подключения к сети рассматривается как honeypot, поскольку на них тоже может быть совершено нападение. Административная сеть - это доверенная (trusted) сеть, в которой мы будем удаленно собирать данные и администрировать сеть Honeynet. Весь трафик должен сначала пройти через брандмауэр. Сегментация и контроль доступа имеют большое значение. Брандмауэр отслеживает поток трафика, функционируя по следующим правилам:
1. Любой желающий может инициировать соединение с Honeynet из Internet. Это позволяет взломщиками сканировать, зондировать и в конечном счете взламывать системы, входящие в Honeynet. Это правило можно изменить, чтобы оно дублировало систему правил вашей производственной системы.
2. Брандмауэр контролирует то, как honeypot инициирует соединение с Internet. Эта функция имеет большое значение, так как не позволяет взломщиками воспользоваться Honeynet для нападения или взлома других производственных систем в доверенных сетях.
3. Honeynet и административная сеть не имеют каналов прямого сообщения. Это гарантирует, что взломанные системы honeypot не смогут установить соединение с административной сетью и изменить или разрушить собранную информацию.
После того как honeypot подвергнется нападению, необходимо сдержать действия взломщика. Под действиями мы подразумеваем установление соединений, исходящих из Honeynet. Объем разрешаемых действий зависит от уровня приемлемого риска. Чем больше действий мы разрешаем, тем больше риск и тем больше мы можем узнать. После того как honeypot оказывается взломанной, хакеры, скорее всего, установят соединения с Internet, преследуя различные цели: украсть инструментарий, установить соединение IRC, просканировать другие системы и т.д. Однако эти действия необходимо контролировать. Если их не сдержать каким-либо способом, вы будете сильно рисковать. Предположим, что ваша Honeynet была взломана в субботу, в 2 часа утра, и никого не было на месте, чтобы заметить эти действия. После того как система honeypot была взломана, хакер приступил к взлому других систем в Internet или предпринял массированную атаку «отказ от обслуживания». Чтобы свести этот риск к минимуму, нужно использовать какие-то автоматические средства для контроля за действиями, исходящими из Honeynet. Именно здесь вступает в силу брандмауэр.
Как было сказано ранее, брандмауэр разрешает весь входящий трафик, что позволяет хакерам зондировать, определять и взламывать уязвимые системы. Однако брандмауэр построен так, чтобы пресекать все исходящие соединения, инициированные из Honeynet.
Некоторые пользователи могут вообще запретить все исходящие соединения с Internet, так как это сводит к минимуму практически весь риск.
Однако это, скорее всего, не сработает. После взлома honeypot большинство взломщиков заподозрит неладное, если они не смогут установить ни одного соединения с Internet. Атакованная honeypot может потерять ценность для взломщика, который хотел установить исходящие соединения. Когда honeypot не представляет особой ценности, взломщик, вероятно, покинет систему и вы мало что узнаете. Он также может разозлиться и стереть все данные в системе перед своим уходом. Тем не менее мы не можем разрешить неограниченные исходящие соединения. Если их будет чересчур много, взломанные системы honeypot могут использоваться для взлома или нападения на другие системы в Internet. Необходимо разрешить определенные исходящие соединения, но не слишком много, чтобы не подвергать риску другие системы. Все зависит от того, что вы хотите узнать и как сильно готовы рисковать.
Участники проекта Honeynet установили, что лучше всего разрешить от пяти до десяти соединений за сутки. Это позволит взломщикам установить достаточное количество соединений для завершения тех действий, которые они намеревались совершить, не подвергая риску другие системы. Нарушители получат достаточную степень маневренности, чтобы загрузить свои инструменты, пообщаться с кем-нибудь по IRC, отослать почту или сделать еще что-то. Однако это не позволяет установить достаточно соединений для того, чтобы произвести нападение «отказ от обслуживания», системное зондирование или какие-то иные злонамеренные действия. Помните, что взломщик может прозондировать и атаковать другие системы в локальной сети Honeynet. На самом деле мы даже хотим, чтобы так произошло. По мере того как взломщики нападают на различные системы в пределах самой Honeynet, мы больше узнаем. Однако основная задача заключается в том, чтобы сдержать трафик, идущий из Honeynet по направлению к Internet или другим доверяемым сетям.
Ранее мы отметили, что Honeynet Project разрешает устанавливать любые входящие соединения из Internet в Honeynet. Это было сделано для подражания организациям, которые не защищают свои сети брандмауэрами или фильтрами. Тем не менее вы можете отфильтровать любой входящий трафик по своему желанию, в зависимости от того, что вы хотите узнать. Если ваша организация фильтрует входящие соединения с производственной средой, то, возможно, необходимо установить эти правила и для брандмауэра Honeynet. Воспроизводя правила фильтрации входящих соединений, можно определить риски, существующие в производственной сети. Например, руководство может сказать, что вполне приемлемо разрешить соединения из Internet с внутренним сервером базы данных. Вы можете продублировать этот набор правил фильтрации для брандмауэра Honeynet и установить такой же сервер с СУБД в сети Honeynet. Если хакеры взломают систему с СУБД, входящую в Honeynet, руководство может пересмотреть свое решение о том, какой риск считать допустимым. Правила фильтрации, установленные для брандмауэра Honeynet, будут зависеть от того, что вы хотите узнать. Команда Honeynet Project выясняла, какому риску подвергают себя организации, не фильтрующие трафик Internet. Именно поэтому наш брандмауэр позволял любые входящие соединения.
Мы настоятельно рекомендуем, чтобы вы установили автоматические средства контроля исходящего доступа из Honeynet. Если будет требоваться вмешательство вручную, может произойти слишком много нежелательных событий. Например, если должным образом установить настройки брандмауэра, он будет посылать по e-mail предупреждение, когда из Honeynet попытаются установить пять или больше соединений с Internet. После того как вы получите это сообщение, необходимо вручную заблокировать все соединения, исходящие из honeypot. Однако у такого способа слишком много недостатков. Например, что произойдет, если предупреждение пришло в 4 часа утра, а вы были еще в постели и не проверяли свою почту? Что случится, если произойдет сбой в DNS (Domain Name Server) или Sendmail, и электронные предупреждения вообще не будут отосланы?
Даже если вы среагируете быстро, события все равно могут выйти из-под контроля. Предположим, что вы среагировали на предупреждение в течение 10 минут после того, как его получили. Взломщик попытался установить пять соединений с Internet, вы немедленно были оповещены, а через 10 минут уже установили доступ к брандмауэру и запретили все действия взломщика. Однако в течение этого времени можно было отослать сотни тысяч пакетов для проведения нападения «отказ от обслуживания». Слишком многое может выйти из-под контроля при личном вмешательстве. Для того чтобы сдержать взломщиков, основной метод должен заключаться в применении автоматических средств.
Для Honeynet Project мы создали сценарий, который работает с большинством брандмауэров, - Checkpoint FireWall-1. Это не значит, что ваш выбор ограничен только FireWall-1, поскольку сценарий можно легко изменить и для других брандмауэров, например IPFilter. Наш сценарий отслеживает, сколько раз система пыталась установить соединения с Internet. После того как число соединений достигнет определенного порога, брандмауэр блокирует источник, больше не разрешая ему устанавливать соединения. Например, если система, входящая в Honeynet, взломана и взломщик устанавливает соединение FTP (File Transfer Protocol) с Internet, это считается за одно соединение. Каждое исходящее соединение, инициированное после этого, также считается. Возможно, взломщик начнет сеанс IRC, попытается перебросить информацию на другую систему или загрузить еще один набор инструментов. Каждое соединение считается. Как только число соединений превышает пороговое значение, брандмауэр прерывает все входящие и исходящие из этой системы соединения. Брандмауэр разрешает любые соединения с другими системами, входящими в Honeynet. Однако определенный IP-адрес взломанной системы honeypot блокируется. Этот процесс происходит автоматически, гарантируя, что, даже если никого нет на рабочем месте, взломанная система будет под контролем.
Сценарий выполняет две функции: посылает предупреждение по электронной почте и автоматически блокирует соединения. Сначала мы рассмотрим, как он справляется с процессом предупреждения; а затем обратимся к процессу автоматической блокировки. Однако это не значит, что вы должны ограничивать себя только описанными здесь техническими приемами. Используйте любое решение, которое вам понравится, если оно обеспечивает выполнение всех необходимых функций.
Брандмауэр высылает администратору предупреждения всякий раз, когда система пытается инициировать соединение с Internet. Предупреждения посылаются на сервер регистрации/предупреждения в административной сети. Они сообщают администратору о том, что система, скорее всего, была взломана и что производятся какие-то действия. Запомните, что если система пытается инициировать соединение, то она взломана по определению: Кроме того, предупреждение сообщает о том, сколько было произведено попыток и достигло ли их число предельно допустимого значения, то есть была ли заблокирована исходная система. Такие предупреждения могут приходить по электронной почте, факсу, на пейджер или другим путем. Ниже приведен пример электронного предупреждения, передаваемого, когда система Honeynet пытается инициировать соединение с Internet. Обратите внимание на то, какая информация в нем содержится, в том числе на количество попыток и на пороговое значение.
Этот процесс выполняется следующим образом. Сначала срабатывает правило из базы правил брандмауэра, которое разрешает пропускать любой трафик из Internet в Honeynet. Благодаря этому любой человек может зондировать, сканировать и взламывать Honeynet из Internet. Затем мы создаем второе правило, разрешающее системам Honeynet начинать соединения с Internet; однако эти соединения контролируются и сдерживаются. Это дает взломщиками возможность выполнять некоторые действия, но снижает риск нанесения ими большого ущерба. Всякий раз, когда инициируется соединение, наше правило запускает определенный сценарий. Он отслеживает, сколько было соединений; если число достигает максимально возможного, любые дальнейшие соединения запрещаются. В предыдущем примере максимальное значение соединений равно 10. У FireWall-1 имеется функциональная особенность, которая позволяет динамично блокировать системы в режиме реального времени. В сценарии используется эта особенность, чтобы блокировать систему Honeynet, когда число соединений достигает максимального предела. Способностью динамической блокировки систем обладают многие брандмауэры. Например, нам удалось создать эту функцию при помощи открытого брандмауэра IPFilter и утилиты Swatch, чтобы наблюдать и подсчитывать исходящие соединения. Ваши возможности в области автоматической блокировки не ограничиваются единственным техническим решением; используйте все, что вам больше подходит.
После этого необходимо добавить правило, согласно которому административная сеть не может связаться с Honeynet или Honeynet не может связаться с административной сетью. Такая сеть используется для сбора важной информации и администрирования. Две сети не должны сообщаться друг с другом. На рис. 3.2 приведен пример подобной базы правил для FireWall-1, состоящей только из трех правил. Первое правило позволяет любым системам, кроме администраторской сети, инициировать соединение с Honeynet. Это дает хакерам возможность прозондировать, просканировать и взломать системы Honeynet. Такие соединения не контролируются; пользователи могут установить столько входящих соединений, сколько им угодно. Если в организации установлена фильтрация входящих соединений, то лучше воспользоваться этими правилами вместо того, чтобы разрешать весь входящий трафик. Это поможет определить риски, существующие в имеющейся базе правил.
Второе правило (выделено на рисунке) определяет, где происходит контроль данных. Оно разрешает инициировать соединения из сети Honeynet в любую другую сеть, кроме административной. Нам нужно защитить эту сеть от сети Honeynet, так как первая представляет собой централизованный пункт сбора и хранения всех собранных данных о действиях взломщиков. Обратите внимание на действие UserDefined в столбце Track. Это означает, что, когда вступает действие это правило, соединение регистрируется и запускается определенный сценарий. Затем этот сценарий отслеживает количество соединений, которые пыталась установить система Honeynet. Если их число достигает максимального значения, дальнейшие соединения будут заблокированы, а взломщик остановлен. Подробные инструкции и сценарий предупреждения можно найти на сайтах hup://шила dmkpress. ги и hup://шила enteract. com/~lspitz/intrusion. html.
Третье правило - отказать, все удалить и зарегистрировать. Оно гарантирует, что любой пакет, не отвечающий требованиям первых двух правил, будет удален брандмауэром.
В некоторых случаях, вы, возможно, надумаете разрешить Honeynet ус-танавливать неограниченное число соединений с Internet, таких как DNS или NTP (Network Time Protocol). Для этого мы рекомендуем, чтобы только одна внутренняя система Honeynet могла устанавливать неограниченное число соединений с доверенной системой в Internet. Это существенно снизит риск, так как число систем, устанавливающих сколь угодно много соединений с другими системами, будет ограничено. Например, чтобы создать в Honeynet DNS-сервер, нужно всем системам установить лимит на доступ к порту 53. Это крайне рискованно, поскольку такие соединения могут быть использованы для сканирования или взлома других систем. Вместо этого нужно, чтобы только одна система в Honeynet функ-ционировала как основной DNS-сервер для Honeynet. Все остальные сис-темы Honeynet будут обращаться на внутренний DNS-сервер. Настройте его так, чтобы он передавал все данные и переправлял их дальше на дове-ренный DNS-сервер в Internet. Это позволит упростить базу правил, раз-решив только одной системе в сети Honeynet устанавливать неограни-ченное число соединений для определенного сервиса (в нашем случае DNS) и только с конкретными системами. Такое правило можно добавить к правилам брандмауэра.
Аналогичные правила можно создать и для того, чтобы открыть Honeynet доступ к другим функциям, таким как NTP. Обозначьте одну систему Honeynet как NTP-сервер, после чего она сможет обращаться к порту 123 UDP (User Datagram Protocol - протокол передачи пользовательских дей-таграм) определенной доверяемой системы для обновления NTP.
Очень важно точно настроить программу, направленную против получения доступа путем подмены IP (spoofing). Получение доступа путем подмены IP происходит тогда, когда пользователь изменяет исходный IP-ад-рес так, что кажется, будто любой отосланный им пакет отправлен из другой системы или сети. Эта техника часто используется при проведении атак «отказ от обслуживания», таких как Smurf- или SYN-переполнение. Атака с подменой IP-адреса может привести к падению производительности или снижению пропускной способности сети выбранной жертвы. Подделка IP-адреса отправителя также значительно затрудняет процесс отслеживания и определения личности нападавшего. Программы защиты от поддельных адресов гарантируют, что из сети Honeynet будут выходить только санкционированные пакеты. Например, в случае с нашей Honeynet покинуть сеть могут только пакеты с исходным 1Р-ад-ресом 172.16.1.x. Это помогает защитить Honeynet от того, чтобы ей воспользовались для дальнейших нападений. Удивительно большой процент взломанных систем Honeynet взломщики пытались использовать для проведения атаки «отказ от обслуживания». Предпринимая правильные меры по предотвращению искажения адреса, вы способствуете снижению риска использования Honeynet для проведения атак «отказ от обслуживания».
Проблема этого решения заключается в том, что взломщики обнаруживают, как брандмауэр фильтрует их трафик. Помните, задача Honeynet может считаться успешно выполненной, только если взломщики не догадываются, что они находятся в системе honeypot. Однако взломщики могут определить, что брандмауэр блокирует исходящие соединения, и даже вычислить производителя брандмауэра и используемую операционную систему. Необходимо внедрить какой-то метод сокрытия брандмауэра. Один из успешно применяемых способов заключается в использовании маршрутизатора. Посмотрите на рис. 3.1 и обратите внимание на наличие маршрутизатора между брандмауэром и Honeynet - он служит для достижения нескольких целей. Во-первых, маршрутизатор экранирует Honeynet от брандмауэра. После того как honeypot оказывается взломанной, нарушители видят вместо брандмауэра стандартный маршрутизатор. В большинстве случаев они ожидают увидеть именно его. Во-вторых, маршрутизатор можно использовать для контроля за правильностью IP-адресов. Применив выходной фильтр, вы будете уверены, что через маршрутизатор пройдут только правомочные пакеты. Наконец, маршрутизатор можно использовать как дополнительное средство регистрации. Как мы скоро узнаем, чем больше уровней регистрации, тем лучше.
В завершение описания того, как следует контролировать и сдерживать входящий и исходящий поток данных в Honeynet, напомним, что сначала необходимо применить контроль доступа, чтобы отделить Honeynet от других сетей. Затем каждый пакет, по мере того как он покидает или входит в Honeynet, проходит проверку и контроль. В большинстве случаев вам, возможно, придется разрешить любой системе инициировать соединение с Honeynet; все будет зависеть от задач организации и от того, что вы хотите узнать. Перечисленные правила позволяют сканировать, зондировать и взламывать уязвимые системы, входящие в Honeynet.
Единственное исключение делается для административной сети. Нельзя разрешить соединение с ней ни одной подозрительной сети. Эта сеть крайне важна, так как используется для сбора данных и администрирования сети Honeynet. Для контроля и сдерживания исходящих соединений также применяется брандмауэр. Этот автоматический метод позволяет взломщику установить столько соединений, чтобы он почувствовал удовлетворение, но не так много, чтобы он мог нанести какой-то ущерб. Команда Honeynet Project обнаружила, что вполне достаточно разрешить от пяти до десяти исходящих соединений. Наконец, в качестве маскировки брандмауэра и второго уровня контроля доступа используется маршрутизатор. Теперь, когда мы контролируем поток данных, следующая задача заключается в записи информации.
|