Хакерство – это мастерство. Любой может постичь его при помощи самообразования. С моей точки зрения хакерство – это креативное искусство находить умные пути преодоления систем безопасности, – так же, как любители открывать замки стремятся преодолеть все закрытые двери исключительно ради развлечения. Можно заниматься хакерством и без нарушения законов.
Тонкое различие лежит в разрешении, которое дает владелец компьютерной системы хакеру на проникновение в свою систему. Есть много путей хакерства даже с разрешения «жертвы». Некоторые осознанно нарушают закон, но никогда не попадаются. Другие идут на риск и отбывают свой срок в тюрьме. И все скрывают свои истинные имена за своеобразными кличками, онлайновыми разновидностями прозвищ.
Но есть единицы таких, как Адриан Ламо, которые занимаются этим делом, не пряча свою личность, и когда они находят лазейки в системах безопасности некоторых организаций, то сообщают им об этом. Это Робин Гуды в хакерском сообществе. Их надо не заключать в тюрьму, а награждать. Они помогают компаниям проснуться до того, как другой злонамеренный хакер нанесет ей действительно серьезные повреждения.
Список организаций, в компьютерные сети которых (по мнению правительства) проникал Адриан Ламо, выглядит по меньшей мере внушительно. В нем есть Microsoft, Yahoo!, MCI WorldCom, excite@home, телефонные компании SBC, Ameritech и Cingular. И завершающий аккорд – New York Times.
Конечно, Адриан стоил компаниям некоторых денег, но совсем не так много, как утверждали его обвинители.
СПАСЕНИЕ
Адриан Ламо не был паинькой с детства. Однажды ночью, к примеру, он со своими приятелями решил исследовать огромный заброшенный индустриальный комплекс, расположенный на берегу какой-то реки. Никакого четкого плана у них не было, они просто бродили по пустым ветхим корпусам и довольно быстро заблудились. Только к двум часам утра им удалось выбраться из лабиринта. Когда они пересекали неработающую железную дорогу, проходящую вдоль огромных башен завода, Адриан услышал слабый плач. Хотя его друзья очень хотели выбраться оттуда, победило любопытство Адриана.
В поисках источника этих жалобных звуков они пришли к грязному водостоку. В слабом ночном свете они разглядели, что звуки издавал крошечный котенок, который не мог выбраться оттуда и мяукал изо всех сил.
Адриан набрал телефон службы спасения и вскоре фары полицейского джипа ослепили их.
Наши исследователи были одеты, как говорит Адриан, в стиле «городских естествоиспытателей – элегантно, но с толстым слоем грязи поверх костюмов. Подобная форма одежды не вызывает симпатии и доверия у полицейских». Не меньшую подозрительность вызывал и юный возраст ребят, так что «наша встреча вполне могла закончиться арестом», говорит Адриан. В его голове пронеслось несколько сценариев развития событий: они могли подвергнуться долгому допросу с последующим арестом или … у него созрел план.
«Я показал им вниз и сказал: „Послушайте, в водосток провалился котенок. Я уверен, что вы поможете нам“. Через два часа все было закончено, никого из нас не обыскивали и подозрительность рассеялась».
Силами экипажей двух полицейских джипов, а потом еще и машины Общества охраны животных, провалившийся котенок был вытащен из глубокой трубы. Полицейские передали котенка Адриану, который взял его домой, вымыл и назвал «Алиби». Его приятели называли котенка «Драный».
Позднее Адриан не раз вспоминал эту встречу. Он не верил в случайные совпадения, все они оказались там в одно и то же время не случайно. Так же он относился и к своему, «почти трансцедентально-му» компьютерному опыту: случайностей в мире не бывает.
Интересно, что Адриан и трудное положение, в которое попал котенок, рассматривал, как некую аналогию хакерской жизни. Такие слова как «адаптация», «импровизация» и «интуиция» приходят на ум в качестве важнейших составляющих, когда для успешного завершения дела вам приходится прорываться через множество ловушек и тупиков на перекрестках и в потайных закоулках Интернета.
КОРНИ
Адриан родился в Бостоне, и в детстве ему пришлось много поездить по Новой Англии, пока, наконец, его семья не осела в Вашингтоне. Его отец, родившийся в этом же округе – Колумбия, писал рассказы для детей и занимался переводами с испанского языка; Адриан считает его прирожденным философом. Его мама преподавала английский язык, но сейчас занимается домом. «Они с самого детства брали меня на всякие политические митинги. Они помогали мне расширить кругозор и понять все, что происходит в мире».
Адриан считает, что он не относится ни к одной из демографических групп, хотя большинство хакеров, по его мнению, относятся к «верхушке среднего класса». Я имел удовольствие общаться с его родителями, они рассказали мне, что одной из причин, по которой их сын занялся хакерством, было его восхищение перед несколькими выдающимися хакерами. Мое имя не упоминалось, но в общении с Адрианом у меня родились основания подозревать, что одним из них был и я. Его родители просто не хотели смущать меня.
В семилетнем возрасте Адриан начал дурачить окружающих при помощи компьютера своего отца Commodore 64. Однажды его очень расстроила текстовая игра с приключениями, в которую он пытался играть. Казалось, что любое развитие событий ведет к смертельному исходу. Он обнаружил, что пока программа загружается в компьютер. еще до нажатия команды «Run», есть способ дать компьютеру команду распечатать текст кодов всей программы. В этой распечатке он нашел все ответы на вопросы, которые искал и быстро выиграл игру.
Хорошо известно, что чем раньше ребенок начинает изучать иностранный язык, тем более естественно он воспринимает его. Адриан считает, что это верно и для раннего начала работы с компьютером. По его мнению, причина в том, что мозг еще не «затвердел». сеть его нейронов более гибкая и подвижная, она быстрее усваивает информацию и подстраивается к ситуации, чем это бывает в более старшем возрасте.
Адриан вырос буквально погруженным в мир компьютеров, всегда рассматривая его как продолжение реального мира, в котором можно жить и действовать. Для него компьютер никогда не был чем-то, о чем вы прочли и в чем пытаетесь разобраться. Компьютер для него никогда не был каким-то посторонним устройством, типа холодильника или автомобиля, а скорее окном в самого себя. Он считает, что обрабатывает информацию таким же образом, как это делает компьютер и его программы.
ПОЛУНОЧНЫЕ ВСТРЕЧИ
Изо всех корпоративных компьютерных систем, в которые Адриан проникал, он считает excite@home своим главным приключением в стиле «плаща и кинжала». Все началось с того, что кто-то предложил ему проверить сайт компании @home. Сайт компании, являющейся клиринговым домом для всех поставщиков услуг кабельного Интернета в США, как думал Адриан, должен быть надежно защищен, и его взлом будет сложным делом. Но если ему удастся это сделать, он получит доступ к важной информации обо всех пользователях кабельных сетей в стране.
Как раз тогда хакеры обнаружили, что Google может быть удивительно полезным при выявлении вероятных мишеней атак и получении полезной информации о них. Адриан выполнил множество своих хакерских набегов при помощи поиска набора ключевых слов, который часто приводил его на сайты, где были те или иные прорехи в конфигурации.
Итак, он присоединил свой ноутбук к открытой сети в одной из комнат Университета Филадельфии и отправился на Интернет-сайт excite@home. Подобное место для выхода в Интернет было обычным для него: он старался делать это в местах, которыми пользуются много людей, например в Интернет-киосках, или в публичных точках беспроводного доступа – соединение из таких мест обеспечивает простой и эффективный способ для хакера замаскировать свое местоположение, Раскрыть личность человека который случайно использует точки публичного доступа в Интернет крайне сложно.
Стратегия Адриана заключалась в том, чтобы проникнуть в мыслительный процесс человека, который создавал программу или сеть, в которые он пытался проникнуть, используя весь свой опыт и зная стандартные приемы, которыми сетевые архитекторы обычно пользуются при создании своих систем. Ему особенно хорошо удавалось использование неправильно сконфигурированных прокси-серверов – специальных компьютерных систем, которые организуют трафик между внутренней сетью и внешними «незащищенными» сетями типа Интернета. Прокси-сервер изучает каждый запрос на соединение в соответствии с правилами, которые ему заданы. Когда неумелый сетевой администратор запускает задачу конфигурирования прокси-сервера, любой, кто в этот момент соединится с прокси-сервером, может проложить себе «туннель» в предположительно безопасную внутреннюю сеть компании.
Для хакера подобные «открытые прокси» являются просто приглашением к вторжению, поскольку они дают ему возможность создать запрос, который будет выглядеть так, как будто он пришел от абсолютно законного сотрудника компании, то есть из внутренней сети компании.
Из университетской компьютерной комнаты Адриан обнаружил неправильно сконфигурированный прокси-сервер, который открыл ему путь к внутренним Интернет-страницам различных департаментов excite@home. В специальном разделе технической помощи он задал вопрос о своих проблемах с входом в компьютер. В ответ ему прислали адрес URL, который был предназначен специально для помощи в разрешении проблем с ИТ-инфраструктурой. Проанализировав этот адрес, он получил возможность доступа к другим подразделениям компании, которая использовала ту же технологию. Его не спрашивали об авторизации: система была настроена на то, что любой человек, проникший в эту часть сети, может быть только сотрудником или другим авторизованным человеком, – столь широко распространенное заблуждение, что оно имеет специальное название: «безопасность через неясность».
Для реализации следующего шага он направился на сайт, весьма популярный в среде исследователей сети – netcraft.com. Адриан входил в различные доменные имена, а сайт Netcraft отвечал ему на это списком Е-серверов, показывая их как компьютеры Solaris с ПО Apache.
По мере исследований Адриан обнаружил, что сетевой центр управления компании предлагает услуги технической поддержки, которые позволяют авторизованным сотрудникам прочесть детали запросов пользователей о помощи: «Помогите! Я не могу войти в свой компьютер», или нечто подобное. Иногда сотрудник компании спрашивает у пользователя его имя и пароль – действия безопасные, поскольку происходят они за корпоративным межсетевым экраном; полученная информация будет включена в список технических проблем.
То, что нашел Адриан, по его словам, «открыло ему глаза». В списке жалоб содержалась именно эта информация о пользователях – их имена и пароли, жалобы и отчет об их устранении. Он обнаружил также и текст для создания «паролей авторизации», которые позволяют техникам входить в компьютер к любому пользователю для устранения проблем без необходимости знания пароля пользователя.
Одна из подобных записок привлекла внимание Адриана, В ней был описан случай пользователя, который более года назад просил о помощи в связи с тем, что его кредитная карточка была украдена кем-то с сайта IRC. В этой записке было отмечено, что техническая служба ответила, что это не входит в их компетенцию. Попросту бедного парня отфутболили. Адриан позвонил этому человеку. Представился техником компании и сказал: «Привет, я не занимаюсь вашей проблемой, я просто хочу понять, отвечал ли вам кто-нибудь из нашей службы?» Мужчина ответил, что не услышал ни одного слова в ответ. Адриан прямо отправил ему необходимый отчет и всю внутреннюю документацию, относящуюся к нему.
«Я почувствовал удовлетворение, поскольку я хочу верить в справедливость мира даже в таком извращенном виде, когда ответить на вопрос об украденной у вас кем-то из I R C базе данных вам через год может лишь хакер, который проник в сеть компании, которую вы доверчиво просите о помощи».
В конце концов, открытый им прокси-сервер перестал давать ему доступ. Он не знал почему, просто перестал входить в него. Тогда он стал искать другой путь. Подход, который он придумал, был по его словам «совершенно новым».
Первый его шаг заключался в том, что называется «поиск обратной D N S » – поиск названия узла по его IP-адресу. (Если вы дадите своему браузеру указание идти на сайт , то запрос отправится в Domain Name Server, который и преобразует это имя в адрес, который может быть использован в Интернете для переадресации вашего запроса – 209.151.246.5. Тактика, которую избрал Адриан была обратной: он набирал IP-адрес, а в ответ получал имя домена, которому этот адрес соответствовал).
Таким образом он исследовал много адресов, большинство которых не представляло никакого интереса. Он набрел только на несколько сайтов, начинающихся со слова «dialup», типа dialup00.corp.home.net, Он предположил, что это названия узлов, с которыми связываются сотрудники, находящиеся в дороге для входа в корпоративную сеть.
Вскоре он обнаружил, что эти dial-up номера используются сотрудниками, которые работают на компьютерах со старыми версиями операционных систем, таких как Windows 98. Некоторые сотрудники использовали «открытое ПО», которое позволяло осуществить удаленный доступ к некоторым директориям или даже ко всему жесткому диску без необходимости читать или писать пароль. Адриан понял, что может внести изменения в тексты операционной системы так, что будут выполняться команды по его желанию. После написания собственных файлов запуска операционных систем пришлось подождать, поскольку система должна была перезагрузиться, чтобы заработала его версия с изменениями. Но Адриан умел быть терпеливым.
Терпение всегда вознаграждается, и Адриан перешел к следующему шагу: установке «RAT» (Remote Access Trojan – троянский червь для удаленного доступа). Чтобы сделать это, он не стал использовать уже известные трояны, созданные другими хакерами для своих злобных намерений. Современные популярные антивирусные программы разработаны для того, чтобы распознавать общеупотребительные трояны и программы создания «черного хода» и обезвреживать их мгновенно. Для решения этой проблемы Адриан нашел совершенно законное приложение, созданное для использования сетевыми и системными администраторами – коммерческое ПО для удаленного управления, которое он слегка модернизировал, чтобы оно стало незаметным для пользователя.
Тогда как антивирусные программы ищут программы удаленного доступа, которые используют хакеры, они не смотрят на законные программы для удаленного доступа, созданные крупными разработчиками ПО, предполагая, что такие программы ничего плохого сделать не могут (так полагал и я, поскольку крупная компания может подать иск, если антивирусное ПО сочтет ее программу вредной и заблокирует ее действие). Лично я считаю, что это плохая идея; антивирусные программы должны извещать пользователя о любом продукте, который может использоваться в злонамеренных целях и предоставить пользователю решать, насколько он законен. И вот – Адриан часто устанавливал «законные» RAT, которые антивирусные программы не могли обнаружить.
После того, как он успешно установил RAT на компьютере сотрудника @home, компьютер выполнил определенную последовательность команд, которая дала Адриану информацию об активных сетевых соединениях с другими компьютерными системами. Одна из таких команд «netstat» показала ему сетевую активность сотрудника, который в данный момент был соединен с внутренней сетью @home через dial-in и выявил тот компьютер во внутренней сети, на котором работал этот человек в данное время.
Чтобы показать образец данных, которые выдает программа netstat, я запустил ее на своей собственной машине; эта распечатка выглядела так:
С:/Documents and Settings/quest>netstat —a
Active connections
Proto Local Adress Foreign Address
State
TCP lockpicker:1411 64.12.26.50:5190
ESTABLISHED
TCP lockpicker:2842 catlow.cyberverse.com:22
ESTABLISHED
TCP lockpicker:2982 www.kevinmitnik.com:http
ESTABLISHED
В столбце «Local Adress» перечислены имена местных машин («lockpicker» – так тогда назывался мой компьютер) и номер порта той машины. В столбце «Foreign Adress» показано имя хоста (узла) или IP-адрес удаленного компьютера, с которым реализовано соединение. Например, первая линия распечатки показывает, что мой компьютер установил соединение с 64.12.26.50 через порт 5190. который обычно используется для передачи мгновенных сообщений (AOL Instant Messenger). Столбец «State» показывает состояние соединения – «Established», если соединение в данный момент активно, «Listening» – если компьютер ожидает соединения.
В следующей строке, начиная с «catlow.cyberverse.com» показано имя хоста компьютерной системы, с которой соединен я. В последней строке « означает, что я активно соединен со своим личным Интернет-сайтом.
Владелец компьютера не должен запускать приложения на общеизвестных портах, но он может сконфигурировать компьютер так, чтобы использовать нестандартные порты. Например. H T T P (Интернет-сервер) работает на порте 80, но владелец может изменить номер порта, чтобы Интернет-сервер работал где угодно. Изучая ТСР-соединения сотрудников. Адриан обнаружил, что сотрудники @home соединяются с Интернет-сервером через нестандартные порты.
Из этой информации Адриан смог получить IP-адреса для компьютеров компании, что было аналогично проникновению в секретную корпоративную информацию @home. Среди других «драгоценностей» он обнаружил базу данных имен, адресов электронной почты, номеров кабельных модемов, текущих IP-адресов, даже операционных систем, работающих на компьютерах, для каждого из примерно трех миллионов абонентов широкополосной связи.
Это была «экзотическая атака» по словам Адриана, поскольку она включала в себя перехват соединения от внешнего компьютера, соединяющегося с сетью.
Адриан считает это достаточно простым процессом. Вся основная тяжесть, которая заняла месяц проб и ошибок, состояла в составлении подробной карты сети: надо было выяснить все ее составные части и то, как они связаны друг с другом.
Ведущий сетевой инженер excite@home был человеком, которому Адриан поставлял информацию в прошлом, и ему можно было доверять. Отступив от своего обычного правила использовать посредника для передачи информации в компанию, куда он проник, он позвонил инженеру прямо и объяснил, что он обнаружил определенные слабости в сети компании. Инженер согласился на встречу с ним. несмотря на позднее время. Они встретились в полночь.
«Я показал ему часть из документации, которую я набрал. Он позвонил их эксперту по безопасности, и мы встретились с ним в офисе excite@home около 4.30 утра». Инженер и эксперт внимательно просмотрели материалы Адриана и задали ему несколько вопросов о том, как он проникал в сеть. Около шести утра они закончили, и Адриан сказал, что хотел бы посмотреть на их реальный прокси-сервер, один из тех, что он использовал для получения доступа.
«Мы посмотрели на э т о т сервер и они сказали мне: „А как вы бы обезопасили эту машину?“
Адриан уже знал, что сервер не используется для каких-то важных дел, это был просто «случайный сервер».
«Я вытащил мой перочинный ножик, один из самых простых, с лезвием для открывания бутылок. Я подошел к серверу, перерезал его кабель и сказал: „Теперь компьютер безопасен“.
«Они ответили: „Нам это подходит“. Инженер написал на бумаге „не соединять“ и прикрепил ее к серверу».
Адриан обнаружил доступ в сеть крупной компании при помощи одного компьютера, который уже давно перестал выполнять важные функции, но никто даже не заметил этого и не позаботился о том, чтобы удалить его из сети. «В любой компании», – говорит Адриан, – «есть множество подобных компьютеров, стоящих повсюду, соединенных с внешним миром и неиспользуемых». Каждый из них – потенциальная возможность для проникновения.
MCI WORLDCOM
Так же, как он поступал и с другими сетями, Адриана начал с атаки на прокси-сервер «королевства» WorldCom. Он начал поиск, используя свое любимое средство для навигации в компьютерных сетях, программу под названием ProxyHunter, которая локализует открытые прокси-серверы. Запустив эту программу на своем ноутбуке, он просканировал корпоративные Интернет-адреса WorldCom, быстро идентифицировал пять открытых прокси-серверов – один из них имел URL-адрес, заканчивающийся на world.com. Теперь ему нужно было только сконфигурировать свой браузер для того, чтобы использовать один из этих прокси, и он мог бы путешествовать по внутренней сети WorldCom так же свободно, как и любой сотрудник этой компании.
После проникновения во внутреннюю сеть он обнаружил и другие уровни безопасности, где для проникновения на Интернет-сайты нужны были пароли. Некоторые люди, я уверен, сочли бы удивительным, насколько внимательным старается быть атакующий типа А д —риана, и как много времени он готов провести в своих попытках проникновения и сеть компании. Через два месяца Адриан наконец решил, что пришла пора приступать к делу.
Он получил доступ к системе управления кадрами WorldCom, где узнал список имен и номеров социальной страховки для всех 86000 сотрудников. Обладая этой информацией и датой рождения человека (которую можно найти на сайте anybirthday.com), он получал возможность поменять пароль сотрудника, а также доступ к такой приватной информации, как заработная плата и контактные телефоны. Он мог даже добраться до депозитов сотрудников и переводить их заработную плату на свой счет. Он не соблазнился такой возможностью, но знал, что «куча народу не задумываясь разрушила бы город, чтобы получить несколько сотен тысяч долларов».
ВНУТРИ MICROSOFT
Во время наших бесед Адриан ожидал приговора за несколько компьютерных преступлений: он рассказал историю, за которую его не судили, но она была включена в информацию, собранную следователями. Однако, не желая себе дополнительных сроков заключения, он чувствовал, что должен быть особенно осторожным, рассказывая историю о Microsoft. Надо держать язык за зубами. объяснял он, и везде где только можно вставлял слова «как мне приписывают».
«Я могу рассказать, что мне приписывают. По их словам, я обнаружил (как мне приписывают) Интернет сайт, на который можно входить без авторизациии, на нем не было указания, что это секретный сайт и на нем не было ничего, кроме функции поиска».
Даже этому «королю» программирования не всегда удается держать свои компьютеры в безопасности.
Введя имя, Адриан (как ему приписывают!) обнаружил детальный список онлайн-заказов пользователей. По словам представителей правительства, говорит Адриан, этот сайт содержал информацию о заказах и их выполнении для всех, кто когда-либо заказывал что-нибудь на Интернет-сайте Microsoft, там же содержалась информация о тех случаях, когда кредитные карточки не были приняты к оплате. Совершенно недопустимо было, чтобы такая информация вышла за пределы компании.
Адриан объяснил детали взлома системы безопасности Microsoft журналисту из The Washington Post, которому он доверял, выдвинув свои обычные условия, что ничего не будет опубликовано до тех пор, пока брешь не будет устранена. Журналист передал все детали в компанию Microsoft, где сотрудники ИТ-службы решили не воспринимать это послание как предупреждение. «Microsoft решил выдвинуть обвинение», —говорит Адриан. «Они оценили ущерб в большую сумму – сто тысяч долларов». Потом они передумали. Адриану было сказано, что компания Microsoft «потеряла этот счет». Обвинение во взломе сайта осталось, но без какой-либо суммы в долларах. (Из онлайновых архивов газеты The Washington Post следует, что издатель не счел все произошедшее достаточно интересным для публикации в газете, несмотря на то, что мишенью взлома была компания Microsoft, а всю информацию добыл их собственный сотрудник. Можно только удивляться такому решению).
ГЕРОЙ, НО НЕ СВЯТОЙ: ПРОНИКНОВЕНИЕ В NEW YORK TIMES
Однажды Адриан сидел и читал New York Times, когда его озарила мысль, что можно найти пути для взлома компьютерной сети газеты. «У меня уже был доступ в The Washington Post», вспоминает он, но признает, что попытку нельзя назвать плодотворной, поскольку «там не нашлось ничего достаточно интересного».
Казалось, что Times представляет более сложную проблему для взломщика, поскольку они гораздо более остро воспринимают проблему безопасности в связи со ставшим широко известным несколько лет назад случаем хакерства, когда группа под названием H4G («Хакерство для девчушек») проникла на сайт газеты. Взломщики критиковали автора раздела «Технологии» в Times Джона Маркоффа за его статьи обо мне, статьи, которые внесли свой вклад в очень жесткое отношение ко мне со стороны Министерства юстиции.
Адриан вышел «на старт» и приступил к работе. Вначале он посетил Интернет-сайт и обнаружил, что тот находится на аутсорсинге, его поддерживают не сотрудники газеты, а некая сторонняя компания (ISP – Internet service provider). Это распространенная практика: суть ее в том, что даже проникнув на Интернет-сайт компании, хакер не получит доступа к его внутренней корпоративной сети. Для Адриана это означало лишь то, что придется поработать чуть старательнее, чтобы отыскать путь внутрь.
«У меня нет четкой стратегии», – говорит Адриан о своем подходе к взлому сайтов. «Когда я провожу разведку, то очень тщательно собираю информацию изо всех возможных источников». Другими словами, он не начинает атаку с немедленных попыток проникновения на Интернет-сайт компании, поскольку это может вызвать обратный удар, направленный на него. Вместо этого есть много полезных исследовательских инструментов, которые можно получить бесплатно в ARIN (American Registry for Internet Numbers – Американский регистр Интернет-номеров), организации, ответственной за управление нумерацией ресурсов Интернет в Северной Америке,
Набрав « N e w York Times» в окошечке « К т о » на сайте arin.net, он получил такой список информации:
\ New York Times (NYT-3)
NEW YORK TIMES COMPANY (NYT-4)
New York Times Digital (NYID)
New York Times Digital (AS21568) NYID 21568
NEW YORK TIMES COMPANY NEW-YORK84-79 (NET-12-160-79-0-1)
12.160.79.0 – 12.160.79.255
New York Times SBC068121080232040219 (NET-68-121 —80-232-1)
68.121.80.232 – 68.121.80.239
New York Times Digital PNAP-NYM-NYT-RM-01 (NET-64-94-185-0-1)
64.94.185.0 – 64.94.185.255
Группы из четырех номеров, разделенных точками, это IP-адреса, которые можно рассматривать как Интернет-аналог почтовых адресов с номером дома, названием улицы, города и т.п. Список, который показывает диапазон таких адресов (например, 12.160.79.0 – 12.160.79.255) называется «netblock».
Далее он провел поиск портов в диапазоне адресов, принадлежащих New York Times и сел передохнуть, пока программа сканировала адреса в поисках открытых портов, надеясь, что он отыщет несколько интересных систем, которые сможет атаковать. Ему это удалось. Проверяя целый ряд открытых портов, он обнаружил, что здесь также есть несколько систем, использующих неправильно сконфигурированные открытые прокси-серверы, позволяющие ему соединиться с компьютерами во внутренней сети компании.
Он заглянул на DNS газеты, надеясь найти IP-адрес, который не был бы передан на аутсорсинг и был бы внутренним адресом Times, но – без успеха. Затем он попытался извлечь все DNS-записи для домена nytimes.com. После завершения этой попытки он опять отправился на Интернет-сайт и в этот раз с большим успехом: он обнаружил место, которое предлагало визитерам список адресов электронной почты сотрудников Times, которые соглашались получать письма от читателей.
Буквально через минуту он получил письмо из газеты с запрошенным списком. Правда, это не был список адресов электронной почты репортеров, который он просил, но все равно это был полезный список. Заголовок на этом письме указывал, что оно пришло из внутренней сети компании, вдобавок был показан IP-адрес, который нигде в другом месте не публиковался. «Люди не понимают, что даже обычное электронное письмо может нести много полезной информации», – отмечает Адриан.
Внутренний IP-адрес дал ему возможность проникновения. Следующим шагом для Адриана стало проникновение через открытый прокси-сервер, который он уже обнаружил, и ручное сканирование IP-адресов в том же сегменте сети. Чтобы прояснить сказанное, давайте предположим, что есть адрес 68.121.90.23. Большинство атакующих начало бы сканирование с адреса 68.121.90.1 и продолжало бы, увеличивая последовательно последнее число на единицу до 68.121.90.254. Адриан же пытался поставить себя в положение ИТ-специалистов компании, создававших сеть: естественно предположить, что люди будут выбирать круглые номера, начиная с первого десятка– от .1 до .10, а затем, шагая десятками – .20, .30 и т.д.
Его попытки не увенчались успехом. Он обнаружил несколько внутренних Интернет-серверов, но ни на одном из них не было полезной информации. Случайно он заглянул на сервер, где хранился старый, больше не используемый внутренний Интернет-сайт Times, скорее всего заброшенный после ввода в работу нового сайта, а потом и забытый. Ему показалось это интересным, он внимательно просмотрел сайт и обнаружил link, то есть Интернет-адрес, который должен был идти к старому производственному сайту, а на самом деле вывел его к работающему производству.
Для Адриана это был настоящий «Священный Грааль». Ситуация становилась все более интересной, поскольку он открыл, что на этом компьютере хранились обучающие курсы для сотрудников на тему, как использовать систему. Это было похоже на то, как если бы школьнику за ночь перед сочинением предстояло прочесть «Войну и Мир», а ему попался бы в руки краткий конспект страниц на 50.
Адриану довелось проникать уже на множество сайтов, поэтому его эмоции от успеха на этом этапе были довольно сдержанными, и все же он проник гораздо дальше, чем ожидал. И ситуация могла стать еще лучше. Вскоре он открыл встроенное приложение для сотрудников, с помощью которого они могли найти путь на сайте. «Часто, – говорит он, – системные администраторы не конфигурируют такие приложения соответствующим образом и таким образом позволяют вам совершать поиск там, где это должно быть запрещено».
Именно это и произошло, Адриан называет случившееся спортивным термином «нокаут» или «чистая победа». Кто-то из системных администраторов Times поместил это приложение в одну из директорий, которая позволяла сделать то, что называется «SQL-запрос в свободной форме». SQL (Structured Query Language – структурированный язык запросов) – это язык для общения с большинством баз данных. После запроса появляется специальное диалоговое окно, которое позволяет Адриану ввести SQL-команды без авторизации, то есть он получает возможность проводить виртуальный поиск по всем базам данных системы и получать или изменять информацию по своему усмотрению.
Он определил, что компьютер, на котором были расположены почтовые сервера, использовал программы Lotus Notes. Хакеры знают, что более старые версии Notes дают возможность пользователю просматривать все базы данных в системе, и как раз эта часть сети Times использовала такую старую версию. База данных Lotus Notes, в которую проник Адриан, заставила его «сильно заволноваться, поскольку в ней содержались все сведения о каждом сотруднике, включая их заработную плату и номера социальных страховок». «Там содержалась информация о подписчиках. а также о тех, кто обращался в газету с жалобами или просьбами о помощи».
На вопрос о том, какая операционная система работала в Times, Адриан отвечает, что он не знает. «Я не анализировал сеть с этой точки зрения», – объясняет он.
«Дело не всегда заключается в технологии, чаще всего все бывает связано с людьми и с тем, как они конфигурируют сети. Большинство людей совершенно предсказуемы. Я часто обнаруживал, что люди строят сети одним и тем же образом, снова и снова.
Многие сайты электронной коммерции д е л а ю т э т у ошибку. Они предполагают, что все люди будут пользоваться сайтом одним и тем же образом. Никто не думает о том, что пользователь выйдет за пределы установленного пути».
Из-за этой предсказуемости опытный атакующий может разместить заказ на Интернет-сайте, пройти через весь процесс покупки до той точки, где его информация проверяется, затем вернуться и изменить биллинговую информацию. Он получает товары; кто-то другой получает счет на оплату этих товаров. (Хотя Адриан объяснил всю процедуру в деталях, он специально просил не приводить ее полного описания, что может дать возможность другим повторить ее).
Его мысль заключалась а том, что системные администраторы даже не пытаются поставить себя на место атакующих, что сильно облегчает жизнь последних. Именно это объясняет успех следующих шагов Адриана в его проникновении в компьютерную сеть Times. Внутренняя поисковая машина не должна была проводить поиск по всему сайту, но она делала это. Он обнаружил программу, которая предоставляла SQL-форму, дающую ему контроль над базами данных, включая написание запросов для извлечения информации. Ему еще надо было узнать имена баз данных в этой системе, в поисках тех, что представляли бы интерес. Именно таким образом он нашел очень интересную базу данных: она содержала таблицу имен и паролей для всех сотрудников The New York Times.
Оказалось, что большинство паролей представляют собой последние четыре цифры номера социальной страховки сотрудника. При этом компания даже не позаботилась использовать различные пароли для доступа в области, содержащие особенно важную информацию – один и тот же пароль пользователя действовал в любом месте системы. И, как подсказывает ему опыт, Адриан считает, что и сегодня пароли в Times не более безопасны, чем они были в момент его атаки.
«В конце концов, я смог войти в Интернет и получить доступ к дополнительной информации. Я смог войти на страницу новостей под именем редактора новостей, используя его пароль».
Он обнаружил базу данных, где были перечислены все люди, задержанные в США по обвинению в терроризме, включая и тех, чьи имена не были известны общественности. Продолжая свои исследования, он обнаружил базу данных всех тех, кто когда-либо написал хоть одно слово для первой страницы Times. В ней содержались тысячи имен с адресами, телефонами и номера страховок. Он начал искать имя «Кеннеди» и обнаружил несколько страниц информации. В базе данных содержалась контактная информация о знаменитостях и прочих выдающихся людях от профессоров Гарварда до Роберта Редфорда и Джека Николсона.
Адриан добавил в этот список свое имя и номер мобильного телефона (с кодом северной Калифорнии номер выглядел так «505-НАСК»). Он был уверен, что газета никогда не сможет определить, что список был изменен, и втайне надеялся, что какой-нибудь репортер или редактор захочет с ним пообщаться, поэтому он написал в графе профессия «компьютерное хакерство/безопасность и интеллектуальные коммуникации».
Да, действия Адриана можно считать неадекватными, может даже непростительными. Лично мне они кажутся не только безопасными, но и забавными. Меня до сих пор возбуждает идея Адриана позвонить от имени газеты какой-нибудь знаменитости: «Добрый день. это г-н Джексон? Это такой-то из газеты The New York Times». После чего можно было попросить его высказаться о чем-то или же написать шесть сотен слов о состоянии компьютерной безопасности или на какую-нибудь не менее актуальную тему и на следующий день увидеть свой текст на первой странице самой влиятельной в стране газеты.
Можно еще долго рассказывать сагу «Адриан и The New York Times», но, к сожалению, дальше рассказ становится печальным. То, о чем пойдет речь, не было необходимым, это не характерно для Адриана, но именно это привело к серьезным проблемам. После проникновения в базу данных он обнаружил, что у него есть доступ к подписке Times на услуги компании LexisNexis – онлайновым платным услугам по предоставлению новостной информации.
Как указано в правительственном обвинении, он создал пять отдельных аккаунтов и сделал более трех тысяч запросов.
После трех месяцев «путешествий» по закромам LexisNexis, в течение которых The New York Times оставалась в полном неведении, что ее база данных взломана, Адриан решил перейти к практике в стиле Робин Гуда, чем характеризовались все его предыдущие атаки на другие компании. Он связался с известным Интернет-журналистом (как и я, бывшим хакером) и рассказал о лазейке, которую он использовал для проникновения в компьютерную систему The New York Times – при этом он предварительно получил согласие, что журналист не будет публиковать информацию о взломе, пока предварительно не свяжется с Times и не дождется, что они устранят проблему.
Журналист рассказал мне, что когда он связался с Times, переговоры пошли совсем не таким путем, как ожидали они с Адрианом. Руководство Times, по его словам, не заинтересовалось тем, что он говорил им, не захотело воспользоваться информацией, которую он предложил, не захотело общаться непосредственно с Адрианом, чтобы познакомиться с деталями и пожелало решать проблему самостоятельно. Представитель Times даже не захотел узнать, какой способ доступа был применен и согласился записать подробности только после того, как журналист настоял на этом.
Сотрудники газеты проверили лазейку и в течение 48 часов устранили ее. Но руководство Times даже не подумало поблагодарить человека, который привлек их внимание к существующей у них проблеме безопасности. Более ранняя атака группы «Хакерство для девчушек» очень широко освещалась в прессе, но люди, ответственные за нее, никогда не были пойманы. (Не думайте, что я имею какое-то отношение к этой атаке: в то время я уже был в заключении. ожидая суда). Понятно, что после первой атаки сотрудники ИТ-службы Times попали под очень большое давление, чтобы обеспечить в дальнейшем безопасность от хакерских взломов. Безнаказанные путешествия Адриана по их компьютерной сети наверняка уязвили чье-то самолюбие, нанесли урон чьим-то репутациям, чем и можно объяснить бескомпромиссность сотрудников газеты, узнавших, что он пользовался их непреднамеренной добротой в течение месяцев.
Вообще-то, сотрудники Times могли бы проявить благодарность за то, что им дали время устранить зияющие дыры в их системе безопасности, прежде, чем известие о том, что их сеть полностью открыта распространилось в печати. Вероятно, информация об использовании LexisNexis сделала их настолько несговорчивыми. Однако, каковы бы ни были причины, руководство Times сделало то, чего раньше не делала ни одна из жертв Адриана – они обратились в ФБР.
Через несколько м е с я ц е в Адриан услышал, что ФБР и щ е т его и и с —чез. Агенты ФБР начали навещать его семью, друзей и приятелей. все сужая круги, и пытаясь обнаружить, не оставил ли он кому-нибудь из своих приятелей-журналистов каких-то сведений о своем местонахождении. Нескольких журналистов, с которыми Адриан делился информацией, вызвали повестками в суд. «Игра», как написал один из журналистов, «внезапно стала гораздо серьезней».
Адриан объявился через пять дней. Для собственной капитуляции он выбрал одно из своих любимых рабочих мест – кофейню Sturbucks.
После того, как пыль осела, офис Прокурора США по Южному району Нью-Йорка опубликовал пресс-релиз, в котором было сказано, что «за хакерское проникновение на сайт New York Times Адриану Ламо предъявлен иск на триста тысяч долларов». Его бесплатное скачивание информации с сайта LexisNexis, по данным правительства, составило 18% от всех обращений на этот сайт из New York Times с момента проникновения туда Адриана.
Правительство основывало свои расчеты на том, какой должна быть плата для индивидуального пользователя, который не является подписчиком LexisNexis. В этом случае стоимость одного поиска может достигать двенадцати долларов. Если даже проводить расчет на основе этого неразумного предположения, то Адриану пришлось бы делать по двести семьдесят запросов информации ежедневно в течение трех месяцев, чтобы достичь указанной цифры. Кроме того, такие крупные организации, как Times, платят ежемесячную плату за неограниченный доступ к информации LexisNexis, поэтому за все поиски Адриана они не заплатили ни одного дополнительного цента!
По словам Адриана, случай с New York Times является исключением в его хакерской карьере. Он говорит, что получал благодарности, как от excite@home, так и от MCI Worldcom (что было особенно приятно после того, как он подтвердил, что мог сделать переводы с депозитов тысяч сотрудников на свой счет). Адриан не был расстроен, но просто констатировал факт, говоря, что «The New York Times стала единственной компанией, которая захотела видеть меня заключенным».
Чтобы еще усугубить его ситуацию, правительство рекомендовало прежним жертвам Адриана подготовить оценку вреда, которую он нанес им, включая даже те компании, которые поблагодарили его за предоставленную информацию. И это не удивительно: просьба о сотрудничестве со стороны ФБР или государственных следователей является тем, что большинство компаний не может игнорировать, даже если они имеют иное мнение об обсуждаемой проблеме.
УНИКАЛЬНОСТЬ ТАЛАНТА АДРИАНА
Совершенно нетипично для хакера, но Адриан не был знатоком ни одного языка программирования. Его успех базировался на умении анализировать то, как думают люди, как они создают системы. какие процессы используют сетевые и системные администраторы для создания сетевой архитектуры. Хотя, по его словам, у него плохая оперативная память, он выявлял лазейки, пробуя Интернет-приложения компании, чтобы найти доступ в ее сеть, затем он путешествовал по сети, создавая в своем мозгу ее структуру из отдельных кусочков, до тех пор, пока не проникал в один из уголков сети, который. по мнению создателей, был упрятан в темноте недоступности и поэтому защищен от атак.
Вот его собственное описание проникновения сквозь границы защиты в неизведанное:
«Я верю, что есть много общего во всех компьютерных системах, в любой точке планеты. Мы отыскиваем эти общие места среди кажущейся индивидуальности систем. Е с л и вы сможете разгадать смысл этих построений, то это может вам помочь и привести вас в странные места. Хакерство всегда было для меня не столько технологией, сколько религией».
Адриан считает, что если он продуманно поставит перед собой задачу проникновения в определенные участки системы, то скорее всего потерпит неудачу. Если же он раскрепостит свою фантазию, и будет руководствоваться, в основном, интуицией, то он окажется там, где хотел оказаться.
Адриан не считает свой подход уникальным, но говорит, что никогда не встречал другого хакера, который бы преуспел на этом пути. «Одна из причин того, что ни одна из этих компаний, тратящих тысячи и тысячи долларов на выявление вторжений, не обнаружила меня, заключается в том, что я не делаю того, что делают нормальные хакеры. Когда я нахожу сеть, открытую для вторжения, я смотрю на нее так, как это следует делать. Я думаю: „Ну хорошо, у сотрудников есть доступ к информации о пользователях. Е с л и бы я б ы л сотрудником, ч т о бы я попросил систему сделать?“ Для системы тяжело отличить законную активность от незаконной, поскольку вы проходите через тот же интерфейс, что и сотрудники, Э т о т о т же самый трафик».
Однажды Адриан выстроил в голове структуру сети. «Это менее всего связано с числами на экране и гораздо больше с ощущением того, что ты находишься где-то внутри, чувствуя всю ее архитектуру. Это способ видеть, особый взгляд на реальность. Я не могу описать это, но я вижу это в голове. Я замечаю, что и где живет, как все это взаимосвязано и взаимодействует. И множество раз все это приводило меня к тому, что люди называют волшебством».
Во время его интервью на передаче ночных новостей канала NBC в Вашингтоне, ведущий шутливым тоном предложил Адриану попытаться взломать систему NBC. Тот ответил в прямом эфире, что через пять минут на его экране будет конфиденциальная информация этой компании.
Адриан старался смотреть на любую систему с двух точек зрения, как сотрудник и как внешний пользователь. По его мнению, именно этот «бинокулярный» взгляд подсказывает его интуиции, куда двигаться дальше. Он играет роль обычного служащего, выполняющего какую-то задачу, размышляющего и двигающегося вперед в определенном направлении. Его метод работает настолько хорошо, что люди давно перестали относиться к его невероятным успехам, как к случайным удачам.
ПРОСТАЯ ИНФОРМАЦИЯ
Однажды ночью в одной из кофеен Sturbucks, где мы как-то пили с ним, Адриану пришлось навострить уши. Он сидел там за чашечкой кофе, когда к кофейне подъехал автомобиль и из него вышли пять человек. Они присели за соседний столик, он слышал их разговор; быстро стало ясно, что они работают в правоохранительных органах, он был уверен, что они из ФБР.
«Они беседовали около часа, совершенно не обращая внимания на то, что я сижу, не притрагиваясь к своему кофе. Разговор был абсолютно нейтральный – кому что нравится или не нравится. Есть такая шутка, что о мощи организации можно судить по размеру визитных карточек и нагрудных „бейджей“, которые носят ее сотрудники. У сотрудников Ф Б Р очень маленькие „бейджи“, тогда как у сотрудников рыбного департамента – просто огромные. Поэтому, на самом деле можно говорить об обратной пропорциональности. Эти ребята так забавлялись…»
Выходя из кофейни, агенты бросили на него беглый взгляд, как будто они только что заметили молодого человека, уставившегося в чашку холодного кофе и возможно услышавшего то, что не предназначалось для его ушей.
В следующий раз Адриан смог при помощи одного-единственного звонка отыскать важную информацию об AOL (America On-Line – крупнейший Интернет-провайдер США. прим. переводчика ). Их ИТ-система была прекрасно защищена, но он отыскал лазейку, когда позвонил в компанию, которая производила и прокладывала все кабели для AOL. Адриан утверждал, что обладает всеми картами прокладки кабелей. «Они поняли, что если вы додумались позвонить им, то с вами можно иметь дело». Хакер мог бы вызвать такие нарушения, которые могли стоить AOL миллионы долларов из-за простоев и ремонтных работ.
Звучит устрашающе. Адриан и я пришли к единому мнению, что можно только удивляться тому, как беззаботно люди относятся к информации.
СОВРЕМЕННОСТЬ
Летом 2004 года Адриан Ламо был приговорен к шести месяцам домашнего заключения и двум годам условного заключения. Суд приговорил его к уплате шестидесяти пяти тысяч долларов в качестве возмещения ущерба его жертвам. Учитывая возможные заработки Адриана и полное отсутствие капиталов (на данный момент он даже не имеет жилья), этот размер компенсации является совершенно губительным. При определении размера компенсации суд должен был бы принимать во внимание целый ряд факторов, включая нынешнюю и будущую возможности обвиняемого расплатиться, а также и реальные потери жертв. Приговор о возмещении ущерба не должен быть уничтожающим. По моему мнению, судья и не задумывался о реальности выплаты такой большой суммы Адрианом, но просто назначил ее в качестве устрашающего послания другим хакерам, поскольку случай Адриана широко освещался в прессе.
Тем временем Адриан занялся собственной реабилитацией, обратив свои таланты на свою собственную жизнь. Он поступил на курсы журналистов в колледже Сакраменто: он начал писать статьи для местной газеты и подрабатывать внештатно для других изданий. «На мой взгляд, журналистика – лучшая карьера, которую я мог бы выбрать, и которая доставляла бы мне удовольствие – в ней есть любознательность, стремление взглянуть на вещи с необычной стороны, желание узнать больше об окружающем нас мире. Совершенно такие же мотивы привели меня к хакерству».
Я надеюсь, Адриан честен со мной и с собой, когда говорит о новом курсе своей жизни.
«Я солгал бы, если б сказал, что могу поверить в полную перемену человека за одну ночь. Я не могу потерять свое любопытство за ночь, но я могу использовать его таким путем, чтобы не наносить ущерба другим людям. Поскольку главное, что я вынес из всего случившегося, – это то, что за сетями стоят реальные люди. Я на самом деле не смогу больше заниматься хакерством и не думать о тех людях, которым придется беспокоиться о моих попытках ночи напролет,
Я думаю, что журналистика и фотография для меня служат интеллектуальным аналогом криминальных действий. Они дают пищу моему любопытству, позволяют мне взглянуть на вещи иначе, дают возможность развиваться в русле законопослушности».
Он рассказал мне и о своих планах работать внештатным автором для Network World. Они уже связывались с ним, и хотели, чтобы он был для них источником информации: он предложил им идею – вместо своих интервью вести у них постоянную колонку. Издатель согласился. Таким образом, вместе с информацией для хакеров появятся его тексты для сетевых администраторов.
«Журналистика – э т о то, чем я хотел бы заниматься. Я чувствую, что могу сделать что-то необычное и это не совсем то, что вы получаете от работы в области безопасности. Безопасность – это такая отрасль индустрии, которая во многом зависит от человеческих страхов и незнания компьютеров и технологий. Журналистика в значительно большей степени имеет отношение к правде.
Хакерство – это уникальное самовыражение человека. Оно включает в себя сосредоточение огромной потенциальной власти в руках одного человека, власти, которой обычно пользуются только правительство или крупный бизнес. Мысль о том, что несколько подростков могут отключить энергосистему страны приводит в ужас представителей правительства. И это вполне понятно».
Он не считает себя хакером, взломщиком или атакующим. «Я хотел бы процитировать Боба Дилана: „Я не проповедник и не торговец. Я просто делаю то, что делаю“. Я счастлив, когда люди понимают или хотя бы стремятся понять это».
Адриан говорит, что ему предлагали хорошие должности в военных и государственных учреждениях. Он отказался от этих предложений. «Многим людям нравится заниматься сексом, но далеко не каждый готов зарабатывать этим».
В этом весь Адриан – думающий хакер.
АНАЛИЗ
Что бы вы ни думали о позиции и действиях Адриана Ламо, хотелось бы думать, что вы согласитесь со мной по поводу несправедливости определения нанесенного им вреда федеральными органами.
Я знаю из своего опыта, как правоохранительные органы вычисляют предположительную сумму ущерба в хакерских случаях. Первый способ – получить сведения от компаний, которые переоценивают свои потери в надежде заставить хакера раскошелиться и не доводить дело до суда. В процессе разбирательства адвокат и прокурор обычно сходятся на несколько меньшей сумме: по федеральным законам, чем больше ущерб, тем более долгий срок заключения ожидает хакера.
В случае, произошедшем с Адрианом, Прокурор США проигнорировал тот факт, что именно от него компании узнавали о собственной уязвимости. Каждый р а з он з а щ и щ а л компании, указывая им на ту или иную прореху в их системе безопасности, и ожидал, пока они ликвидируют проблему, чтобы лишь потом опубликовать новость о своем удачном взломе. Да, он нарушал закон, но он действовал (во всяком случае, в ставших известными случаях) абсолютно этично.
КОНТРМЕРЫ
Подход, используемый атакующими, в том числе и Адрианом, заключается в запуске запроса «Кто это», что может помочь отыскать немало ценной информации, содержащейся в четырех NIC (Network Information Center – центр сетевой информации), покрывающих различные географические районы мира. Большинство информации в этих базах данных является общедоступными сведениями, которые может узнать любой пользователь приложения «Кто это» или посещающий Интернет-сайт, предлагающий подобные услуги, или заходящий на сайт nytimes.com.
Предоставляемая информация может содержать имя, адрес электронной почты, физический адрес и телефонный номер административных и технических контактов для этого домена. Эта информация вполне может использоваться для атак с использованием методов социальной инженерии (см. Главу 10, «Социальные инженеры – как они работают и как их остановить»). Кроме того, это может навести на мысль о структуре адресов электронной почты и имен пользователей в компании. Например, если адрес электронной почты одного из сотрудников Times выглядит, как , естественно предположить, что и многие другие сотрудники Times используют свое имя для адресов электронной почты, а также и для подписи.
Как видно из истории атаки Адрианом газеты The New York Times, он так же получил ценную информацию об IP-адресах и сетевых блоках газеты, что легло в основу успеха его атаки.
Чтобы ограничить утечку информации, любой компании было бы полезно хранить список телефонов компании только на ее телефонной станции, а не делать его доступным всем желающим. Сотрудники в приемной компании, отвечающие на телефонные звонки, должны проходить специальную подготовку, чтобы они могли быстро распознавать атаки социальных инженеров. Кроме того, в качестве адреса электронной почты следует приводить адрес издательства, а не список личных адресов сотрудников.
Более того: сегодня компаниям позволено не обнародовать свою контактную информацию и имя домена – они не должны теперь предоставляться любому желающему по первому требованию. По специальному запросу список адресов вашей компании может быть засекречен, что затруднит проникновение атакующих.
Еще одна полезная мысль высказана в приведенной истории: следует использовать горизонтально разделенные DNS. Это означает, что нужно организовать внутренний DNS-сервер. который определяет имена пользователей во внутренней сети, в то время как внешний DNS-сервер будет содержать имена для использования внешними пользователями.
В качестве другого метода разведки хакер запрашивает DNS, чтобы выяснить, на каких операционных системах работают компьютеры компании, а также чтобы получить информацию о структуре всего домена. Эта информация очень полезна при координации усилий в ходе дальнейшей атаки. База данных DNS может содержать сведения обо всех узлах сети (HINFO – Host Information). Сетевой администратор должен всячески избегать появления HINFO-записей на любом публично доступном DNS-сервере.
Еще один из хакерских приемов основан на использовании операции под названием «перенос зоны» (zone transfer). (Адриан рассказывал, что использовал этот метод в своих атаках на сайты The New York Times и excite@home, но оба раза неудачно). Для защиты данных первичный DNS обычно конфигурируется так, чтобы позволить другим авторизованным серверам копировать DNS-записи из конкретных доменов; этот процесс копирования называется переносом зоны. Если первичный сервер сконфигурирован неправильно, атакующий может запустить процесс переноса зоны на любой указанный им компьютер, и таким образом получить подробную информацию обо всех именах узлов и связанных с ними IP-адресов домена.
Для защиты от такого типа атак необходимо разрешить перенос зоны только между определенными компьютерами, это необходимо для нормального ведения бизнеса. Более подробно: первичный DNS-сервер должен быть сконфигурирован так, чтобы позволять перенос только на проверенные вторичные DNS-сервера.
Вдобавок к этому по умолчанию необходим межсетевой экран, чтобы блокировать доступ к ТСР-порту 53 на любом корпоративном сервере. Еще одно правило межсетевого экрана должно разрешать проверенным вторичным серверам имен соединяться с ТСР-портом 53 и инициировать перенос зоны.
Компании должны максимально затруднить атакующим использование т е х н и к и обратного просмотра DNS. До тех пор, пока удобно использовать имена узлов, которые дают понять, какой из узлов для чего используется – такие имена, как database.CompanyX.com – очевидно, что это упрощает хакеру поиск нужно системы, достойной его атаки.
Другая техника сбора информации на основе обратного просмотра DNS содержит использование словаря и атаки грубой силы. Например, если вы собираетесь атаковать домен kevinmitnick.com, то словарная атака будет добавлять любое слово из него к имени домена в виде «слово».kevinmitnick.com, чтобы выявить другие узлы на этом домене. Обратная DNS-атака грубой силы гораздо сложнее, здесь на месте слова из словаря стоит последовательность букв и цифр, которая с каждой новой попыткой меняется на единицу или на новую букву. Чтобы заблокировать этот метод корпоративный DNS-сервер должен быть так сконфигурирован, чтобы устранить возможность публикации любого внутреннего имени узла. Внешний DNS-сервер может использоваться вместе с внутренним таким образом, чтобы внутренние имена узлов не могли «утечь» в другую сеть. В дополнение к этому, использование раздельных внутреннего и внешнего серверов имен помогает справиться с проблемой, упомянутой выше, касающейся имен узлов: внутренний DNS-сервер. защищенный от внешнего взгляда с помощью межсетевого экрана, может использовать такие имена узлов как databas, research и backup с небольшим риском.
Адриан смог получить ценную информацию о сети The New York Times, изучая заголовки электронных писем, получаемых из газеты, которые дали ему внутренние IP-адреса. Хакеры сознательно инициируют получение электронных писем, чтобы получить информацию такого рода, или просматривают общедоступные ленты новостей с электронными письмами с той же целью. Информация, появляющаяся в заголовке письма может дать знающему человеку немало полезной информации, например то, как происходит образование имен внутри компании, внутренние IP-адреса и путь, по которому прошло электронное письмо. Чтобы оградить себя от подобной утечки информации, компаниям рекомендуется так сконфигурировать их SMTP-серверы, чтобы отфильтровывать любую внутреннюю информацию – IP-адреса или сведения об узлах – из исходящих электронных писем, чтобы помешать ее распространению.
Главным оружием Адриана был «подарок» в виде неправильно сконфигурированных прокси-серверов. Использование такого прокси-сервера позволяет пользователю с внутреннего компьютера компании получать доступ к внешним Интернет-ресурсам. Исследователь изнутри делает запрос о конкретной Интернет-странице; запрос идет на прокси-сервер, который переправляет запрос от имени пользователя и присылает ему ответ.
Чтобы помешать хакеру получить информацию тем способом, каким это удалось Адриану, прокси-серверы должны быть сконфигурированы так, чтобы «слушать» только внутренний интерфейс. Его можно сконфигурировать и так, чтобы он «слышал» только разрешенный список внешних IP-адресов. Таким образом, ни один неавторизованный пользователь извне не сможет соединиться с сервером. Общая ошибка в конфигурации прокси-серверов заключается в том, что они «слушают» все интерфейсы сети, включая и внешние интерфейсы, соединенные с Интернетом. Вместо этого прокси-сервер должен быть сконфигурирован так, чтобы позволять доступ только определенному набору IP-адресов, который должен определяться организацией I A N A (Internet Assigned Numbers Authority) для частных сетей. Есть три блока частных IP-адресов:
От 10.0.0.0 до 10.255.255.255
От 172.16.0.0 до 172.31.255.255
От 192.168.0.0 до 192.168. 255.255
Хорошая идея – ограничение по портам, чтобы ограничить набор услуг, которые предоставляет прокси-сервер, например, ограничить исходящие соединения с HTTP (Интернет) или HTTPS (безопасный Интернет-доступ). Для более тщательного контроля некоторые прокси-серверы, использующие SSL, могут быть сконфигурированы так, чтобы проверять входящий трафик, и иметь возможность убедиться, что неавторизованный протокол не проникает через авторизованный порт. Предпринятые шаги помешают атакующему неадекватно использовать прокси-сервер для соединения с неразрешенными ему сервисами.
После установки и конфигурации прокси-сервера его необходимо проверить на наличие лазеек. Никогда нельзя быть уверенным в собственной неуязвимости, пока не будет проведена тщательная проверка. Прокси-серверы могут быть бесплатно перегружены из Интернета.
Еще один момент: поскольку, устанавливая пакет того или иного программного обеспечения, пользователь может в какой-то момент неосознанно установить и ПО для прокси-сервера, компания должна взять себе за правило тщательно проверять все свои компьютеры на неавторизованную установку прокси-серверов, которые могут быть установлены неосознанно. С этой целью вы можете использовать любимое средство Адриана – Proxy Hunter – для проверки собственной сети. Запомните, что неправильно сконфигурированный прокси-сервер может быть лучшим другом хакера.
Подавляющее большинство хакерских атак может быть остановлено при помощи обычных мер безопасности и стандартных проверок. Опасность случайной установки открытого прокси-сервера слишком часто недооценивается и представляет собой главную уязвимость в большинстве организаций.
По-моему, сказано более, чем достаточно, не правда ли?
ПОСЛЕСЛОВИЕ
Люди с оригинальным мышлением, глубокие философы, какой бы деятельностью они ни занимались, видят мир (или, по крайней мере, его часть) более ясно, чем остальные, и они заслуживают поддержки.
С такими, как Адриан Ламо. имеет смысл сотрудничать конструктивно. Он может сделать много хорошего. Я буду следить за его развитием с удовольствием.