Работа с программой Wireshark, несколько примеров для понятия безопасности в сети интернет. Собираем пароли юзеров с помощью прокси и сниффера

Введение

Согласитесь, что в настоящее время трудно себе представить компьютерную жизнь без постоянного ввода пароля. Пароль нам необходим везде - начиная от включения компьютера, регистраций на различных сайтах и форумах, доступу к своим почтовым ящикам и заканчивая созданием аккаунтов (страниц с личными данными и настройками) в платежных системах и отправкой/получением платежей в электронном виде. И если при одноразовой регистрации на каком-либо случайном сайте (например, только лишь для скачивания игры) можно не задумываясь указать любой пароль (даже «123456»), то при создании постоянного аккаунта на важном сайте (тем более, если это связано с денежными операциями) пароль должен быть очень надёжным.В противном случае пароль может быть взломан злоумышленником, а полученные личные данные могут быть использованы для общения в сети от нашего имени (в лучшем случае) либо для получения кредитов или открытия счетов. Поэтому лучше позаботиться о защите заранее, и уже сегодня изменить все свои «слабые» пароли на более надёжные.
Целью курсового проекта является рассмотрение Методов перехвата паролей пользователей компьютерных систем и методы противодействия им

Чет мало как то))))))))))))))))))))))))))))))
Целью курсового проекта является???????????????
МЕТОДЫ ПЕРЕХВАТА ПАРОЛЕЙ И ПРОТИВОДЕЙСТВИЯ ИМ

Брутфорс
Брутфорс(от английского bruteforce - полный перебор или метод «грубой силы») – один из популярных методов взлома паролей на серверах и в различных программах. Заключается он в том, что программа-взломщик пытается получить доступ к какой-либо программе (например, к почтовому ящику) путем перебора паролей по критериям, заданным владельцем данной программы: по словарю, по длине, по сочетаниям цифр, да в принципе таких критериев существует множество.
Способ взлома брутфорсом является достаточно долгим, но мощным, поэтому остается на вооружении у хакеров и по сей день, а с учетом все увеличивающихся мощностей компьютеров и пропускной способности интернет-каналов останется на вооружении еще на долгое время.
Данный способ подбора паролей очень хорош тем, что пароль в конце концов взламывается, но это может занять весьма и весьма долгое время, зачастую даже столетия. Так что данный способ взлома оправдывает себя не всегда, если пользователь-владелец взламываемого сервиса вел себя достаточно хитро и не использовал простых паролей типа «123», «qwerty» и тому подобных, а использовал и заглавные, и строчные символы, плюс ко всему этому задействовал и цифры, и разрешенные специальные символы. Если пароль при всем этом обладает еще и достаточной длинной (около 10 символов), то ему взлом методом брутфорса практически не грозит.
При брутфорсе чаще всего используется словарная атака – подбор паролей идет из текстового файла заранее составленного (выпрошенного, купленного, украденного, скачанного бесплатно) словаря. Данный способ атаки очень эффективен при массовом взломе, допустим, аккаунтов интернет-мессенджера ICQ, когда злоумышленник, допустим, пытается взломать некий диапазон ICQ-номеров. При этом существует довольно большая вероятность, что при атаке по словарю ему это удастся. Примерами могут служить неоднократные факты взлома.
С 2005 года значительно увеличилось также количество атак, осуществляемых на защищенные SSH-сервисы. Даже если у вас на сервере установлено самое новейшее программное обеспечение, это вовсе не значит, что подобрать пароль к нему невозможно, если межсетевой экран бездействует или настроен неправильно или недостаточно. Так что для увеличения невозможности взлома настройте свой фаервол должным образом, это поможет оградить вас от неприятных сюрпризов в дальнейшем.
Программ для проведения брута на просторах Интернета выложено очень много, также существует большое количество бесплатных и платных словарей к ним.
Ну и напоследок поговорим немного о математической стороне брута.
Как говорит Википедия, любая задача из класса NP может быть решена путем полного перебора. Но все это может потребовать экспоненциального времени.
При разработке различных криптографических шифров метод тотального перебора используют при оценке его (шифра) стойкости к взлому. При этом новый шифр считается достаточно стойким, если не существует более быстрого метода его взлома, чем полный перебор всех возможных ключей. Такие криптографические атаки, как и брут, являются самыми действенными, но и занимают зачастую очень много времени.
При знании некоторых условий метод брута паролей использует отсев неприемлемых значений (пустых паролей, одних и тех же повторяющихся символов и т.д.). В математике этот метод называется метод ветвей и границ.
Также при бруте используются методы распараллеливания вычислений, когда одновременно перебираются несколько паролей. Осуществляется это двумя методами: методом конвейера и методом брута из непересекающихся подмножеств всех возможных паролей.

Рисунок 1. Модель аппаратного ввода системы Windows
При возникновении неких событии ввода (нажатии клавиш, перемещении мыши) события обрабатываются соответствующим драйвером и помещается в системную очередь аппаратного ввода. В системе имеется особый поток необработанного ввода, называемый RIT (RawInputThread), который извлекает события из системной очереди и преобразует их в сообщения. Полученные сообщения помещаются в конец очереди виртуального ввода одного из потоков (виртуальная очередь потока называется VIQ – VirtualizedInputQueue-). При этом RIT сам выясняет, в очередь какого конкретно потока необходимо поместить событие. Для событий мыши поток определяется поиском окна, над которым расположен курсор мыши. Клавиатурные события отправляются только одному потоку – так называемому активному потоку (т.е. потоку, которому принадлежит окно, с которым работает пользователь). На самом деле это не совсем так - в частности, на рисунке 1 показан поток A, не имеющий очереди виртуального ввода. В данном случае получатся, что потоки A и B совместно используют одну очередь виртуального ввода. Это достигается при помощи вызова API функции AttachThreadInput, которая позволяет одному потоку подключиться к очереди виртуального ввода другого потока.
Следует отметить, что поток необработанного ввода отвечает за обработку специальных сочетаний клавиш, в частности Alt+Tab и Ctrl+Alt+Del.
Слежение за клавиатурным вводом при помощи ловушек
Данная методика является классической для клавиатурных шпионов. Суть метода состоит в применении механизма ловушек (hook) операционной системы. Ловушки позволяют наблюдать за сообщениями, которые обрабатываются окнами других программ. Установка и удаление ловушек производится при помощи хорошо документированных функций API библиотеки user32.dll (функция SetWindowsHookEx позволяет установить ловушку, UnhookWindowsHookEx - снять ее). При установке ловушки указывается тип сообщений, для которых должен вызываться обработчик ловушки. В частности, есть два специальных типа ловушки WH_KEYBOARD и WH_MOUSE - для регистрации событий клавиатуры и мыши соответственно. Ловушка может быть установлена для заданного потока и для всех потоков системы. Ловушка для всех потоков системы очень удобна для построения клавиатурного шпиона.
Код обработчика событий ловушки должен быть расположен в DLL. Это требование связано с тем, что DLL с обработчиком ловушки проецируется системой в адресное пространство всех GUI процессов. Интересной особенностью является то, что проецирование DLL происходит не в момент установки ловушки, а при получении GUI процессом первого сообщения, удовлетворяющего параметрам ловушки.
Методика ловушек достаточно проста и эффективна, но у нее есть ряд недостатков. Первым недостатком можно считать то, что DLL с ловушкой проецируется в адресное пространство всех GUI процессов, что может применяться для обнаружения клавиатурного шпиона. Кроме того, регистрация событий клавиатуры возможна только для GUI приложений, это легко проверить при помощи демонстрационной программы.
Слежение за клавиатурным вводом при помощи опроса клавиатуры
Данная методика основана на периодическом опросе состояния клавиатуры. Для опроса состояния клавиш в системе предусмотрена специальная функция GetKeyboardState, возвращающая массив из 255 байт, в котором каждый байт содержит состояние определенной клавиши на клавиатуре. Данный метод уже не требует внедрения DLL в GUI процессы и в результате шпион менее заметен.
Однако изменение статуса клавиш происходит в момент считывания потоком клавиатурных сообщений из его очереди, и в результате подобная методика работает только для слежения за GUI приложениями. От этого недостатка свободна функция GetAsyncKeyState, возвращающая состояние клавиши на момент вызова функции.
Недостатком клавиатурных шпионов такого типа является необходимость периодического опроса состояния клавиатуры с достаточно высокой скоростью, не менее 10-20 опросов в секунду.
Слежение за клавиатурным вводом при помощи перехвата API функций
Данная методика не получила широкого распространения, но тем не менее она может с успехом применяться для построения клавиатурных шпионов.. Разница между RootKit и клавиатурными шпионами в данном случае невелика – шпион будет перехватывать функции с целью мониторинга, а не с целью модификации принципов работы и результатов вызова.
Простейшим способом может быть перехват функций GetMessage, PeekMessage и TranslateMessage библиотеки User32, что позволит вести мониторинг всех сообщений, получаемых GUI приложениями.

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

Аппаратные клавиатурные шпионы
В ходе решения задач по защите от утечки информации часто рассматривают только различные программные средства для шпионажа за работой пользователя. Однако кроме программных возможны и аппаратные средства:
Установка устройства слежения в разрыв кабеля клавиатуры (например, устройство может быть выполнено в виде переходника PS/2);
Встраивание устройства слежения в клавиатуру;
Считывание данных путем регистрации ПЭМИН (побочных электромагнитных излучений и наводок);
Визуальное наблюдение за клавиатурой
Аппаратные клавиатурные шпионы встречаются намного реже, чем программные. Однако при проверке особо ответственных компьютеров (например, применяемых для совершения банковских операций) о возможности аппаратного слежения за клавиатурным вводом не следует забывать.
Пример клавиатурного шпиона
В настоящее время сотни клавиатурных шпионов, рассмотрим в качестве примера достаточно распространенную коммерческую программу ActualSpy(Диалоговое окно программы изображено ниже) (http://www.actualspy.ru). Данная программа может регистрировать клавиатурный ввод (с регистрацией заголовка окна и имени программы), снимать скриншоты экрана по расписанию, регистрировать запуск/остановку программ, следить за буфером обмена, принтером, создаваемыми пользователем файлами. Кроме того, в программе реализовано слежение за Интернет-соединениями и посещаемыми сайтами. ActualSpy выбран в качестве примера

Программа имеет простейшую маскировку от обнаружения – она не видна в стандартном списке задач Windows. Для анализа собранной информации программа формирует протоколы в формате HTML. Принцип работы программы ActualSpy основан на ловушке, регистрирующей события клавиатуры.
В качестве других примеров могут выступить SpyAgent (http://www.spytech-web.com), ActMon (http://www.actmon.com), SpyBuddy (http://www.actmon.com), PC ActivityMonitor (http://www.keyloggers.com), KGB Spy (http://www.refog.ru/)…. Этот список можно продолжать очень долго, однако в большинстве случаев современные клавиатурные шпионы имеют примерно одинаковую базовую функциональность и различаются сервисными функциями и качеством маскировки в системе.
Методики поиска клавиатурных шпионов
1. Поиск по сигнатурам. Данный метод не отличается от типовых методик поиска вирусов. Сигнатурный поиск позволяет однозначно идентифицировать клавиатурные шпионы, при правильном выборе сигнатур вероятность ошибки практически равна нулю. Однако сигнатурный сканер сможет обнаруживать заранее известные и описанные в его базе данных объекты;
2. Эвристически алгоритмы. Как очевидно из названия, это методики поиска клавиатурного шпиона по его характерным особенностям. Эвристический поиск носит вероятностный характер. Как показала практика, этот метод наиболее эффективен для поиска клавиатурных шпионов самого распространенного типа – основанных на ловушках. Однако подобные методики дают много ложных срабатываний. Исследования показали, что существуют сотни безопасных программ, не являющихся клавиатурными шпионами, но устанавливающих ловушки для слежения за клавиатурным вводом и мышью. Наиболее распространенный примеры - программы PuntoSwitcher, словарь Lingvo, программное обеспечение от мультимедийных клавиатур и мышей;
3. Мониторинг API функций, используемых клавиатурными шпионами. Данная методика основана на перехвате ряда функций, применяемых клавиатурным шпионом – в частности, функций SetWindowsHookEx, UnhookWindowsHookEx, GetAsyncKeyState, GetKeyboardState. Вызов данных функций каким либо приложением позволяет вовремя поднять тревогу, однако проблемы многочисленных ложных срабатываний будут аналогичны методу 2;
4. Отслеживание используемых системой драйверов, процессов и сервисов. Это универсальная методика, применимая не только против клавиатурных шпионов. В простейшем случае можно применять программы типа KasperskyInspector или Adinf, которые отслеживают появление в системе новых файлов.

Программы для поиска и удаления клавиатурных шпионов
1. Любой антивирусный продукт. Все антивирусы в той или иной мере могут находить клавиатурные шпионы, однако клавиатурный шпион не является вирусом и в результате пользы от антивируса мало;
2. Утилиты, реализующие механизм сигнатурного поиска и эвристические механизмы поиска. Примером может служить утилита AVZ, сочетающая сигнатурный сканер и систему обнаружения клавиатурных шпионов на базе ловушек;
3. Специализированные утилиты и программы, предназначенные для обнаружения клавиатурных шпионов и блокирования их работы. Подобные программы наиболее эффективны для обнаружения и блокирования клавиатурных шпионов, поскольку как правило могут блокировать практически все разновидности клавиатурных шпионов.

Из специализированных программ интерес могут представлять коммерческие продукты PrivacyKeyboard и Anti-keylogger(пример программы (http://www.bezpeka.biz/). Интерфейс программы Anti-keylogger показан на рисунке:

Программа Anti-keylogger работает в фоновом режиме и производит обнаружение программ, подозреваемых в слежении за клавиатурой. В случае необходимости можно вручную разблокировать работу любой из обнаруженных программ (например, на рисунке видно, что в список «шпионов» попали MSCTF и программа закачки из Интернета FlashGet). Для обнаружения клавиатурных шпионов не применяются базы сигнатур, обнаружение ведется эвристическими методами.
Тестирование программы показало, что она эффективно противодействует клавиатурным шпионам, основанным на применении ловушек, циклического опроса и клавиатурного драйвера-фильтра.
Другим примером может служить программа AdvancedAntiKeylogger (Пример работы программы изображен ниже) (http://www.anti-keylogger.net).

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

Заключение
Клавиатурный шпион не является вирусом, но, тем не менее, представляет большую угрозу для пользователей, поскольку позволяет злоумышленнику следить за работой пользователя и может применяться для похищения конфиденциальной информации, в том числе паролей пользователя. Опасность клавиатурного шпиона может существенно возрасти при его сочетании с RootKit-технологией, которая позволит замаскировать присутствие клавиатурного шпиона. Еще более опасной является троянская или backdoor программа, содержащая клавиатурный шпион – его наличие существенно расширяет функции троянской программы и ее опасность для пользователя.

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

Ну а так нормально
Заключение

После изучения материала можно сделать некоторые умозаключения:
Это шо такое боюсь спросить))))))))))))))))))?????????????????????? Убрать слово ты что книгу пишешь
1. Пароль не должен быть коротким.
Иметь пароль менее 8 символов вообще нежелательно, а ещё лучше, чтобы пароль содержал 10-12 символов или больше.
2. Пароль не должен содержать только цифры или только буквы (особенно повторяющиеся). Лучше всего, когда буквы и цифры чередуются, а ещё лучше, если в пароль добавляются специальные символы или знаки препинания.
4. Не использоваться использовать пароль, который содержит любые данные о вас или вашей семье -всевозможные памятные даты (рождения, свадьбы и пр.), имена и фамилии родственников, номера квартир, документов или телефонов. Недопустимо также использование любых комбинаций, составленных из личных данных.
5. Пароль должен быть бессмысленным, поэтому лучше отказаться от пароля, который представляет собой любое существующее словарное слово (на любом языке).
6. Не использовать «секретные вопросы», ответы на которые можно легко узнать или подобрать.
7. Необходимо использовать уникальный пароль для каждого отдельного Интернет сервиса, форума, сайта.
8. Не держать пароли у всех на виду.
9. Не xранить пароли в Интернете или на компьютере в виде текстового файла.
Если злоумышленник получит доступ к нашему компьютеру, то найти файл с паролями для него будет ещё проще (при чем в любом месте на жестком диске).
10. Не хранить пароли с помощью встроенных в браузер «хранителей паролей».
Во-первых, никогда нельзя быть уверенным в надежности такого «хранителя» и в том, что сам браузер не содержит «дыр» в защите. Злоумышленники в первую очередь ищут «дыры» в браузерах, т.к. браузерами пользуются все.
Во-вторых, если случится сбой в работе браузера или всей системы, то очень велика вероятность, что мы потеряем доступ ко всем паролям, которые хранит браузер, а это хоть и не взлом, но тоже неприятно.
11. Делать копии паролей.
Если для хранения паролей вы используете специальные программные средства, то не забывайте периодически делать резервные копии баз данных с паролями. Если же вы храните пароли на листке бумаги, то сделайте вторую копию такого листа (или блокнота) и храните оригинал и дубликат в разных (укромных) местах.
12. Не вводить пароли в посторонних программах, на посторонних сайтах, а также не отсылайте пароли по почте (даже по запросу от службы поддержки или администрации сайта). Администрация НАСТОЯЩЕГО серьезного сайта никогда не потребует пароль, поэтому если вы получили подобный запрос, то это скорее всего работа мошенников.
13. Как можно реже вводить пароли с использованием чужих компьютеров, а особенно в общественных местах (интернет-кафе, терминалах и т.п.). Крайне не желательно на чужом компьютере вводить пароли для входа в аккаунт платежных систем или использовать интернет-банкинг, т.к. не исключено, что на этом компьютере используется устройство или программа для запоминания последовательности нажатий клавиш (клавиатурные шпионы).
14. Периодически менять пароли (особенно если пользовались паролем за чужим компьютером). Чем надежнее пароль, тем дольше можно его использовать. Надёжный пароль из 12-14 символов, составленный с учетом описанных выше рекомендаций можно не менять несколько лет.

Список литературы(он тут когда-нибудь будет)

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

  1. Возьмем один из много численных примеров: Google просит всех Администраторов сайтов, переходить с HTTP на HTTPS тем самым создавая зашифрованные соединения, между клиентом и сервером(Между вами и сайтом). Переходить на HTTPS хостеры(Администраторы сайтов) не торопятся, многие клиенты используют все еще операционную систему Windows XP, которая не поддерживает этот протокол HTTPS а работает на старом HTTP. Тем самым клиенту использующему Windows XP будет попросту не зайти на такой сайт с зашифрованном соединении HTTPS. Одна из причин почему хостеры не используют протокол HTTPS. Ниже идет более подробное описание:
  2. Очень часто они(ваши данные) передаются по сети не в защищенном виде. Поэтому если сайт, на котором вы пытаетесь авторизоваться, использует HTTP протокол, то очень просто выполнить захват этого трафика, проанализировать его с помощью Wireshark и далее с помощью специальных фильтров и программ найти и расшифровать пароль. Но не отчаивайтесь, чтобы ваши пароли перехватить надо подключится к вашей сети. WiFi например надо с начало узнать пароль а уже потом и другие пароли на ваши ресурсы. Почему в данное время много говорят о том что не стоит подключаться к WiFi в кафе или в других не знакомых местах. Потому что ваш трафик пойдет по этой сети, а дальше, что дальше, читайте дальше.
  3. Лучшее место для перехвата паролей – ядро сети, где ходит трафик всех пользователей к закрытым ресурсам (например, почта) или перед маршрутизатором для выхода в Интернет, при регистрациях на внешних ресурсах. Настраиваем зеркало и мы готовы почувствовать себя хакером.
  4. Теперь все по порядку:

    Шаг 1. Устанавливаем и запускаем Wireshark для захвата трафика
  5. Иногда для этого достаточно выбрать только интерфейс, через который мы планируем захват трафика, и нажать кнопку Start. В нашем случае делаем захват по беспроводной сети.
  6. Захват трафика начался.
  7. Шаг 2. Фильтрация захваченного POST трафика
  8. Открываем браузер и пытаемся авторизоваться на каком-либо ресурсе с помощью логина и пароля. По завершению процесса авторизации и открытия сайта мы останавливаем захват трафика в Wireshark. Далее открываем анализатор протоколов и видим большое количество пакетов. Именно на этом этапе большинство ИТ-специалистов сдаются, так как не знают, что делать дальше. Но мы знаем и нас интересуют конкретные пакеты, которые содержат POST данные, которые формируются на нашей локальной машине при заполнении формы на экране и отправляются на удаленные сервер при нажатии кнопки «Вход» или «Авторизация» в браузере.
  9. Вводим в окне специальный фильтр для отображения захваченных пакетов: http.request.method == “POST”
  10. И видим вместо тысячи пакетов, всего один с искомыми нами данными.
  11. Шаг 3. Находим логин и пароль пользователя
  12. Быстрый клик правой кнопки мыши и выбираем из меню пункт Follow TCP Steam
  13. После этого в новом окне появится текст, который в коде восстанавливает содержимое страницы. Найдем поля «password» и «user», которые соответствуют паролю и имени пользователя. В некоторых случаях оба поля будут легко читаем и даже не зашифрованы, но если мы пытаемся захватить трафик при обращении к очень известным ресурсам типа: Mail.ru, Facebook, Вконтакте и т.д., то пароль будет закодирован:
  14. HTTP/1.1 302 Found
  15. Date: Mon, 10 Nov 2014 23:52:21 GMT
  16. Server: Apache/2.2.15 (CentOS)
  17. X-Powered-By: PHP/5.3.3
  18. P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"
  19. Set-Cookie: non=non; expires=Thu, 07-Nov-2024 23:52:21 GMT; path=/
  20. Set-Cookie: password=e4b7c855be6e3d4307b8d6ba4cd4ab91; expires=Thu, 07-Nov-2024 23:52:21 GMT; path=/
  21. Set-Cookie: scifuser=networkguru; expires=Thu, 07-Nov-2024 23:52:21 GMT; path=/
  22. Location: loggedin.php
  23. Content-Length: 0
  24. Connection: close
  25. Content-Type: text/html; charset=UTF-8
  26. Таким образом, в нашем случае:
  27. Имя пользователя: networkguru
  28. Пароль:
  29. Шаг 4. Определение типа кодирования для расшифровки пароля
  30. Заходим, например, на сайт и вводим наш пароль в окно для идентификации. Выбираете протокол кодирования:
  31. Шаг 5. Расшифровка пароля пользователя
  32. На данном этапе можем воспользоваться утилитой hashcat:
  33. ~# hashcat -m 0 -a 0 /root/wireshark-hash.lf /root/rockyou.txt
  34. На выходе мы получили расшифрованным пароль: simplepassword
  35. Таким образом, с помощью Wireshark мы можем не только решать проблемы в работе приложений и сервисов, но и также попробовать себя в роли хакера, осуществляя перехват паролей, которые пользователи вводят в веб-формах. Также можно узнавать и пароли к почтовым ящикам пользователей, используя незатейливые фильтры для отображения:
  36. Протокол POP и фильтр выглядит следующим образом: pop.request.command == "USER" || pop.request.command == "PASS"
  37. Протокол IMAP и фильтр будет: imap.request contains "login"
  38. Протокол SMTP и потребуется ввод следующего фильтра: smtp.req.command == "AUTH"
  39. Недавно мы опубликовали статью о надежности паролей, а также паролях, которые используются многими пользователями. Большинство людей используют слабые пароли. Но как убедится, что ваш пароль сильный? Взлом паролей - это неотъемлемая часть цифровой криминалистики и тестирования информационной безопасности.

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

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

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

    Время, необходимое для взлома пароля пропорционально длине и сложности этого пароля. Поэтому рекомендуется использовать сложные пароли, которые трудно угадать или подобрать. Также скорость перебора зависит от криптографической функции, которая применяется для генерации хэшей пароля. Поэтому для шифрования пароля лучше использовать Bcrypt, а не MD5 или SHA.

    Вот основные способы перебора пароля, которые используются злоумышленниками:

    • Атака по словарю - для атаки используется файл, который содержит список слов. Программа проверяет каждое из слов, чтобы найти результат;
    • Атака Bruteforce - можно не использовать словарь, а перебирать все комбинации заданных символов;
    • Атака с помощью радужных таблиц - в атаке используются предварительно вычисленные хэши, поэтому она быстрее.

    Есть и другие методы взлома паролей, основанные на социальной инженерии, но сегодня мы остановимся только на атаках без участия пользователя. Чтобы защититься от таких атак нужно использовать только сложные пароли. А теперь рассмотрим лучшие инструменты для взлома паролей 2017. Этот список опубликован только для ознакомительных целей и мы ни в коем случае не призываем взламывать чужие личные данные.

    Лучшие программы для перебора паролей

    1. John the Ripper

    John the Ripper - это один из самых популярный инструментов для перебора паролей, доступных абсолютно всем. Он распространяется с открытым исходным кодом и написан на языке программирования Си. Здесь собраны различные методы перебора паролей.

    Программа способна перебирать пароли по сохраненному хэшу, и поддерживает различные алгоритмы хэширования, в том числе есть автоматическое определение алгоритма. John the Ripper относиться к набору инструментов для тестирования безопасности от Rapid7. Кроме Linux поддерживается Windows и MacOS.

    2. Aircrack-ng

    Aircrack-ng - это набор программ для взлома и перехвата паролей от wifi сетей. Программа - одна из лучших, которые используются хакерами. Здесь есть все необходимое для взлома WEP и WPA шифрования, начиная от перехвата хэша, и до получения готового пароля.

    Особенно легко поддается взлому шифрование WEP, для преодоления защиты существуют атаки PMS и PTW, с помощью которых можно взломать этот протокол в считаные минуты при достаточном потоке трафика через сеть. Поэтому всегда используйте WPA2 чтобы быть в безопасности. Тоже поддерживаются все три платформы: Linux, Windows, MacOS.

    3. RainbowCrack

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

    После завершения этапа предварительных вычислений этот инструмент работает в сотни раз быстрее чем при обычном переборе. Вам не нужно самим создавать таблицы, разработчики уже создали их для LM, NTLM, MD5 и SHA1. Все доступно бесплатно.

    Еще один важный момент - это ускорение с помощью GPU. С помощью использования видеокарты вы можете снизить время вычисление пароля еще на несколько порядков. Поддерживаются платформы Windows и Linux.

    4. THC Hydra

    В отличие от выше перечисленных программ, Hydra работает по-другому. Она не вычисляет хэши. Вместо этого, программа выполняет атаки перебора на различные сетевые протоколы. Здесь поддерживаются Astrisk, FTP, HTTP, MySQL, XMPP, Telnet, SHH и многие другие. Основная цель утилиты - атаки перебора на форму ввода пароля.

    Этот инструмент помогает исследователям безопасности узнать насколько легко можно получить доступ к удаленной системе. Для расширения функций можно добавлять модули, поддерживается Linux, Windows, Solaris, FreeBSD и MacOS.

    5. HashCat

    По заявлениям разработчиков - это самый быстрый инструмент для перебора паролей. Он распространяется в качестве свободного программного обеспечения и поддерживает такие алгоритмы: md4, md5, LM, SHA, MySQL, Cisco PIX и Unix Crypt.

    Есть версии инструмента для перебора на CPU, а также взлома на основе GPU - oclHashcat и cudaHashcat. Кроме стандартной атаки Bruteforce, поддерживаются атаки по словарю, гибридные атаки по самые, по таблицам, Prince и так далее. Из платформ поддерживаются Windows, Linux и MacOS.

    6. Crowbar

    Crowbar - это популярный инструмент для тестирования безопасности паролей. Другие программы перебора паролей используют логины и пароли пользователей, но crowbar позволяет перебирать ключи SSH.

    Этот инструмент с открытым исходным кодом создан для работы с протоколами, которые редко поддерживаются другими программами. Сейчас поддерживается VNC, OpenVPN, SSP, NLA. Программа может работать на Linux, Windows и MacOS.

    7. coWPAtty

    Это реализация утилиты для перебора пароля от WPA/WPA2 PSK на основе словаря или радужных таблиц. Использование радужных таблиц очень сильно ускоряет работу утилиты. Стандарт PSK используется сейчас очень часто. Радует только то, что перебрать пароль очень сложно, если он был изначально выбран правильным.

    И автоматически их запускает, благодаря чему и достигается обход HTTPS / HSTS. С mitmAP в этот процесс не нужно вникать, но если вы хотите сделать что-то подобное, например, с create_ap , то ознакомьтесь с «Инструкцией по использованию SSLStrip+ и dns2proxy для обхода HSTS ».

    mitmAP позволяет практически без ввода команд (и понимания механизма обхода HTTPS) использовать самые эффективные на сегодняшний момент способы понижения HTTPS до HTTP. В моих тестах пароль в открытом виде передавался для vk.com, yandex.ru, mail.ru.

    Этот скрипт сделан в двух вариантах - для работы в Kali Linux или в Raspberry PI .

    Скрипт должен работать на производных Debian, если установить зависимости; но не будет работать, например, в Arch Linux / BlackArch из-за выбранного автором способа запуска служб.

    Инструкция по использованию mitmAP

    Скачайте скрипт:

    Git clone https://github.com/xdavidhu/mitmAP.git cd mitmAP/

    Запустите его:

    Sudo python3 mitmAP.py

    Скрипт начнёт с вопроса:

    [?] Install/Update dependencies? Y/n:

    Перевод: установить / обновить зависимости?

    Если запускаете первый раз, то согласитесь, т.е. нажмите Enter. В дальнейшем можно выбирать n (нет).

    Следующий вопрос:

    [?] Please enter the name of your wireless interface (for the AP):

    Перевод: введите имя вашего беспроводного интерфейса (для ТД). Если вы не знаете имя ваших интерфейсов, то в другом окне выполните команду:

    Она покажет все сетевые интерфейсы вашей системы. А команда

    Sudo iw dev

    покажет только беспроводные сетевые интерфейсы.

    В Kali Linux беспроводной интерфейс обычно называется wlan0 (а если их два, то второй имеет имя wlan1).

    [?] Please enter the name of your internet connected interface:

    Перевод: пожалуйста, введите имя интерфейса, подключённого к Интернету.

    В Kali Linux проводной интерфейс обычно называется eth0 . Также для подключения к Интернету можно использовать вторую Wi-Fi карту.

    [?] Use SSLSTRIP 2.0? Y/n:

    Перевод: скрипт спрашивает, использовать ли SSLStrip+ . В настоящее время, когда значительная, если уже не большая, часть трафика передаётся через HTTPS (в зашифрованном виде), эта опция крайне рекомендуется.

    [?] Create new HOSTAPD config file at "/etc/hostapd/hostapd.conf" Y/n:

    Перевод: Создать ли новый конфигурационный файл hostapd.

    Если запускаете первый раз, то это нужно сделать обязательно. При последующих запусках, если вы не собираетесь менять настройки ТД, то можно выбрать n (т.е. «нет»).

    Настройка ТД:

    [?] Please enter the SSID for the AP:

    Перевод: введите имя для ТД.

    [?] Please enter the channel for the AP:

    Перевод: введите номер канала ТД.

    [?] Enable WPA2 encryption? y/N:

    Перевод: включить ли WPA2 шифрование?

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

    Последняя настройка ТД:

    [?] Set speed limit for the clients? Y/n:

    Перевод: установить ли ограничение по скорости для клиентов?

    Я выбираю «нет»,

    [?] Start WIRESHARK on wlan0? Y/n:

    Анализ данных mitmAP

    mitmAP выводит перехваченные данные, в том числе логины и пароли в своём главном окне:

    В своей папке она создаёт директорию logs с двумя файлами: mitmap-sslstrip.log и mitmap-wireshark.pcap . В первом файле содержаться собранные данные в текстовом виде. А второй предназначен для анализа в программе Wireshark.

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

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

    Анализ данных в Wireshark

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

    Приведу примеры нескольких ходовых фильтров.

    Для отображения в Wireshark всех HTTP запросов, переданных методом POST:

    Http.request.method == "POST"

    Для отображения данных переданных или полученных с определённого домена (вместо введите интересующий домен, например, vk.com):

    Http.host==""

    Для поиска строки во всём потоке передаваемых данных используется следующий фильтр (вместо <строка> введите строку, которую вы хотите искать):

    Frame contains "<строка>"

    Для отображения кукиз в Wireshark:

    Http.cookie

    Если вас интересует кукиз с определёнными именем, то используйте:

    Http.cookie contains "<имя_куки>"

    Для показа запросов в Wireshark, переданных методом GET или POST:

    Http.request.uri contains "?" or http.request.method=="POST"

    Если вы хотите найти данные обмена с FTP сервером, то в Wireshark можете использовать один из следующих фильтров:

    Tcp.port==21 || tcp.port==20

    Сниффинг данных в других программах

    Хотя mitmAP задействует интересные программы, вы всегда можете проводить анализ данных другими инструментами. Например, если вы хотите использовать Bettercap , то нужно учитывать, что:

    • ARP спуфинг не нужен
    • Не нужно проводить обнаружение клиентов
    • Не нужно включать SSLStrip.

    Т.е. команда может иметь вид:

    Sudo bettercap -X -I wlan0 -S NONE --no-discovery

    Sudo bettercap -X -I wlan0 -S NONE --no-discovery --proxy --no-sslstrip

    Завершение работы mitmAP

    Для выключения программы нужно два раза быстро нажать CTRL+C . Напомню, что при повторном запуске программа затрёт файлы с полученными данными. Т.е. вам нужно их переместить в другую папку, если вы хотите позже провести их анализ.


    Привет! Пару дней назад нашел программу Intercepter-NG . Как все уже знают - это сниффер трафика для Windows. Раньше я собирал логи с помощью подобной проги и дедика, но пару дней назад решил попробовать не заморачиваться с установкой Windows Server на дед и натравить мой сниффер на прокси. Идея казалась удачной, и даже пробовал писать одному форумчанину в скайп, но платить 100р за способ мне не очень-то хотелось, и я решил сам разобраться в этой схеме..

    Вообщем, что же нам понадобится? Я буду использовать CCProxy и Intercepter-NG .
    Теперь по настройкам:
    CCProxy
    1. Устанавливаем и крякаем (кейген).
    2. Открываем прогу и заходим в Account (см. Скрин):
    2.1 Кто допущен? - Все

    3. Жмем Да, закрываем Accouts и открываем Options
    4. В Options выставляем все как у меня на скрине:

    5. Закрываем Options кнопкой Да и запускаем сервак - жмем Start.

    Теперь насчет Intercepter-NG :
    Тут все просто - качаем прогу и запускаем. Далее в поле (см. скрин) выставляем ваш адаптер, через который вы коннектитесь к интернету.

    Вот и все. Просто и понятно, не правда ли?
    Оффтоп:
    Сначала инфа не очень шустро идет, но спустя минут 30-45 разгоняется очень сильно!

Читайте также: