[Из песочницы] Социальная инженерия как метод атаки
»Only for fun» — такой девиз мы часто использовали, атакуя какие-либо системы. За довольно короткий период своей деятельности скопилось большое количество материала. Передо мной встала задача, как его упорядочить. Целью данной статьи не является обучение взлому. Это просто истории, в которых лишь поверхностно описывается атака методом социальной инженерии. В основном, это взлом каких-либо веб-систем, в которых важную роль играет человеческий фактор. Сама концепция, что можно взломать что-то без единой строчки кода, делает взлом системы интересным и уникальным. Социальная инженерия — это не просто наука. Нет единой универсальной схемы взлома этим способом. В каждом отдельном случае хакер разрабатывает собственный путь к достижению конкретного результата.
Данная статья носит исключительно ознакомительный характер. Напоминаем, что намеренный взлом систем чреват правовыми последствиями.
Атакуем Skype
«Человек — самый надежный и одновременно самый уязвимый источник информации.»
А. Брединский
Поддержка
На момент 2013 года Skype был одним из самых популярных месенджеров. На то время Скайп уже входил в состав Microsoft. Баги и уязвимости находили чуть ли не каждый день. Тогда уже прикрыли много ошибок, например, с восстановлением при помощи маркера пароля, неправильной фильтрации и т.д. Но ошибки нулевого дня все же существовали. Один из самых сильных изъянов был в службе безопасности скайпа. Как не странно звучит, но служба поддержки, которая должна была защищать аккаунты, сама же и давала хакеру доступ к ним. Это трудно назвать багом или ошибкой, но работа системы определяется всей ее целостностью. И если какая-то функция программы работает неправильно, это может привести к фатальному исходу. Этот пример основан на реальных событиях и демонстрирует всю красоту социальной инженерии.
Если же вы не помните ваш пароль, скайп любезно вышлет код для его восстановления вам на почту. Но мы не знаем почту жертвы. И вообще, мы не знаем почти ничего о жертве. На сайте Skype была форма подачи заявки на восстановление потерянного аккаунта. Для этого было необходимо несколько пунктов:
• Почта, привязанная к аккаунту;
• Примерная дата создания аккаунта;
• Дата последнего входа в аккаунт;
• 3 и более ваших друзей, находящихся в списке вашего аккаунта;
• А также — дата рождения, страна и еще несколько не столь важных пунктов (я их просто опущу).
Зная все эти данные, можно получить доступ к аккаунту. Отправив эту заявку в тех. поддержку скайпа, в течение суток вам на почту придет уведомление о положительном или отрицательном решении. Если же все данные верны, то аккаунт жертвы привязывается на вашу почту, и вы можете восстановить пароль на сайте в течение минуты. Казалось бы, ничего сложного.
Шаг 1. Сбор информации
На первом этапе происходит анализ жертвы и сбор необходимых данных. Добавив жертву в наш контакт-лист, мы можем увидеть дату рождения и страну, если же пользователь их не скрыл. Но в 90% случае они общедоступны. Если же они скрыты, то можно попытаться «пробить» жертву по логину через интернет-поисковики. Найти жертву в социальных сетях или прочих сайтах, где можно узнать дату рождения. Многие люди часто оставляют свои контакты на форумах или других интернет-площадках. Такие данные легко бьются в поиске. Иногда можно подключить «дорки», с помощью которых оптимизировать поиск. Всегда нужно стараться выжать из поисковиков по максимуму, не обращая внимания только на первые ссылки, ведь они релевантные, но лишь по мнению поисковой системы. А в целом, каждый «стандартный» пользователь старается поставить свою страну проживания, делая все «по дефолту» и ничего не скрывая.
Дату последнего входа узнать не проблема, если жертва находится в вашем контакт-листе, и мы видим ее статус. Скайп не показывает, когда вы в последний раз были онлайн. Но можно отправить файл жертве. Подождать несколько дней и, если файл не будет отправлен, значит, пользователь до сих пор не входил в учетную запись. В таком случае можно указать в заявке — «более 2 дней назад». А вот с датой создания аккаунта посложнее, но, как правило, тех. поддержка не особо требовательна к этому пункту и можем указать лишь примерный месяц и год. Здесь нам помогает сбор информации о жертве — ее деятельность играет важную роль в этом деле.
Пробить трех друзей из списка жертвы уже сложнее. Как правило, я не пользовался этим и просто добавлялся с трех разных аккаунтов к жертве в друзья. Очень важно, чтобы это были не новые аккаунты, зарегистрированные в одно время.
Последним и самым интересным шагом — было пробив почты, привязанной к аккаунту жертвы. До 2013 года существовала интересная «фитча» на facebook, которую все же убрали из-за массового взлома аккаунтов, а, может, из-за раскрытия конфиденциальной информации о человеке. Смысл был прост: facebook позволяет искать друзей из различных мессенджеров и других социальных сетей. Мы создаем аккаунт на facebook, переходим во вкладку «добавить друзей», выбираем через skype, вводим свой логин и пароль, и facebook импортирует все контакты из вашего аккаунта скайпа на сайт, при этом напротив каждого контакта нам видна его почта.
Это нужно было для того, чтобы фейсбук мог найти по этой почте ваших друзей в социальной сети. Вскоре Skype все же закрыл передачу email. Иногда, на этом шаге можно было уже остановиться и взломать скайп жертвы. К этому мы вернемся чуть позже.
Шаг 2. Заявка
Перед подачей заявки очень важно было уточнить один момент. Если жертва находится в Англии, а вы пытаетесь подать заявку через IP, скажем, Италии, то у администрации скайпа будут очень большие сомнения и в 99% вам откажут. Поэтому надо было настроить прокси сервер на страну жертвы.
Указав все собранные нами данные, обязательно надо описать историю потери доступа «к своему» аккаунту. От имени жертвы мы пишем примерно следующее:
«Здравствуйте. Я был (а) в отпуске последний месяц. После возвращения домой я не смог (ла) войти в свой аккаунт. Я не уверен (а), что точно помню свой пароль, но подозреваю, что мои данные могли получить мошенники, потому как на почту я войти тоже не могу. Прошу помочь мне.»
После формирования и отправки заявки, в течение суток вам придет ответ на новую почту, которую вы указали в заявке. Если же служба поддержки ее одобрит, то аккаунт жертвы будет привязан на эту самую почту, и вы сможете перейти на сайт скайпа и сбросить пароль. В моем случае было все просто. Я взламывал определенную категорию людей, которые практически всегда были онлайн, всегда добавляли вас в свой контакт-лист и все личные данные были открыты — дата рождения и страна.
Альтернативный способ взлома скайпа
Этот метод основан на несуществующей почте, привязанной к скайпу жертвы. Иногда, регистрировав аккаунт на каком-либо сайте, люди часто пишут набор символов вместо реальной почты. Так как просто не хотят тратить время, либо не помнят свою почту, либо не хотят подтверждать свой аккаунт.
Как упоминалось ранее, facebook позволяет определить почту, привязанную к скайпу жертвы. Узнав ее, перед нами может предстать почта такого вида «fjdfdji38h9h9id@gmail.com» или же «fdjhfdh39h@jhjfhgfohg.com». В первом случае — мы перейдем на gmail.com и попытаемся зарегистрировать новую почту с именем «fjdfdji38h9h9id». Если все получится, значит, мы сможем просто сбросить пароль на эту почту. Аккаунт взломан. Во втором случае сайта с именем «jhjfhgfohg.com» вообще не существует. Мы создаем хост, привязываем к нему это доменное имя, поднимаем почтовый сервис и создаем там почту с именем «fdjhfdh39h». Таким образом, мы имеем почту «fdjhfdh39h@jhjfhgfohg.com», на которую сможем также выслать пароль от скайпа.
Взлом скайпа с помощью «Фрукта»
После множества удачных попыток взлома, тех. поддержка все же заметила огромный наплыв заявок на восстановление. Они ужесточили требования и теперь для удачного взлома необходимо знать данные жертвы на 100%. К тому же, метод с пробивом почты на фейсбуке уже не работал.
Социальный инженер никогда не зацикливается на взломе одним методом. Он развивается, исследуя все возможные пути, ведь в любой мельчайшей детали может скрываться фатальная ошибка. Так и было. Платежная система Qiwi на то время была не сильно защищенной, поэтому серию атак она все же перетерпела. Но как же связать Киви и Скайп, подумаете вы и отбросите эту идею. Только не социальный инженер.
Исследуя форму восстановления пароля скайпа, можно наткнуться на интересный пункт. Скайп предлагает возможность совершать звонки по всему миру, используя внутренний баланс. Пополнить его можно через большинство платежных систем, в том числе и картой Visa. Если же вы когда-либо пополняли свой баланс скайп, то можно указать эти данные в заявке и службе поддержки скайпа будет их более чем достаточно, чтобы идентифицировать вас как владельца аккаунта. Очень интересно… Киви удобен тем, что в нем интегрированы многие сервисы, в том числе и скайп. Регистрируясь в Киви по номеру телефона, вам присваивается виртуальная карта с номером, датой выпуска и пин-кодом. И совершая оплату через киви, вы формально расплачиваетесь картой. Суть в том, что Киви позволяет пополнить баланс аккаунта скайп, при этом просто нужно знать логин скайпа.
Эврика!
Вводим логин жертвы в киви и пополняем ей баланс на пару долларов. Смотрим историю оплаты в киви и выбираем наш чек. Нам нужны номер перевода, дата и сумма. Указываем эти данные в заявке на восстановление скайпа. Пишем подобный текст:
«Здравствуйте, я забыл пароль, а почту мою заблокировали, поэтому нет возможности сбросить пароль. Прошу вас привязать мой аккаунт на новую почту. Прикладываю данные о пополнении своего баланса картой»
Важно не указывать в заявке, что пополняли баланс мы именно через Киви, а создать историю, что воспользовались своей личной картой. Для скайпа этот момент был очень важным для идентификации, поэтому на все другие пункты они просто закрывали глаза и давали вам доступ.
«Неспелый QIWI»
Способов заработка в интернете довольно много, но все они либо неэффективные, либо же «черные». Мы же не были никогда людьми, способными на злодеяния и кражу у честных людей. Однако, в деньгах заинтересованы были. Обчистить мошенника в интернете казалось не таким уж и черным делом.
Во времена рассвета синтетических наркотиков открывались целые форумы по продаже и закупке наркотических средств. Дилеры нуждались в особой защите, но их каналы были не такими уж и защищенными. Как правило, общение с клиентами проводилось через уязвимые мессенджеры вроде skype, jabber и старой доброй icq. Оплату дилеры принимали в основном на самые популярные ЭПС*, но в основном на Киви-кошелек по номеру телефона. На балансе таких кошельках находились огромные деньги. Получить доступ к кошельку Киви -означало получить эти самые деньги. Наркодилеры не принимали никаких файлов, не переходили по внешним ссылкам, старались не вступать в тесный контакт с клиентом. Все, что у нас было, это номер кошелька Киви.
* электронная платежная система
Доверенность
Техническая поддержка Киви скептически относилась к восстановлению доступа к кошельку. Если вы потеряли доступ, то восстановить пароль можете только если сим карта у вас на руках. Тогда мы и стали думать, как получить себе дубликат сим-карты. Первым шагом, мы звонили оператору сотовой связи и пытались каким-либо образом переадресовать смс-сообщения и звонки на свой номер, что окончилось неудачей. Но мы выяснили, что на основе генеральной доверенности, все-таки, можно получить дубликат сим-карты. Однако этот способ был очень опасным и сложным.
Суть состояла в том, чтобы пробить паспортные данные человека, зарегистрированного на сим-карту. Затем найти человека, на кого можно будет оформить генеральную доверенность. После чего этот человек должен будет прийти в отделение сотовой связи и получить сим-карту. Но для составления генеральной доверенности нужен еще и второй человек, которому принадлежит сим-карта, поэтому идея показалась напрасной. Однако, мы все же решили проверить на себе. У моего знакомого была генеральная доверенность на своего родственника. Мы пришли в отдел и были поражены тем, что операторы никак не проверяли данную доверенность на наличие в реестре, а, значит, можно указать совершенно несуществующего нотариуса и нарисовать любую печать. Грубо говоря, документ можно полностью подделать без участия жертвы.
На хакерских форумах были люди, активно предлагающие свои услуги по пробиву* информации о любом мобильном номере. Стоимость была сравнительно низкая, поэтому мы и воспользовались этим. Получив номер кошелька для оплаты наркотических средств от дилера, мы передали его пробивале**. По сути, это те же операторы в мобильных офисах. Через час получили паспортные данные этого номера. Взяли за основу шаблон генеральной доверенности, ранее использованной моим знакомым. Переписали данные, переделали печать и ФИО нотариуса. Поставили другую подпись и все готово. Придя в офис к оператору, было весьма тревожно, но действовали, не подавая виду. Покрутив свежую напечатанную доверенность в руках, оператор без лишних вопросов оформил на новые паспортные данные сим-карту и выдал нам в руки в течение 5 минут. Слишком уж просто. Мы сразу же отправили код восстановления пароля на сайте киви и восстановили пароль за минуту. Работали мы так очень долго и это приносило огромные деньги.
Однажды операторы заподозрили частые посещения в офис и решили проверить доверенность. Все обошлось и нам удалось уйти. По этой схеме можно работать, если соблюдать особые меры предосторожности. Во-первых, необходимо было посещать разные офисы с периодичностью примерно 1–2 раза в неделю. Во-вторых, люди должны постоянно меняться. Причину, по которой мы восстанавливали сим-карты, операторы не спрашивали. Их мало волновал и сам документ. Они даже не делали скан-копию. Все эти ошибки были результатом безответственного отношения работников офисов.
* проверить или узнать информацию о ком-либо, чём-либо
** лицо, предоставляющее услуги по пробиву
Подмена
Скажу честно, до такого было не так трудно додуматься. Труднее было это реализовать. И так, почти все платежные средства, а также мобильные операторы, предоставляют возможность использовать USSD запросы. На сайте киви такие команды тоже были. Объясню доступным языком. Предположим, у вас есть киви-кошелек, на котором активирована функция USSD. Активируется она в настройках кошелька и, как правило, включена автоматически. Если сим-карта находится у вас в телефоне, то вы можете совершить перевод средств простой смс командой «перевод 89123456789 1000» на номер 7494. С вашего счета спишут 1000 рублей и переведут на счет другого киви кошелька с номером 89123456789. Возникает мысль, а что, если подделать номер отправителя и, скажем, не имея под рукой сим-карты жертвы, отправить смс с переводом средств на свой кошелек. Сервисы по отправке смс с подменой отправителя существовали и активно работали, причем многие из них совершенно бесплатно. Предназначены они были скорее для розыгрышей, но мы используем их для своих целей. Проблема была в том, что подделывать запросы на короткие номера было невозможно! Тут возникает другой вопрос, а ведь короткий номер к чему-то должен привязываться? И да, действительно, у каждого короткого номера есть федеральный. И мне удалось его найти. Точнее был даже не один номер, а целая корпоративная группа. Номер был оформлен на компанию ООО «Бифри», использовался тариф «мобильное информирование», баланс на номере минус 400 тысяч рублей. Главное, что если отправить на этот номер смс, то автоматически переадресуется на короткий 7494. То, что нужно!
Приступаем к атаке. Находим рабочий сервис с подменой смс отправителя. Указываем отправителем номер нашей жертвы, номер получателя — федеральный номер Киви, а в теле письма пишем следующую команду: «перевод 89123456789 1000», где 89123456789 — номер нашего Киви. Отправляем смс и со счета жертвы снимается 1000 рублей и переводится на наш номер — 89123456789. Максимально можно было переводить по 5000 рублей. Поэтому приходилось совершать сразу несколько команд, если на кошельке была большая сумма. Пир был не долгим. Киви изменила систему ussd, добавив подтверждение по смс. К тому же, операторы сотовой связи запретили подменять смс через сторонние шлюзы. Кое-какие сервисы все же работали, но это уже не имело значения.
Заработок в Интернете
«Сломай барыгу»
Я не помню, когда интернет так широко монетизировали. Все чаще люди стараются уйти в онлайн работу в поисках различных способов заработка. Форумы о заработке предлагают такие схемы, как «белые», так и «черные». Конечно, можно долго спорить о том, что все белые схемы — бесполезны, так как никто бы не стал делиться идеями бизнеса, который якобы приносит миллионы, а цена этой идеи составляет жалкие 5 тысяч деревянных. Поэтому самые яркие примеры заработка можно наблюдать именно в «черных» схемах. Сюда можно отнести: кардинг, хакинг, фрод, ддос, вымогательство, торговля незаконными вещами и препаратами, и многое другое. Во-первых, это реально приносит прибыль. Во-вторых, это незаконно. В-третьих, спрос на данные услуги довольно высокий.
У меня не было цели и желания заниматься черным бизнесом. Я знал, к чему это может привести, однако активно тусовался в этой среде. Я знал, что большинство из этих мошенников либо кидалы, либо посредники и лишь небольшой процент реальные продавцы. Возникали мысли, что можно наживаться на этих самых мошенниках. Взламывать хакеров, кидать кидал, вымогать у вымогателей. Что может быть лучше? Так скажем, наказывать плохих людей, да еще и получать за это прибыль.
Не секрет, что самыми прибыльными в темной стороне интернета были люди, занимающиеся отмыванием и обналичиванием денег, а также наркодилеры, занимающиеся продажей наркотиков. В целом, изучая «dark web», то выбор пал именно на торговцев наркотиков. Изначально использовали они наш любимый корявый skype, старенькую icq, а также jabber и Brosix. Тема со взломом icq будет дальше раскрыта.
Я знал, как взламывать скайпы различными методами, поэтому мы без труда взламывали по 3–5 магазинов в день. Заходя на аккаунт дилера, можно было довольствоваться огромной базой клиентов-торчков. Их количество зависело от репутации магазина. Суть заработка состояла в том, чтобы подменять кошелек магазина на свой, на который оплачивали деньги клиенты. Минимальная стоимость пары грамм синтетических веществ составляла около 1 тысячи рублей. Клиенты были разные и иногда 1 клиент платил до 20 тысяч рублей единовременно. Заработок доходил до 100 тысяч рублей в сутки. Неплохо?
Не всегда мы использовали такой грубый метод. Во-первых, клиенты понимали, что их кинули, поэтому клиентская база быстро сокращалась, и магазин быстро умирал. Хмм… Если так подумать, то мы закрываем магазины веществ, рушим бизнес дилеров и получаем к тому же за это деньги. Где в этом время было ФСБ и ФСКН? (шутка). Большинство дилеров предлагали за их взломанные аккаунты большой выкуп. Часто мы соглашались и давали дилерам работать дальше, но через некоторое время снова наведывались к ним. Менее чем за полгода все дилеры полностью отказались от скайпа.
Взлом ICQ
Те, кто использовал icq, тоже были уязвимы. Способов взломать аську было много, но знали о них единицы. Я же использовал социальную инженерию и все тот же способ через техническую поддержку. Служба поддержки ICQ требовала один важный пункт: необходимо, чтобы 3–5 друзей из твоего контакт-листа подтвердили, что это твой аккаунт. Тут все как со скайпом, добавляемся с трех фейков к жертве, поддерживаем общение в течение недели. Затем оставляем заявку в тех. поддержку и подтверждаем с этих фейков, что аккаунт принадлежит нам.
Тут тоже есть свои лазейки. Конкретная версия клиента icq 6.х позволяла увидеть email, привязанный к аккаунту прямо в личных данных пользователя. Надо лишь добавить жертву, а она в свою очередь должна авторизовать вас. Тогда вы сможете просмотреть ее почту, если жертва регистрировала ICQ не на телефон. А далее мы уже переходим к почте и взламываем ее. Многие почты были несуществующими, что давало 100% шанс успеха. Мы просто создавали эту почту и отправляли на нее пароль с сайта ICQ. Это было очень просто. Некоторые email мы взламывали подбором пароля, некоторые через секретный вопрос, другие же вовсе находили в публичных базах взломанных сайтов. Вообще, способов взлома почты до кучи. В то время у меня даже была активная XSS на rambler и пара багов на других сервисах.
Выкуп
Это один из моих любимых способов, основанных на вымогательстве, но вымогать деньги мы будем у все тех же торговцев веществами. Сразу возникает вопрос, а чем же мы будем их шантажировать?
Широкое использование Киви-кошельков порождало все больше идей и способов взлома. Когда основные методы были прикрыты, то я обратил внимание на один пункт в службе поддержки. Дело в том, что мы могли заблокировать любой киви-кошелек. Причиной служило следующее. Мы пишем текст якобы от себя и просим заблокировать наш киви кошелек, так как потеряли телефон с сим-картой и боимся за свои средства. Служба поддержки любезно блокирует все операции на кошельке, как и сам вход в кошелек. Но есть одно очень важное условие! Если в течение 15 минут не предоставить паспорт и договор на номер кошелька, то кошелек разблокируют. Формально мы можем заблокировать любой кошелек на 15 минут. Как это использовать — я сразу же понял.
Я добавлялся к дилеру в icq и писал, что кошелек заблокирован до тех пор, пока не получу определённую сумму. На этот диалог у меня должно было уйти не более 15 минут, чтобы я смог получить деньги до того, как кошелек разблокируют. Я получаю деньги, проходит пару минут и кошелек снова работает. Если сумма на кошельке действительно большая, то дилер за нее боится, поэтому у него не остается выбора, как заплатить выкуп.
Дырка в КИВИ
Так как основной электронной платежной системой в интернете была Киви, которая остается и сейчас, то большинство кошельков стали активно блокировать. Киви понимала, кто пользуется их системой и ужесточила правила пользования. Во-первых, Киви ввели лимиты на денежные средства. Для этого необходимо было проходить длительную идентификацию. Во-вторых, блокировали кошельки без каких-либо особых причин. А на разблокировку кошелька уходили недели. Для этого были созданы специальные сервисы, предлагающие услуги по разблокировке кошельков. Они брали определенный процент за эту работу. Заблокированные кошельки попадали и мне, так как я умел пробивать данные и рисовать необходимые документы для разблокировки. Все бы ничего, но разблокировать становилось все труднее и труднее. И тогда я решил проверить одну странную штуку. Я написал в техническую поддержку, что потерял сим-карту и прошу заблокировать временно свой кошелек. Странно, но мне пришел ответ, что тех. поддержка заблокировала номер. Фактически, она заблокировала уже заблокированный кошелек. Я стал ждать. И через 20 минут кошелек разблокировали. Я смог войти под прежним логином и паролем и снять деньги. Я проделал так еще с парой десятков кошельков, после чего киви что-то заподозрила и ответила мне, что не может заблокировать и без того заблокированный номер.
Я считаю, что блокировкой занимался робот, поэтому он не обращал внимания на то, что кошелек изначально был заморожен. Полагаю, что из-за активного обращения по определенной схеме кто-то из сотрудников банка обнаружил эту ошибку и внес корректировки.