Как взломать вашу переписку

Mitmproxy

Консольная утилита, которая в интерактивном режиме позволяет исследовать и модифицировать HTTP-трафик. Благодаря таким навыкам утилита используется не только пентестерами/хакерами, но и обычными разработчиками, применяющими ее, например, для отладки веб-приложений. С ее помощью можно получать подробную информацию о том, какие запросы делает приложение и какие ответы оно получает. Также mitmproxy может помочь в изучении особенностей функционирования некоторых REST API, в особенности плохо документированных.

Установка предельно проста:

$ sudo aptitude install mitmproxy

или

 $ pip install mitmproxy

или же

 $ easy_install mitmproxy

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

Mitmproxy

Dsniff

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

• arpspoof — понятно без комментариев, для чего нужен;
• dnsspoof — работает подобно arpspoof и позволяет подделывать DNS-ответы для DNS-сервера локальной сети;
• dsniff — представляет собой перехватчик паролей (password sniffer), который распознает несколько различных протоколов, включая Telnet, FTP, SMTP, POP (Post Office Protocol), IMAP (Internet Message Access Protocol), HTTP, CVS, Citrix, SMB (Server Message Block), Oracle и многие другие;
• filesnarf — позволяет собрать файл из захваченного tcpdump’ом NFS-трафика;
• macof — заполнит локальную сеть случайными воображаемыми MAC-адресами в надежде, что коммутатор перестанет срабатывать, как полагается, и начнет действовать подобно хабу, позволяя инструменту dsniff действовать более успешно в сетевом окружении коммутатора;
• sshmitm — утилита для перехвата SSH-трафика, правда, умеет работать только с первой версией протокола.
И это еще не все. Если интересно, про остальные можешь почитать на официальном сайте. К большому сожалению, проект уже давно не обновляется, но большинство техник и инструментов все равно остаются актуальными.

Intercepter-NG

ссылка на сайт
Было бы странно, если бы этот легендарный инструмент не вошел в наш обзор.
Даже если ты никогда его не юзал, то наверняка про него слышал (и просто обязан познакомиться с ним поближе) — он довольно часто встречается на страницах журнала. Полностью описывать его функционал не буду — во-первых, нас интересует именно MITM, во-вторых, такое описание займет всю статью. Инструмент как нельзя лучше подходит для нашей задачи.

Во-первых, он реализует множество техник для того, чтобы «устроиться посередине». Во-вторых, обладает графическим интерфейсом, правда под винду, пользователям nix-систем придется довольствоваться консольной версией (но, как говорит автор, последнюю версию можно запустить под Wine и наслаждаться тем же GUI).

Ну а теперь поподробней про MITM. Вариантов тут действительно хватает. Есть классический ARP poison. Затем спуфинг (поддерживаются протоколы DNS/NBNS/LLMNR). DNS over ICMP Redirect, пришедшая на смену простому ICMP Redirect’у. DHCP MITM, SSL MITM + SSLStrip, WPAD, HTTP Injection, а также добавленный недавно SSH-MITM. К сожалению, из-за того что используемый способ маршрутизации трафика под Windows недееспособен в линуксе, сложные MITM’ы в последнем (SSLStrip, SSL MITM, SMB hijack, LDAP relay, HTTP injection) не работают. Но все остальные — прекрасно. Про то, как использовать эти техники, лучше почитать в официальной вики проекта.

Example

An illustration of the man-in-the-middle attack

Suppose Alice wishes to communicate with Bob. Meanwhile, wishes to intercept the conversation to eavesdrop and optionally to deliver a false message to Bob.

First, Alice asks Bob for his public key. If Bob sends his public key to Alice, but Mallory is able to intercept it, an MITM attack can begin. Mallory sends Alice a forged message that appears to originate from Bob, but instead includes Mallory’s public key.

Alice, believing this public key to be Bob’s, encrypts her message with Mallory’s key and sends the enciphered message back to Bob. Mallory again intercepts, deciphers the message using her private key, possibly alters it if she wants, and re-enciphers it using the public key she intercepted from Bob when he originally tried to send it to Alice. When Bob receives the newly enciphered message, he believes it came from Alice.

  1. Alice sends a message to Bob, which is intercepted by Mallory:
    Alice «Hi Bob, it’s Alice. Give me your key.» →     Mallory     Bob
  2. Mallory relays this message to Bob; Bob cannot tell it is not really from Alice:
    Alice     Mallory «Hi Bob, it’s Alice. Give me your key.» →     Bob
  3. Bob responds with his encryption key:
    Alice     Mallory     ← Bob
  4. Mallory replaces Bob’s key with her own, and relays this to Alice, claiming that it is Bob’s key:
    Alice     ← Mallory     Bob
  5. Alice encrypts a message with what she believes to be Bob’s key, thinking that only Bob can read it:
    Alice «Meet me at the bus stop!» →     Mallory     Bob
  6. However, because it was actually encrypted with Mallory’s key, Mallory can decrypt it, read it, modify it (if desired), re-encrypt with Bob’s key, and forward it to Bob:
    Alice     Mallory «Meet me at the van down by the river!» →     Bob
  7. Bob thinks that this message is a secure communication from Alice.

This example shows the need for Alice and Bob to have some way to ensure that they are truly each using each other’s public keys, rather than the public key of an attacker. Otherwise, such attacks are generally possible, in principle, against any message sent using public-key technology. A variety of techniques can help defend against MITM attacks.

Последние изменения

24.07.2020

Юридический адрес изменен с 650521, Кемеровская Область — Кузбасс область, Кемеровский район, село Андреевка, сад СНТ Горняк, земли совхоза «андреевский» на 650521, Кемеровская Область — Кузбасс область, Кемеровский район, село Андреевка, Полевая улица, земли совхоза «андреевский»

20.04.2020

Завершено рассмотрение судебного дела
№А27-7715/2020 от 07.04.2020 в
первой
инстанции.
Организация
в роли ответчика, сумма исковых требований 271 629 531 руб.

07.04.2020

Новое судебное дело
№А27-7715/2020 от 07.04.2020 в роли ответчика, сумма исковых требований 271 629 531 руб.

13.03.2020

Завершено рассмотрение судебного дела
№А27-4620/2020 от 27.02.2020 в
первой
инстанции.
Организация
в роли ответчика, сумма исковых требований 417 274 652 руб.

27.02.2020

Новое судебное дело
№А27-4620/2020 от 27.02.2020 в роли ответчика, сумма исковых требований 417 274 652 руб.

10.02.2020

Завершено рассмотрение судебного дела
№А27-1679/2020 от 29.01.2020 в
первой
инстанции.
Организация
в роли ответчика, сумма исковых требований 871 442 256 руб.

29.01.2020

Новое судебное дело
№А27-1679/2020 от 29.01.2020 в роли ответчика, сумма исковых требований 871 442 256 руб.

26.01.2020

Юридический адрес изменен с 650521, Кемеровская область, Кемеровский район, село Андреевка, сад СНТ Горняк, земли совхоза «андреевский» на 650521, Кемеровская Область — Кузбасс область, Кемеровский район, село Андреевка, сад СНТ Горняк, земли совхоза «андреевский»

Проблемы центров сертификации

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

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

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

Даже когда существовал всего один центр сертификации, VeriSign, бытовала проблема — люди, которые должны были предотвращать атаки посредника, продавали услуги перехвата.

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

Принцип атаки

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

Предположим, объект A планирует передать объекту B некую информацию. Объект C обладает знаниями о структуре и свойствах используемого метода передачи данных, а также о факте планируемой передачи собственно информации, которую С планирует перехватить. Для совершения атаки С «представляется» объекту А как В, а объекту В — как А. Объект А, ошибочно полагая, что он направляет информацию В, посылает её объекту С. Объект С, получив информацию и совершив с ней некоторые действия (например, скопировав или модифицировав в своих целях), пересылает данные собственно получателю — В; объект В, в свою очередь, считает, что информация была получена им напрямую от А.

Известные реализации MITM-атак

Известная некриптографическая атака «человек посередине» была совершена беспроводным сетевым маршрутизатором Belkin в 2003 году. Периодически новая модель маршрутизатора выбирала случайное HTTP-соединение и перенаправляла его на рекламную страницу своего производителя. Столь бесцеремонное поведение устройства, разумеется, вызвало бурю негодования среди пользователей, после чего эта «функция» была удалена из более поздних версий прошивки маршрутизатора.

В 2011 году нарушение безопасности голландского центра сертификации DigiNotar (англ.) привело к мошеннической выдаче сертификатов. Впоследствии мошеннические сертификаты были использованы для совершения атак «человек посередине».

В 2013 году стало известно, что браузер Xpress Browser (англ.) от Nokia расшифровывает HTTPS-трафик на прокси-серверах Nokia, предоставляя компании четкий текстовый доступ к зашифрованному трафику браузера своих клиентов. На что Nokia заявила, что контент не был сохранен на постоянной основе и что у компании были организационные и технические меры для предотвращения доступа к частной информации.

В 2017 году  (англ.) отозвал свои приложения для мобильных телефонов, опасаясь уязвимости «человек посередине».

Другие значимые реализации MITM-атак:

  • wsniff — инструмент для проведения атак на 802.11 HTTP/HTTPS-протокол
  • Fiddler2 (англ.) — инструмент диагностики HTTP(S)
  • АНБ замаскированное под Google (компания)

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

Для перенаправления потоков трафика могут использоваться ошибки в настройках межсетевой маршрутизации BGP.

Обнаружение MITM-атаки

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

Для обнаружения атаки «человек посередине» также необходимо проанализировать сетевой трафик

К примеру, для детектирования атаки по SSL следует обратить внимание на следующие параметры:

  • IP-адрес сервера
  • DNS-сервер
  • X.509-сертификат сервера

    • Подписан ли сертификат самостоятельно?
    • Подписан ли сертификат центром сертификации?
    • Был ли сертификат аннулирован?
    • Менялся ли сертификат недавно?
    • Получали ли другие клиенты в интернете такой же сертификат?

ProxyFuzz

Непосредственно к проведению MITM-атак ProzyFuzz не имеет никакого отношения. Как можно догадаться из названия, тулза предназначена для фаззинга. Это маленький недетерминированный сетевой фаззер, реализованный на питоне, который произвольно меняет содержимое пакетов сетевого трафика. Поддерживает протоколы TCP и UDP. Можно настроить, чтобы производился фаззинг только одной стороны. Пригодится, когда нужно быстренько проверить какое-нибудь сетевое приложение (или протокол) и разработать PoC. Пример использования:

 python proxyfuzz -l <localport> -r <remotehost> -p <remoteport> 

Список опций включает в себя:

  • w — задает число запросов, отправленных перед началом фаззинга;
  • c — фаззить только клиента (иначе обе стороны);
  • s — фаззить только сервер (иначе обе стороны);
  • u — UDP-протокол (в противном случае используется TCP).

Что такое атака «человек посередине»

Популярным методом является атака «человек посередине» . Он также известен как атака ведерной бригады или иногда атака Януса в криптографии. Как следует из названия, злоумышленник держит себя между двумя сторонами, заставляя их поверить, что они разговаривают напрямую друг с другом через частную связь, когда фактически весь разговор контролируется злоумышленником.

Атака «человек посередине» может быть успешной только тогда, когда злоумышленник формирует взаимную аутентификацию между двумя сторонами. Большинство криптографических протоколов всегда предоставляют некоторую форму аутентификации конечной точки, в частности, чтобы блокировать атаки MITM на пользователей. Протокол Secure Sockets Layer (SSL) всегда используется для аутентификации одной или обеих сторон с использованием взаимно доверенного центра сертификации.

Как это работает

Допустим, в этой истории есть три персонажа: Майк, Роб и Алекс. Майк хочет общаться с Робом. Тем временем Алекс (нападающий) мешает разговору подслушивать и вести ложный разговор с Робом, от имени Майка. Во-первых, Майк спрашивает Роба о его открытом ключе. Если Роб дает свой ключ Майку, Алекс перехватывает, и именно так начинается «атака человека посередине». Затем Алекс отправляет Майку поддельное сообщение, которое, как утверждается, принадлежит Робу, но содержит открытый ключ Алекса. Майк легко верит, что полученный ключ действительно принадлежит Робу, когда это неправда. Майк невинно шифрует свое сообщение ключом Алекса и отправляет преобразованное сообщение обратно Робу.

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

Защита от атак «человек посередине» и инструменты

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

Другой способ предотвратить такие атаки MITM — никогда не подключаться к открытым WiFi-маршрутизаторам напрямую. Если вы хотите, вы можете использовать плагин для браузера, такой как HTTPS Everywhere или ForceTLS. Эти плагины помогут вам установить безопасное соединение, когда опция доступна.

Notable instances

A notable non-cryptographic MITM attack was perpetrated by a Belkin wireless network router in 2003. Periodically, it would take over an HTTP connection being routed through it: this would fail to pass the traffic on to destination, but instead itself responded as the intended server. The reply it sent, in place of the web page the user had requested, was an advertisement for another Belkin product. After an outcry from technically literate users, this ‘feature’ was removed from later versions of the router’s firmware.

In 2011, a security breach of the Dutch certificate authority DigiNotar resulted in the fraudulent issuing of certificates. Subsequently, the fraudulent certificates were used to perform MITM attacks.

In 2013, the Nokia’s Xpress Browser was revealed to be decrypting HTTPS traffic on Nokia’s proxy servers, giving the company clear text access to its customers’ encrypted browser traffic. Nokia responded by saying that the content was not stored permanently, and that the company had organizational and technical measures to prevent access to private information.

In 2017, withdrew its mobile phone apps following concern about MITM vulnerabilities.

Other notable real-life implementations include the following:

  • DSniff – the first public implementation of MITM attacks against SSL and SSH
  • Fiddler2 HTTP(S) diagnostic tool
  • NSA impersonation of
  • Qaznet Trust Certificate
  • Superfish malware
  • Forcepoint Content Gateway – used to perform inspection of SSL traffic at the proxy
  • Comcast uses MITM attacks to inject JavaScript code to 3rd party web pages, showing their own ads and messages on top of the pages
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *