Я положил трубку и позвонил Мишель, и когда она ответила, я сказал: «Это Бил Томас, Джерри сказал мне, что я должен буду позвонить тебе, когда будет готовы документы, которые он хотел показать своим ребятам из группы. Вы работаете над искусственным сердцем, верно?» Она сказала, что да.
Теперь переходим к сложной части аферы. Если она стала бы подозревать что-то, я был готов выложить карту, что я просто пытался оказать услугу, о которой попросил Джерри. Я сказал: «какой системой вы пользуетесь»?
«Системой»?
«Какими серверами пользуется ваша группа»?
"А", — она сказала, —"RM22. И некоторые из группы также пользуются GM16". Отлично. Мне это было нужно, и я смог спросить у нее, не вызвав подозрения. И это немного смягчило ее перед следующей частью, которую я пытался сделать как можно более обыденно. «Джерри сказал, что вы можете дать мне список адресов электронной почты людей из команды разработчиков», сказал я и задержал дыхание.
«Конечно. Список слишком длинный, чтобы прочитать, можно я тебе его отправлю по e-mail»?
Ой! Любой адрес, который не заканчивается на geminimed.com, будет как огромный красный флаг. «А что если вы мне его отправите по факсу»?
Она была не против.
«Наш факс не в порядке . Я перезвоню как только получу номер другого», я сказал и положил трубку.
Вы можете подумать, что меня могла обременить эта неприятная проблема, но есть еще один обыденный трюк из торговли. Я подождал некоторое время, чтобы мой голос не показался знакомым секретарше, позвонил ей и сказал: «привет, это Бил Томас, наш факс тут не работает, можно отправить к вам факс»? Она сказала «конечно», и дала мне номер.
А потом я просто вхожу и забираю факс, верно? Конечно нет. Первое правило: никогда не посещайте помещения, если это не обязательно. Они будут долго мучаться, пытаясь опознать тебя, если ты просто голос из телефона. И даже если они тебя опознают, то не смогут арестовать. Сложно надеть наручники на голос. Так что я позвонил секретарше через некоторое время и спросил: пришел ли мой факс? «Да», она сказала.
«Слушай», я сказал ей, «мне надо отправить это нашему консультанту. Ты можешь выслать это за меня»? Она согласилась. А почему бы и нет — как может любой секретарь узнать ценную информацию. Она отправила этот факс «консультанту», и мне пришлось сделать сегодняшнюю пробежку до фирмы неподалеку от меня, со знаком «Прием/Отправка факсов». Мой факс должен был прийти раньше, чем я, и он уже ожидал меня, когда я вошел. Шесть страниц за $1.75. За $10 со сдачей, я получил полный список имен и e-mail'ов.
Проникая вовнутрь
Так, значит мне пришлось поговорить с тремя или четырьмя разными людьми всего за несколько часов, и уже приблизиться к компьютерам на огромный шаг. Но мне понадобятся еще пару фактов, и все будет сделано.
Во-первых. номер дозвона на инженерный сервер извне. Я позвонил в GeminiMed опять, и попросил соединить с отделом IT, с кем-нибудь, кто помогает с компьютером. Меня соединили, и я начал играть роль смущенного и глупого человека в обращении с техникой. «Я дома, только что купил новый ноутбук, и мне нужно его настроить для доступа извне».
Эта процедура была обычной, но я с нетерпением разрешил ему рассказать все, и вскоре он добрался до номера дозвона. Он назвал мне номер как самую рутинную информацию. И потом, заставил его подождать, пока я пробовал. Идеально.
Так что теперь я преодолел препятствие подключения к сети. Я дозвонился и обнаружил, что они настроили терминальный сервер, который позволяет звонящему подключаться к любому компьютеру в их локальной сети. После кучи попыток, я наткнулся на чей-то компьютер, где был гостевой аккаунт без необходимости ввода пароля. Некоторые ОС, когда они только установлены, заставляют пользователя создать логин и пароль, а также предоставляют гостевой аккаунт. Пользователь должен поставить свой пароль на гостевую учетную запись или отключить ее, но многие даже не знают об этом или не хотят чего-либо делать. Эта система, скорее всего, была только что установлена, и владелец даже не побеспокоился об отключении гостевого аккаунта.
Благодаря гостевому аккаунту, у меня теперь был доступ к одному компьютеру, на котором оказалась старая версия операционной системы Unix. В Unix'е, операционная система содержит файл, в котором есть зашифрованные пароли каждого, у кого есть доступ к компьютеру. Файл с паролями содержит одностроронний хэш (т.е. форма шифрования необратима) пароля каждого пользователя. С хэшем, пароль, к примеру «justdoit» будет представлен в зашифрованном виде; в данном случае, хэш будет конвертирован Юниксом в 13 численно-буквенных символов.
LINGO
хэш — строка беспорядочно записанных символов, которая получается из пароля путем одностороннего шифрования. Процесс теоретически необратим; т.е. считается, что невозможно извлечь пароль из хэша.
Когда Билли Боб из зала захочет перевести какие-либо файлы на другой компьютер, он обязан идентифицировать себя, предоставив логин и пароль. Система, которая проверяет его авторизацию, шифрует его пароль, а потом сравнивает его результат с хэшем, содержащимся в файле с паролем; если они совпадают, ему предоставляют доступ.
Из-за того, что пароли в файле зашифрованы, файл сделан доступным для пользователей, так как, по теории, нет способа расшифровки пароля. И это смешно. Я скачал файл, сделал атаку по словарю(см. главу 12 для более подробного объяснения метода), и выяснил, что один из инженеров, парень по имени Стив Крэмер, в данный момент имел учетную запись на компьютере с паролем «Janice». Я решил попробовать войти с этим паролем на один из серверов разработчиков; он не подошел; если бы все сработало, это бы сэкономило много времени и уменьшило риск. Не помогло.
Это значило, что мне придется обманом заставить парня сказать его имя пользователя и пароль. Для этого мне пришлось дождаться выходных. Вы уже знаете остальное. В субботу я позвонил Крэмеру и рассказал уловку о черве и сервере, которого надо восстановить, чтобы избежать его подозрений.
А что насчет истории, которую я ему рассказал о том, что он заполнял свои бумаги при приеме? Я рассчитывал на то, что он не вспомнит, что этого никогда не было. Новый сотрудник обычно заполняет столько бумаг, что через несколько лет никто не вспомнит. И даже если он меня раскусит, у меня еще был длинный список других имен.
С его именем пользователя и паролем я вошел на сервер, покопался некоторое время, а потом обнаружил файлы со схемами STH-100. Я не был уверен, какие из них являются ключевыми, так что я перевел файлы на dead drop , бесплатный FTP сайт в Китае, где они будут храниться без чьих-либо подозрений. Пусть клиент разбирается в этом мусоре и ищет, что ему нужно.
LINGO
dead drop — место для хранения информации, где вряд ли ее найдут другие. В мире традиционных шпионов, это место могло бы быть за отколотым камнем в стене; в мире компьютерного хакера, это обычно сайт в удаленной стране.
Анализ обмана
Для мужчины, которого мы называем Крэйгом Коборном, или кого-нибудь вроде него, также с опытом в воровском-но-не-всегда-незаконном искусстве социальной инженерии, испытание, представленное здесь, было почти обыденным. Его целью было обнаружить и скачать файлы, находящиеся на безопасном корпоративном сервере, защищенном фаэрволом и всеми обычными техническими средствами.
Большинство его работы было не сложнее, чем поймать дождевые капли в ведро. Он начал с того, что представился кем-то из почтового отдела и добавил ощущение срочности, утверждая, что есть посылка, которую нужно доставить. Этот обман позволил узнать имя руководителя команды инженеров (что полезно для любого социального инженера, который пытается украсть информацию), создающих искусственное сердце, который был в отпуске — он любезно отставил имя и телефон его ассистента. Позвонив ей, Крэйг рассеял любые подозрения, утверждая, что он выполняет просьбу руководителя проекта. Поскольку руководителя проекта не было в городе, Мишель не могла проверить его утверждения. Она приняла все за правду и без проблем предоставила список людей из группы, что явилось для Крэйга очень важным этапом.