Кевин Митник - Искусство обмана
Конечно, мы с Винни не победили их программу, и если разработчики установили бы хорошие правила в конкурсе или использовали бы действительно безопасный замок, или присматривали за своим оборудованием более внимательно, то им бы не пришлось терпеть унижение того дня – унижение из-за парочки подростков.
Позже, я узнал, что команде разработчиков пришлось зайти в банк, чтобы получить наличные: эти стодолларовые чеки – все деньги, взятые с собой, которые они собирались тратить.
Словарь как орудие атаки
Когда кто-нибудь получает ваш пароль, он может вторгнутся в вашу систему. В большинстве случаев, вы даже не узнаете, что произошло что-то плохое.
У юного хакера, которого я назову Иваном Питерсом, есть цель – получить исходный код для новой электронной игры. У него не было проблем с проникновением в сеть компании, потому что его друг-хакер уже скомпрометировал один из веб-серверов фирмы. Найдя непропатченную уязвимость в программном обеспечении веб-сервера, его друг чуть не свалился со стула, узнав что система была настроена в как dual-homed host , что означало, что у него был входной пункт в локальную сеть фирмы.
Но когда Иван подключился, он столкнулся с испытанием, похожим на хождение по Лувру в надежде найти Мона Лизу. Без карты, вы можете бродить неделями. Компания была международной, с сотнями офисов и тысячами компьютерных серверов, и они не предоставили список систем разработчиков или услуги туристического гида, чтобы сразу привести его к нужному.
Вместо того, чтобы использовать технический подход, чтобы узнать, какой сервер является его целью, он использовал социально-инженерный подход. Он звонил, основываясь на методах, похожих на описанные в этой книге. Сначала, позвонил в службу технической поддержки, и заявил, что он сотрудник компании, у которого проблемы с интерфейсом в продукте, который разрабатывала его группа, и спросил телефон руководителя проекта группы разработчиков игры.
Потом он позвонил тому, чье имя ему дали, и представился как тот парень из техподдержки. «Позже ночью», сказал он, «мы будем заменять роутер и должны убедиться, что люди из твоей группы не потеряют связь с сервером. Поэтому мы должны знать, какие серверы использует ваша команда.» В сети постоянно производился апгрейд. И сказать название сервера никому и никак не повредит, верно? Раз он был защищен паролем, всего лишь сказав имя, это не помогло бы никому взломать его. И парень сказал атакующему имя сервера. Он даже не позаботился о том, чтобы перезвонить парню и подтвердить рассказ, или записать его имя и телефон. Он просто сказал имена серверов, ATM5 и ATM6.
Атака паролями
В этом месте Иван использовал технический подход для получения удостоверяющей информации. Первый шаг в большинстве технических взломов систем, предоставляющих удаленный доступ – найти аккаунт со слабым паролем, который даст первоначальный доступ к системе.
Когда атакующий пытается использовать хакерские инструменты для паролей, работающих удаленно, может понадобится оставаться подключенным к сети компании в течение нескольких часов за раз. Он делает это на свой риск: чем дольше он подключен, тем больше риск, что его обнаружат и поймают.
В качестве начального этапа Иван решил сделать подбор пароля, который покажет подробности о системе (возможно, имеется ввиду, что программа показывает логины – прим. пер.). Опять-таки, интернет удобно преоставляет ПО для этой цели (на http://ntsleuth.0catch.com ; символ перед «catch» – ноль). Иван нашел несколько общедоступных хакерских программ в сети, автоматизирующих процесс подбора, избегая необходимости делать это вручную что займет больше времени, и следовательно работает с большим риском. Зная, что организация в основном работала на основе серверов Windows, он сказал копию NBTEnum, утилиту для подбора пароля к NetBIOS(базовая система ввода/вывода). Он ввел IP (Internet Protocol) адрес сервера ATM5, и запустил программу.
LINGO
Enumeration – Процесс, показывающий сервисы, работающие на системе, операционную систему и список имен аккаунтов пользователей, у которых есть доступ к стстеме.
Программа для подбора смогла определить несколько учетных записей, существовавших на сервере. Когда существующие аккаунты были определены, та же программа подбора получила возможность начать атаку по словарю против компьютерной системы. Атака по словарю – это что-то, что знакомо парням из службы компьютерной безопасности и взломщикам, но многие будут поражены, узнав что это возможно. Такая атака нацелена на раскрытие пароля каждого пользователя, используя частоупотребляемые слова.
Мы все иногда ленимся в некоторых вещах, но меня никогда не перестает удивлять, что когда люди выбирают пароли, их творческий подход и воображение, похоже, исчезают. Многие из нас хотят пароль, который одновременно даст защиту и его легко запомнить, что означает, что это что-то близкое для нас. К примеру, наши инициалы, второе имя, ник, имя супруга, любимая песня, фильм или напиток. Название улицы, на которой мы живем, или города, где мы живем, марка машины, на которой мы ездим, деревни у берега на Гавайях, где мы любим отдыхать, или любимый ручей, где лучше всего клюет форель. Узнаете структуру? В основном, это все – имена собственные,названия мест или слова из словаря. Атака словарем перебирает частоиспользуемые слова с очень быстрой скоростью, проверяя каждый пароль на одном или более пользовательских аккаунтов.
Иван устроил атаку в трех частях. В первой он использовал простой список из 800 самых обычных паролей; список включает secret, work и password . Программа также изменяла слова из списка, и пробовала каждое с прибавленным числом, или прибавляла численное значение текущего месяца. Программа попробовала каждый раз на всех найденных пользовательских аккаунтах. Никакого везения.
Для следующей попытки, Иван пошел на поисковую систему Google, и ввел «wordlist dictionaries,» и нашел тысячи сайтов с большими списками слов и словарями на английском и на некоторых иностранных языках. Он скачал целый электронный английский словарь. Он улучшил его, скачав несколько словарей, найденных в Google. Иван выбрал сайт www.outpost9.com/files/WordLists.html .
На этом сайте он скачал (и все это – бесплатно ) подборку файлов, включая фамилии, вторые имена, имена и слова членов конгресса, имена актеров, и слова и имена из Библии.
Еще один из многих сайтов, предлагающих списки слов предоставляется через Оксфордский университет, на ftp://ftp.ox.ac.uk/pub/wordlists .
Другие сайты предоставляют списки с именами героев мультфильмов, слов, использованных у Шекспира, в Одиссее, у Толкина, в сериале Star Trek, а также в науке и религии и так далее (одна онлайновая компания продает список, состоящий из 4,4 миллионов слов и имен всего за $20). Атакующая программа также может быть настроена на проверку анаграмм слов из словаря – еще один любимый метод, который, по мнению пользователей компьютера, увеличивает их безопасность.
Быстрее, чем ты думаешь
Когда Иван решил, какой список слов использовать, и начал атаку, программное обеспечение заработало на автопилоте. Он смог обратить свое внимание на другие вещи. А вот и удивительная часть: вы думаете, что такая атака позволит хакеру поспать, и программа все равно сделала бы мало, когда он проснется. На самом деле, в зависимости от атакуемой операционной системы, конфигурации систем безопасности и сетевого соединения, каждое слово в Английском словаре может быть перепробовано менее, чем за 30 минут!
Пока работала эта атака, Иван запустил похожую атаку на другом компьютере, нацеленную на другой сервер, используемый группой разработчиков, ATM6. Через 20 минут, атакующая программа сделала то, что многие неподозревающие пользователи считают невозможным: она взломала пароль, показывая, что один из пользователей выбрал пароль «Frodo», один из хоббитов из книги Властелин Колец .
С паролем в руке, Иван смог подключиться к серверу ATM6, используя пользовательский аккаунт.
Для нашего атакующего была хорошая и плохая новости. Хорошая новость – у взломанного аккаунта были администраторские права, которые были нужны для следующего этапа. А плохая новость – то, что исходный код игры нигде не был обнаружен. Он должен быть, все-таки, на другом компьютере, ATM5, который, как он уже узнал, смог устоять перед атакой по словарю. Но Иван еще не сдался; он еще должен был попробовать несколько штучек.
На некоторый операционных системах Windows и Unix, хэши (зашифрованные пароли) с паролями открыто доступны любому, кто получает доступ к компьютеру, на котором они находятся. Причина в том, что зашифрованные пароли не могут быть взломанными, а следовательно, и не нуждаются в защите. Эта теория ошибочна. Используя другую программу, pwdump3, также доступную в Интернете, он смог извлечь хэши паролей с компьютера ATM6 и скачать их.