[Перевод] Конференция DEFCON 27. Инструмент для взлома беспроводных сетей WiFi Kraken
Даррен Китчен: Добрый день, мы находимся в кулуарах конференции DefCon у павильона хакерской группы Hack 5, и я хочу представить одного из самых любимых мною хакеров, DarkMatter, с его новой разработкой под названием WiFi Kraken.
В последний раз, когда мы встретились, у тебя за спиной был огромный рюкзак с «Кактусом», увенчанным ананасом, и вообще это были сумасшедшие времена!
Примечание переводчика: Майк расположил на своем устройстве Cactus настоящий ананас — намек на WiFi Pineapple, хакерское устройство для перехвата беспроводной связи, см. фото с конференции BlackHat-2017.
Майк Спайсер: да, абсолютно сумасшедшие времена! Итак, этот проект проходит под хэштегом WiFi Kraken и представляет собой новое поколение технологий в области мониторинга беспроводных сетей. Когда я создавал WiFi Cactus, то приобрел много навыков и решил воплотить полученные знания в жизнь, использовав их для достижения практических целей в новом проекте. Сегодня я представляю вам Kraken!
Даррен Китчен: и что же такое этот Kraken? Для чего он нужен и в чем цель этой разработки?
Майк Спайсер: цель состоит в том, чтобы иметь возможность захватить сразу все данные, все 50 каналов беспроводной связи WiFi в диапазоне 2.4 -5 гигагерц, причем одновременно.
Даррен Китчен: почему бы вам просто не использовать один радио канал для перехвата всех данных?
Примечание переводчика: Майк Спайсер является создателем WiFi Cactus — девайса для мониторинга 50-ти каналов беспроводной связи, которыми пользуются мобильные устройства, расположенные в радиусе 100 м. WiFi Cactus впервые был представлен публике на конференции BlackHat 27 июля 2017. Ссылка на источник: https://blog.adafruit.com/2017/08/02/wificactus-when-you-need-to-know-about-hackers-wearablewednesday/
Майк Спайсер: это достаточно проблемно. Посмотри на обстановку, в которой мы сейчас находимся — в этом помещении легко может быть 200–300 человек с кучей девайсов, которые общаются на разных каналах. Если я буду прослушивать только один канал, то могу пропустить какую-то важную информацию, передаваемую в это время на другом канале. Если попытаться прослушивать все каналы, приходится тратить много времени, перепрыгивая с одного канала на другой. Cactus решает эту проблему, позволяя одновременно прослушивать все эти каналы.
Даррен Китчен: с какими проблемами пришлось столкнуться Kraken«у?
Майк Спайсер: одной из самых больших проблем стал 100 мегабитный порт Ethernet, который я присоединил к своему девайсу и пропускная способность которого меня не устраивала. Когда у вас есть 2 радио, которые делают 300 мегабит с помощью конечных радиомодулей стандарта 802.11, «пропихивание» слишком большого объема данных существенно ограничивает пропускную способность. Поэтому я хотел расширить канал приема-передачи. В следующей версии Cactus я осуществил переход со 100 мегабитного свитча к гигабитному свитчу, что увеличило пропускную способность в 10 раз.
В Kraken я использовал совершенно новый подход — я подсоединяюсь прямо к шине PCI Express.
Даррен Китчен: насчет PCIE — я вижу здесь целую кучу радиомодулей, из которых торчат эти алюминиевые уголки-антенны.
Майк Спайсер: да, это интересное инженерное решение на основе деталей, купленных на Amazon, мне пришлось помучаться с укладкой кабелей и покрасить антенны в черный цвет аэрозольным баллончиком.
Основой являются беспроводные адаптеры процессоров для Android-устройств MediaTek МT 6752, а самым интересным является использование драйвера ядра Linux. Это означает, что я могу мониторить каналы, могу инъектировать данные, делать все те интересные вещи, которые мы, хакеры, любим проделывать с беспроводными картами.
Даррен Китчен: да, я вижу здесь 11 карт для беспроводной связи B, G, A, C.
Майк Спайсер: в диапазоне 2,4–5 ГГц, 20 и 40.
Даррен Китчен: минусовые «двадцать» и плюсовые «сорок». Таким образом можно использовать различные диапазоны связи и их комбинации. Это то, о чем мы уже говорили, когда обсуждали использование одного радиосканера, совершающего прыжки по разным каналам радиосвязи. Ты слушаешь канал 1 и упускаешь все, что происходит в это время на канале 6, прослушиваешь канал 2 и упускаешь остальное, и так далее. Скажи, сколько комбинаций частот, каналов, диапазонов может одновременно обрабатывать твое устройство?
Майк Спайсер: согласно последним расчетам, количество одновременно отслеживаемых каналов равно 84. Возможно, кому-то удастся мониторить больше каналов, но используемые мной комбинации дают такое число. Однако данный проект дает возможность прослушать только 14 из них, почти столько же, сколько позволяет Cactus, но немного меньше. Я надеюсь, что смогу применить в Kraken«e часть решений из Cactus, которые позволят сделать его более эффективным.
Даррен Китчен: расскажи, что ты используешь для захвата?
Майк Спайсер: я использую программное обеспечение Kismet — это сетевой детектор, анализатор пакетов и система обнаружения вторжений для беспроводных LAN стандарта 802.11. Это потрясающий универсальный софт, позволяющий мне осуществлять практически все проекты для DefCon, суперстабильный и имеющий пользовательский веб-интерфейс. Он может сканировать беспроводные сети, сообщать, что там происходит, например, сейчас вы видите на экране монитора красную строчку, означающую, что устройства пользователей в этот момент осуществляют рукопожатие handshake. Этот софт обрабатывает данные радиосвязи в режиме реального времени. Одна из проблем, которую мне удалось решить с помощью этого софта на этом устройстве — это визуализация данных в реальном времени, то есть я вижу на мониторе, что происходит с беспроводной сетью прямо сейчас.
Даррен Китчен: и для этого тебе не нужно надевать свой рюкзак с «Кактусом». Итак, что именно находится в «черном ящике» Kraken«a?
Майк Спайсер: в основном это набор карт для беспроводной связи с USB3.0, потому что я подсоединяюсь напрямую к шине PCIE.
Даррен Китчен: то есть ты используешь настоящий компьютер с материнской платой формата ATX. Это очень похоже на используемый много лет назад альфа-релиз устройства, состоящий из 6 карт с USB2.0, где использовалась материнка ATX с 14 USB-портами и нужно было добавлять USB-адаптер для работы с PCIE-картами. При этом возникали проблемы с пропускной способностью. Что установлено в этом устройстве? Я вижу Intell.
Майк Спайсер: да, здесь используется процессор Intell i5, четвертое поколение, ничего дорогостоящего, я взял то, что у меня было. У меня с собой есть запасная материнка, так что если что-то сломается, я её просто заменю, так что я готов к устранению возможных неполадок. Я использовал для Kraken«a максимально доступную дешевую начинку из готовых деталей. Это не корпус Pelican, я использовал то, что назвал Condition 1, этот корпус прочный как камень и на 150 долларов дешевле «Пеликана». Все это устройство обошлось мне меньше 700 долларов.
Даррен Китчен: и за 700 баксов ты сделал отличный сниффер для беспроводный сетей, который может намного больше, чем одиночное радио. Как ты подошел к решению проблемы пропускной способности, отказавшись от использования Pineapple?
Майк Спайсер: сейчас у нас есть два USB3.0, и я скажу кое-что о материнской плате. Если посмотреть сюда, видно единственный корневой USB-концентратор, оборудованный шиной, так что все проходит через один 5 гигабитный USB-порт. Это очень удобно, потому что это все равно, что иметь 250 устройств, подсоединенных к одной шине, однако совсем не круто в смысле пропускной способности. Поэтому я нашел эти 7 портовые PCIE USB-карты пропускной способностью 5 гигабит каждая и объединил их в один общий канал с большой пропускной способностью — порядка 10 гигабит в секунду через PCIE-шину.
Следующее «бутылочное горлышко» — это SSD, используемый через 6-ти гиговый SATA, так что в среднем у меня получилось 500 мегабайт в секунду, или 4 гигабита.
Даррен Китчен: и еще ты говорил о том, как назвать свое выступление.
Майк Спайсер: я назвал его «Я знаю, что вы делали прошлым летом — 3 года мониторинга беспроводных сетей DefCon».
Даррен Китчен: и какой же трафик, какие данные ты мониторил на трех последних конференциях DefCon?
Майк Спайсер: самое интересное, что я обнаружил, это утечка API. Всего было 2 таких случая, одна утечка исходила от норвежской компании met.no, разработчика приложения для прогнозы погоды WeatherAPI, и касалась времени восхода и захода Солнца. Это приложение отсылало HTTP-запрос, где основными параметрами утечки были широта и долгота, так что это совершенно безвредно.
Даррен Китчен: то есть любой человек, имеющий MAC-адрес уникального телефона, мог перехватить этот запрос…
Майк Спайсер: да, и внести свои данные, чтобы изменить время восхода Солнца.
Даррен Китчен: упс!
Майк Спайсер: совершенно верно, упс…я нашел еще одно похожее приложение weather.com, которое делает то же самое, это десктопный виджет ZTE, и когда я это обнаружил, они просто взорвали мой мозг.
Даррен Китчен: ну да, у них понятный подход — зачем заморачиваться с доступностью HTTP, это просто данные о погоде, никакой приватной информации…
Майк Спайсер: да, но дело в том, что при установке, большинство таких приложений просят разрешить доступ к информации о вашем местоположении, и вы предоставляете им такую возможность, будучи увереными, что ваши персональные данные будут в безопасности. На самом же деле утечка информации через HTTP способна полностью подорвать ваше доверие к таким API.
Даррен Китчен: ты должен был увидеть здесь целую кучу уникальных устройств!
Майк Спайсер: да, очень и очень много устройств в беспроводной сети! Во время предыдущего DefCon Kismet «положил» сервер, потому что обрабатывал данные сумасшедшего количества устройств, одновременно пребывающих в сети WiFi. Число устройств, зарегистрированных в сети, достигало 40 тысяч! Я никогда не занимался подсчетом общего количества уведенных мною уникальных устройств, потому что это все равно, что смотреть в глубину бесконечной кроличьей норы.
Даррен Китчен: ну да, ты же все-таки на DefCon! Тут запущены MDK3, MDK4, всплывает куча MAC-адресов и т.д.
Майк Спайсер: да, когда люди начинают одновременно эксплуатировать свои микроконтроллеры ESP32, тут начинается настоящий ад.
Даррен Китчен: есть ли какая-то информация о Kraken«e на GitHub или в твоем блоге?
Майк Спайсер: да, я выложил код, потому что когда я выполнял некоторый анализ полученных данных, Wireshark с ним не справлялся, потому что когда у вас есть файл размером 2,3,5 Gb и вы хотите взглянуть на HTTP-запрос, то вынуждены ждать по 30 минут. Я одинокий парень, который просто занимается анализом трафика, и у меня нет команды, которая делала бы это за меня, так что я должен выполнять свою работу максимально эффективно. Я рассматривал несколько инструментов, разговаривал с коммерческими разработчиками, однако их продукты не соответствовали моим потребностям. Правда, было одно исключение — программа Network miner, разработанная группой NETRESEC. Три года назад разработчик дал мне бесплатную копию этого кода, я отослал ему свои замечания, они обновили софт и теперь программа работает идеально, обеспечивая обработку не всех сетевых пакетов, а только тех, что передаются по беспроводной связи.
Она автоматически разделяет трафик на части и показывает DNS, HTTP, файлы любого типа, которые можно реассемблировать. Это инструмент для компьютерной криминалистики, способный копать вглубь приложений.
Эта программа отлично работает с файлами большого размера, но я все равно только запускал в ней кастомные наборы запросов, а мне еще нужно было узнать все коды SSID, используемые в беспроводной сети DefCon. Поэтому я написал собственный инструмент под названием Pcapinator, который представлю в пятницу во время моего выступления. Я также разместил его на своей страничке по адресу github.com/mspicer, так что можете проверить его работоспособность.
Даррен Китчен: совместное обсуждение и тестирование наших продуктов — это великое дело, одно из ключевых свойств нашего сообщества.
Майк Спайсер: да, я люблю, когда люди говорят мне: «А что ты думаешь о том или об этом?», а я отвечаю: «Нет, ребята, я вообще не думал ни о чем таком, это чертовски хорошая идея!». Так же как и в отношении «Кракена» — моя идея была просто в том, чтобы воткнуть сюда все эти антенны, включить систему и поставить её куда-нибудь в уголок на 6 часов, пока не кончится заряд батареи, и ловить весь местный WiFi-трафик.
Даррен Китчен: что ж, я очень рад встрече с тобой, а вы, ребята, приходите на Hack 5 посмотреть на то, что сделал Майк для всех нас!
Немного рекламы :)
Спасибо, что остаётесь с нами. Вам нравятся наши статьи? Хотите видеть больше интересных материалов? Поддержите нас, оформив заказ или порекомендовав знакомым, облачные VPS для разработчиков от $4.99, уникальный аналог entry-level серверов, который был придуман нами для Вас: Вся правда о VPS (KVM) E5–2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps от $19 или как правильно делить сервер? (доступны варианты с RAID1 и RAID10, до 24 ядер и до 40GB DDR4).
Dell R730xd в 2 раза дешевле в дата-центре Equinix Tier IV в Амстердаме? Только у нас 2 х Intel TetraDeca-Core Xeon 2x E5–2697v3 2.6GHz 14C 64GB DDR4 4×960GB SSD 1Gbps 100 ТВ от $199 в Нидерландах! Dell R420 — 2x E5–2430 2.2Ghz 6C 128GB DDR3 2×960GB SSD 1Gbps 100TB — от $99! Читайте о том Как построить инфраструктуру корп. класса c применением серверов Dell R730xd Е5–2650 v4 стоимостью 9000 евро за копейки?