Социальная инженерия.
Как известно, самый простой способ узнать пароль - просто спросить его у пользователя.
Печальная статистика: большинство паролей к различного рода интеллектуальным системам («железным» и «софтовым») уворовывается именно методами социальной инженерии. Впрочем, речь пойдет не столько о них, сколько о сферах успешного применения социальной инженерии в повседневной жизни простых законопослушных граждан, далеких от андеграунда.
Банальный пример: звонок провайдеру Интернет: «Здравствуйте, я абонент такой-то. Новый сотрудник технического отдела. Скажите пожалуйста, был ли зафиксирован с моего ip адреса трафик в Туувалу? Не был? Точно? Как же вам ни ай яй яй? Файволл то заметил…» Цель звонка — узнать ip клиента, от имени которого выступает неизвестный «доброжелатель». Зачем это ему надо — второй вопрос. Важно то, что в 95% случаев требуемый ip будет выдан — скорее всего, совершенно случайно — сотрудником службы технической поддержи. Притом причина подобного поведения банальна — отсутствие возможности верифицировать клиента при обращении: ротация кадров — явление достаточно распространенное, а отслеживать все кадровые перестановки у всех клиентов порой достаточно проблематично (особенно, если клиентов достаточно много). Что станет результатом подобного попустительства — сказать сложно: это может быть все, что угодно — от атаки на сервер клиента, чей адрес ловко «выудил» злоумышленник, до рассылки спама якобы от имени клиента (с фальсификацией IP адреса). Или еще пример. Тоже из жизни — социальная инженерия в рамках корпоративной информационной системы — пользователь, регистрируясь, вводит в систему свои персональные данные. Используя которые, система предпринимает по отношению к пользователю определенные действия — от поздравлений с днем рождения (и автоматической выписки «премии дня рождения») и изучения кулинарных пристрастий до организации банальной слежки. Впрочем, последняя ситуация находится в области «почти невероятного»: как правило, в корпоративной информационной системе акценты принципиально расставляются совершенно по-другому. А вот подделка интерфейса корпоративной информационной системы, особенно имеющий веб-интерфейс, с убеждением пользователя воспользоваться «левым» интерфейсом — ситуация весьма вероятная. (см. сноску [1] — аналогичным образом «взламывают» не только корпоративные информационные системы, но и, например, почтовые службы. Вернее, не сами системы — а их пользователей).
Кому и зачем это надо — тема для отдельной большой дискуссии. «Выуживание» персональной информации «из любопытства», конкурентные «разборки», Но факт «выуживания», как говорится, налицо. А факт, как известно, вещь упрямая.
Собственно говоря, а что вообще представляет собой социальная инженерия? СОЦИАЛЬНАЯ ИНЖЕНЕРИЯ (англ. social engineering) — совокупность подходов прикладных социальных наук, или прикладной социологии, ориентированной на целенаправленное изменение организационных структур, определяющих человеческое поведение и обеспечивающих контроль за ним. [2]
Применительно к сфере информационных технологий, социальную инженерию довольно часто трактуют как комплекс мероприятий, направленных на получение доступа к разнообразной информации. При этом хакинг как таковой к социальной инженерии не имеет практически никакого отношения (зато часто очень удачно ее дополняет).
С точки зрения системного подхода, социальная инженерия исходит из того, что среднестатистический пользователь обладает некими усредненными характеристиками. Или близкими к среднестатистическим. Кроме того, системный подход в социальной инженерии рассматривает человека как часть системы, не обладающего фундаментальными знаниями о системе, в которой он находится. В противном случае будет слишком высока вероятность несрабатывания. Поскольку фундаментом, на котором базируется социальная инженерия, являются общеизвестные законы психологии и социологии. А, как известно, где есть законы — там возможны и исключения. И чем более личность информирована об окружающем, тем меньше вероятность того, что методы социальной инженерии в данном конкретном случае сработают.
Примеров «развода» методами социальной инженерии можно привести множество. Один из наиболее показательных приведен в сноске [3]. К высоким технологиям этот пример не относится, но, при кажущейся неправдоподобности, хорошо иллюстрирует суть практического применения социальной инженерии.
Говоря языком психологии, социальная инженерия построена на умении манипулировать другими людьми. А манипулирование, в свою очередь, базируется на элементарных человеческих слабостях: гордости, тщеславии, страхе, милосердии. При этом побудительные силы, заставляющие жертву поддаваться на провокации, находятся внутри самой жертвы. Например, в сноске [4] приведен довольно редко встречающаяся (по крайней мере, в последнее время) разновидность воздействия на жертву: письмо якобы от службы технической поддержки, направленное на то, чтобы неопытный пользователь сам бы выдал пароль злоумышленнику. Гораздо чаще встречаются «инструкции взлома mail.ru» и подобные. Ссылка на «живой» пример подобной инструкции, размещенной в Интернет на одном из бесплатных хостингов, приведен в сноске [5]. Расчет автора этого шедевра и ему подобных прост: почти у каждого пользователя российской части Интернета найдется корреспондент с почтовым адресом на mail.ru. И наверняка найдется кто-то, кто из «лучших побуждений» решит полюбопытствовать содержимым ящика респондента… В результате чего наивно предоставляют злоумышленнику собственную конфиденциальную информацию.
Еще одна сфера, в которой хорошо просматриваются методы социальной инженерии — так называемые «Письма счастья». Цель их стоит чуть особняком от обычных целей, преследуемых социальной инженерией как таковой, и состоит в отсутствии ее как класса:) (Можно, конечно, предположить, что таким образом производители бумаги и канцелярских принадлежностей стимулируют сбыт своей продукции, или провайдеры Интернет генерируют «руками пользователей» трафик, что довольно сомнительно). Хотя… Грамотному хакеру, использующему социальную инженерию, «письмо счастья» может послужить «опорной точкой»: если потенциальная жертва «повелась» на такую малость, следовательно, в дальнейшем она не будет серьезным противником.
Впрочем, есть и более серьезные области применения социальной инженерии. Например, проникновение на охраняемую территорию или «легальное» получение кодов доступа/паролей/ключей к ПО. Ссылки на примеры подобного воздействия, размещенные в Интернет, приводятся ниже ([6], [7]).
Чаще других в сфере информационных технологий социальную инженерию используют спаммеры. Для того, чтобы спаммерское послание прочли и откликнулись, требуется серьезная подготовка в том числе и в области социальных наук. Помните спам от «Центра американского английского»? Первоначально (достаточно долго) он рассылался, что называется, «в лоб» (с точки зрения текста). Приглашение посетить языковые курсы, и все. С течением времени он стал мутировать, превратившись в невероятное по тексту почти нечитаемое нечто; после этого короткое время шли файлы в формате gif; затем произошел качественный скачек — и спам от ALC приобрел новую форму — от «писем друзей» до «объективного исследования»[8]. То есть, спам стал создаваться с использованием методов социальной инженерии. Пример спама от ALC показателен, и в настоящее время до 20% спама (по крайней мере того, что валится в мой ящик) создается с использованием социальной инженерии.
Впрочем, не следует думать, что уделом социальной инженерии является исключительно спам. С не меньшим (а зачастую и с большим) успехом используют эти методы и в обычной рекламе, транслируемой по радио, телевидению, размещенной на рекламных растяжках и торчащей из каждой газеты и журнала… и каждый шедевр этой рекламной мешанины призывает к совершению определенных покупок. Для чего используются самые примитивные приемы. Например, отождествление: потребителя вынуждают на ассоциации себя с героем рекламы. «Выпив пива марки XYZ, ты будешь богат, и у тебя будет множество женщин». Или: «употребляя продукцию такой-то фирмы, ты становишься самым крутым» — вот что говорит реклама подкорке головного мозга потребителя. Алкоголь ассоциируется с мужеством, предметы женской гигиены — с «высокой наукой», а чудо-средство от всего сразу — с последними достижениями в области медицины. Расчет делается на то, что потребитель приобретает не только товар, но и причастность к этим запредельным чудесам. (В Петербурге одно время шла реклама одного сотового оператора: «Наш телефон — это не просто средство общения, это высокотехнологичная услуга, делающая ваш бизнес свободным и независимым». Предполагалось, что используя услугу, предприниматель разом решит как минимум 80% проблем, к сотовой связи никак не относящихся… С соответствующими тарифами, разумеется.)
Впрочем, методы социальной инженерии действуют далеко не на всех и далеко не всегда. В крупных западных корпорациях в программу обязательных тренингов для сотрудников часто включают лекции и семинары по предотвращению утечки информации, где детально рассматривают методы социальной инженерии и приемы противоборства им.
Методы социальной инженерии интересны тем, что они опираются не на компетентность человека в той или иной области, а на законы, которые управляют человеческим сознанием. Социальный инженер, таким образом — это человек, обладающий определенными знаниями о человеческой психике, и умеющий эти знания применять. При этом компетентность социального инженера в предметной области жертвы не является решающим фактором (хотя и весьма желательна).
Следующее, что следует рассмотреть — аудитория, или поле деятельности социального инженера. Успех в достижении конкретного результата социального инженера напрямую зависит от степени компетентности его оппонентов по тому или иному вопросу. Например, хорошо инструктированный системный администратор вряд ли предоставит пользователю полномочия в системе на основании телефонного звонка человека, представившегося начальником, в то время как плохо инструктированный, и, как следствие — малокомпетентный — вполне может допустить подобный просчет (см.[7]).
Еще одним рычагом, часто используемым социальными инженерами, является некомпетентность аудитории в определенных терминах и предметных областях. Например, реклама «компьютеры на базе windows обходятся дешевле по суммарной стоимости владения, чем компьютеры на базе linux». Ставка делается на то, что малая часть потребителей рекламы точно представляет себе, что такое суммарная стоимость владения. И мало кто из них вникал в тонкости сравнительных тестов (а жаль — результаты могли бы оказаться весьма удивительными — все зависит от того, по каким критериям и какие параметры сравнивать — и windows, и linux могут оказаться дешевле при том или ином стечении обстоятельств).
Напоследок хочется отметить, что нет такой области человеческой деятельности, где социальная инженерия применялась бы с большим успехом, чем продажи. Торговец обязан уметь торговать — каждый своим товаром, но базовые принципы искусства продаж от этого не меняются. Успешный торговец хорошо знаком с законами социальной инженерии — хотя он мог и не слышать о подобной науке. Это знание — залог успешных продаж. Как сделать свой товар привлекательным? Как выйти на требуемый объем продаж? Как занять ту, единственную, рыночную нишу, что обеспечит требуемую рентабельность продукта? Как не уронить объем продаж даже в самое «неурожайное» время? Хороший торговец знает ответы на эти вопросы — или ощущает их интуитивно. Это знание — то, что отличает его от других торговцев; то, что дает преимущество конкретно его бизнесу. И не важно, как при этом будет называться торговец — продавец, торговый представитель или менеджер по продажам — суть от этого не изменяется. Экономика должна быть экономной, а торговец обязан торговать «на результат». Вне зависимости (и назло) всем обстоятельствам.
Однако не следует думать, что социальная инженерия — панацея на все случаи жизни. Как и все на свете, она имеет как «лицевую», так и «оборотную» сторону. Может быть использована во благо или со злым умыслом [10]. Осознанно или не осознанно. Примеров тому — масса. Достаточно запустить поиск в Интернет по словосочетанию «социальная инженерия». Или, для знающих английский язык — social engineering.
Башкиров Александр
Примечания:
[1]
Пример «выуживания» пароля почтового ящика одного известного бесплатного почтового сервиса, с которым пришлось столкнуться автору. Злоумышленник зарегистрировал доменное имя mails.нечто.ru на бесплатном хостинге (на момент написания статьи оно уже удалено). В этом домене разместил ряд скриптов, имитирующих веб-интерфейс сообщения «сервер перегружен» ряда известных почтовых серверов. Далее, на narod.ru разместил страничку, которую разрекламировал во всех поисковых системах в качестве «метапочтовой системы, предоставляющей доступ к более чем 10 популярным почтовым серверам». Далее, ряду лиц, к переписке которых в основном хотел получить доступ злоумышленник, было разослано письмо следующего содержания: «Прошу прощения за беспокойство. Меня зовут Вася Пупкин, и я создал метапочтовую систему, которая позволит тебе, особенно если у тебя несколько почтовых ящиков на разных серверах, получать доступ к своей почте. Сейчас система тестируется, и ты можешь внести свой вклад в тестинг — зайди на сайт нечто.narod.ru, выбери своего почтового провайдера и получи доступ к своей почте». При попытке доступа к ящику ничего не подозревающего пользователя перебрасывали на «левый» сайт (с интерфейсом, имитирующим «настоящую» почтовую службу), который сообщал, что в настоящее время сервис перегружен. Имя пользователя и пароль, естественно, передавались злоумышленнику. Собственно, к социальной инженерии в этой афере относится механизм, при помощи которого пользователя — «жертву» стимулируют перейти на «метапочтовую систему». Остальное — банальный хакинг… Кстати сказать, знакомый автора, человек, в Интернет далеко не новичок, «повелся» — и в результате здорового желания помочь начинающему интернетчику на некоторое время фактически лишился своего почтового ящика (в результате переписки со службой технической поддержки знакомому удалось доказать свои права на ящик).
[2] http://www.examen.ru/ (поиск по сайту)
[3]
Пример «развода» сотрудников ГИБДД (со слов вроде бы очевидца — пассажира машины, о которой пойдет речь, почти байка): водитель автомашины сильно превысил скорость (ехал ночью со скоростью порядка 200 км ч). Требование сотрудника ГИБДД остановиться проигнорировал. «Машина», говорит, «у меня хорошая, а у гаи — „шестерка“, не догонят». Перед следующим по трассе постом резко сбрасывает скорость… Его, естественно, тормозят. Далее такой диалог:
-Здравствуйте, сержант такой-то. Ваши документы… Так… Нарушали?
-Нет, что вы — ехал точно по знакам, там вон ограничение в 80 километров висело (интересно, когда успел его заметить?), так я 80 и ехал…
-Хм, а нам тут передали, что у вас скорость около 200 была.
-Да как же можно, меня обогнал какой-то псих, еле успел притормозить и съехать на обочину… Так быстро ехал, что я даже и номеров не заметил. Только увидел, что стекло заднее тонировано, и все.
-Мда, вот и мы не успели. Но мимо нас он не проезжал…
-А там же развилка перед постом, может направо ушел?
-Может… Ладно, документы в порядке, проезжайте.
[4]
Классикой «развода» жертвы стали письма якобы от службы технической поддержки (с фальсифицированным адресом отправителя) примерно такого содержания:
«Здравствуйте, уважаемый пользователь системы Х. Вас беспокоит служба технической поддержки. Мы делаем все для Вашего удобства. В настоящее время завершен перевод системы на новую интеллектуальную платформу. Эта платформа, помимо имеющихся в системе Х функций, обладает рядом новых возможностей, которые, как мы надеемся, будут полезны нам. Некоторое время две платформы будут работать параллельно, затем старая будет выведена из эксплуатации. Перевод пользователей будет осуществлен планово, однако мы предлагаем Вам высказать свое мнение и оценить качество работы платформы. Вы можете работать с новой платформой с прежней учетной записью, однако для этого ее необходимо обновить. Для обновления пришлите нам Ваш пароль и имя пользователя, и мы откроем для Вас вход в новую версию системы Х. Извините за беспокойство, с уважением служба поддержки компании Х».
Получив подобное письмо, неискушенный в вопросах компьютерной безопасности пользователь с большой вероятностью отправит требуемые комбинацию имени/пароля в «службу» технической поддержки.