В критически важных приложениях обнаружен опасный код

В критически важных приложениях обнаружен опасный код

Оказывается, не только разработчики Android-приложений грешат неграмотным внедрением SSL, но подобные ошибки присутствуют в программах ведущих софтверных компаний, включая Amazon и Paypal.

Неграмотная процедура проверки SSL-сертификатов обнаружена в критически важных приложениях, SDK, Java middleware, банковском софте и т.д., что открывает перед злоумышленниками возможности для MiTM-атаки — ничего хуже этого и представить невозможно, считают исследователи из Стэнфордского и Техасского университетов, которые опубликовали научную работу «Самый опасный код в мире: проверка SSL-сертификатов вне браузера». Достоин упоминания тот факт, что группа американских учёных работала под руководством кандидата наук Техасского университета Виталия Шматикова, пишет xakep.ru.

Итак, исследователи обнаружили некорректную процедуру SSL-валидации в ряде очень серьёзных программ:

Java-библиотека Amazon EC2 и все облачные клиенты на её основе;SDK Amazon и SDK Paypal, которые отвечают за передачу платёжных данных от торговой площадки к платёжному гейту;движки интернет-магазинов osCommerce, ZenCart, Ubercart и PrestaShop;код AdMob в мобильных веб-сайтах;мобильное приложение банка Chase и некоторые другие приложения и библиотеки под Android;Java middleware для веб-сервисов, включая Apache Axis, Axis 2, Codehaus XFire и библиотеку Pusher для Android, а также все приложения, которые используют перечисленное middleware.

В качестве примера безалаберности можно привести фрагмент исходного кода банковского приложения Chase.

public final void checkServerTrusted(X509Certificate[]
paramArrayOfX509Certificate, String paramString)
{
if ((paramArrayOfX509Certificate != null) && (
paramArrayOfX509Certificate.length == 1))
paramArrayOfX509Certificate[0].checkValidity();
while (true)
{
return;
this.a.checkServerTrusted(
paramArrayOfX509Certificate, paramString);
}
}

Любое SSL-соединение, установленное каждой из перечисленных программ, не является безопасным. Ключевая проблема лежит не столько в низкой квалификации разработчиков, сколько в плохом дизайне программных интерфейсов для реализации SSL (таких как JSSE, OpenSSL и GnuTLS) и библиотек для передачи данных (таких как cURL). Эти API и библиотеки сложны для обычного программиста, предлагая ему слишком путаный набор настроек и опций.

Например, в cURL есть несколько параметров для CURL_SSL_VERIFYHOST. Параметр VERIFYHOST=0 интуитивно понятен: он отключает проверку сертификата. Параметр VERIFYHOST=2 выполняет корректную проверку и сверяет имя хоста, указанное в сертификате, с именем хоста, который предъявляет сертификат. А вот параметрVERIFYHOST=1 (VERIFYHOST=TRUE) делает нечто очень странное: он проверяет, что сертификат принадлежит какому-то хосту, а затем принимает его от любого хоста. Понятно, что многие программисты не ожидали от cURL такой «подставы». Кстати, разработчик cURL Дэниел Стенберг вчера уже высказался по этому поводу. Ему после 10+ лет работы над cURL очень обидно слышать подобные обвинения, тем более что за все эти годы никто ни разу не предлагал изменить параметры для CURL_SSL_VERIFYHOST.

По результатам анализа ситуации с реализацией SSL в различных приложениях Шматиков с коллегами выработали ряд рекомендаций, в том числе они рекомендуют использовать специальное программное обеспечение для проверки корректности программного кода и пентестинга: например, программа TLSPretense. Есть также чёткая инструкция, как реализовать проверку SSL-сертификатов с помощью OpenSSL и репозиторий примеров правильного кода SSL Conservatory.

Миллионы пользователей браузеров стали жертвами расширений-шпионов

Исследователи из Koi Security рассказали о масштабной кампании с использованием расширений для браузеров, за которой, по их оценке, стоит китайская кибергруппа. Новая операция получила название DarkSpectre и затронула около 2,2 млн пользователей Chrome, Edge и Firefox.

Если учитывать более ранние кампании той же группы — ShadyPanda и GhostPoster, — общее число пострадавших превышает 8,8 млн человек за последние семь лет.

Ранее Koi уже связывала DarkSpectre с ShadyPanda — серией расширений, маскировавшихся под полезные инструменты и занимавшихся кражей данных, подменой поисковых запросов и мошенничеством. Тогда речь шла о 5,6 млн пользователей, включая более 100 расширений, часть из которых «просыпалась» только спустя годы после публикации.

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

Вторая кампания, GhostPoster, была в основном нацелена на пользователей Firefox. Под видом утилит и VPN-расширений они внедряли JavaScript-код для подмены партнёрских ссылок, трекинга и рекламных махинаций. Среди находок есть даже расширение «Google Translate» для Opera, набравшее практически миллион установок.

Самая свежая и, пожалуй, самая тревожная часть истории — так называемый Zoom Stealer. Это набор из 18 расширений для Chrome, Edge и Firefox, замаскированных под инструменты для Zoom, Google Meet и GoToWebinar. Их задача — собирать корпоративную информацию: ссылки на встречи (включая пароли), ID конференций, темы, описания, расписание и статус регистрации. Данные передаются в реальном времени через WebSocket-соединения.

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

По словам исследователей, эти дополнения запрашивают доступ сразу к 28 платформам видеосвязи, включая Zoom, Microsoft Teams, Cisco WebEx и Google Meet — даже если расширению такой доступ вообще не нужен.

 

«Это не потребительское мошенничество, а инфраструктура корпоративного шпионажа, — подчёркивают специалисты Koi Security. — Пользователи действительно получали обещанную функциональность, доверяли расширениям и ставили им высокие оценки. А наблюдение шло тихо и незаметно».

Собранные данные могут использоваться для шпионажа, сложных схем социальной инженерии и масштабных операций по подмене личности. Связь кампаний с Китаем исследователи подтверждают сразу несколькими признаками: использованием серверов Alibaba Cloud, регистрациями в китайских провинциях, фрагментами кода с китайскими комментариями и мошенническими схемами, ориентированными на JD.com и Taobao.

В Koi Security считают, что это далеко не конец истории. По их словам, у DarkSpectre могут уже быть новые расширения, которые пока выглядят полностью легитимными — они «копят доверие» и просто ждут своего часа.

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