Уязвимость в Dnsmasq позволяет удалённо выполнить код атакующего

Уязвимость в Dnsmasq позволяет удалённо выполнить код атакующего

Уязвимость в Dnsmasq позволяет удалённо выполнить код атакующего

Компания Google опубликовала результаты аудита кодовой базы пакета Dnsmasq, объединяющего кэширующий DNS-резолвер и сервер DHCP. В итоге было выявлено 7 уязвимостей, из которых 3 могут привести к выполнению кода атакующего при обработке специально оформленных запросов DNS и DHCP.

Для всех уязвимостей подготовлены работающие прототипы эксплоитов. Разработчикам Dnsmasq переданы патчи для устранения уязвимостей, а также реализация уровня sandbox-изоляции на базе seccomp-bpf, которая позволит создать дополнительный бастион защиты, пишет opennet.ru.

Выявленные уязвимости:

  • CVE-2017-14491 - переполнение кучи в коде формирования DNS-ответов. В версиях Dnsmasq 2.76 и 2.77 возможно лишь двухбайтовое переполнение, но в выпусках до 2.76 такого ограничения нет. Добившись обработки в dnsmasq специально оформленных DNS-пакетов (например, если клиент попытается выполнить резолвинг домена, размещённом на подконтрольном злоумышленнику DNS-сервере), атакующий может добиться выполнения своего кода на сервере. Компания Red Hat присвоила уязвимости наивысший критический уровень опасности. Наиболее вероятными мишенями для совершения атаки могут стать внутренние и публичные сети с резолвером на основе Dnsmasq, например, сети Wi-Fi с точками доступа на базе дистрибутивов LEDE и OpenWRT, в которых используется Dnsmasq. При этом вектор атак не ограничивается локальными сетями, по данным сервиса Shodan в сети присутствует более миллиона хостов, предоставляющих доступ к резолверу на базе Dnsmasq.
  • CVE-2017-14492 - переполнение буфера в коде обработки анонсов маршрутизатора IPv6 (RA, Router Advertisement). Атакующий в локальном сегменте сети может отправить специально оформленный анонс RA к dnsmasq и инициировать выполнение своего кода. Уязвимость проявляется только в конфигурациях с DHCP, в которых активна одна из следующих опций: enable-ra, ra-only, slaac, ra-names, ra-advrouter или ra-stateless;
  • CVE-2017-14493 - переполнение стека в коде DHCPv6, которое может привести к выполнению кода через отправку в локальной сети специально оформленного запроса DHCPv6;
  • CVE-2017-14494 - утечка информации из памяти процесса dnsmasq. Атакующий в локальной сети может отправить специальной оформленный пакет DHCPv6, в пакете с ответом на который будет содержаться часть памяти процесса, которая потенциально может содержать конфиденциальные данные;
  • CVE-2017-14495 - утечка памяти в коде EDNS0. Атакущий может через отправку серии DNS-запросов вызвать исчерпание доступной процессу памяти. Проблема проявляется только при использовании опций add-mac, add-cpe-id или add-subnet;
  • CVE-2017-14496 - целочисленное переполнение в коде EDNS0, приводящее к чтению данных из областей вне границ буфера. Через отправку специально оформленных запросов DNS можно вызвать крах процесса dnsmasq. Проблема проявляется только при использовании опций add-mac, add-cpe-id или add-subnet.

Проблемы устранены в выпуске Dnsmasq 2.78. Обновления уже выпущены для RHEL, Ubuntu, Arch Linux, Fedora и FreeBSD. Исправления также вошли в состав октябрьского обновления платформы Android. Обновления пока недоступны для Debian, SUSE, openSUSE, OpenWRT и LEDE.

Новая атака в Telegram использует официальную аутентификацию мессенджера

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

Как выяснили аналитики компании CYFIRMA, атакующие регистрируют собственные API-ключи Telegram (api_id и api_hash) и с их помощью инициируют реальные попытки входа через инфраструктуру самого мессенджера. Дальше всё зависит от того, как именно жертву заманят на фишинговую страницу.

Всего специалисты наткнулись на два подобных сценария. В первом случае пользователю показывают QR-код в стиле Telegram, якобы для входа в аккаунт. После сканирования кода в мобильном приложении запускается легитимная сессия, но уже на стороне злоумышленника.

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

 

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

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

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

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

RSS: Новости на портале Anti-Malware.ru