Безопасности всего софта угрожает незримая уязвимость Trojan Source

Безопасности всего софта угрожает незримая уязвимость Trojan Source

Безопасности всего софта угрожает незримая уязвимость Trojan Source

Методика, разработанная в Кембриджском университете, позволяет привнести эксплуатируемую уязвимость в любую программу таким образом, что ее не заметит ни один аудитор. Атака Trojan Source, проводимая на цепочку поставок, основана на использовании слабостей Unicode; защита возможна на уровне компилятора.

Актуальность Trojan Source подтверждена для софта, написанного на C, C++, C#, Go, Java, JavaScript, Python и Rust. Университетские исследователи не исключают, что их атака будет работать также против других современных языков программирования.

Согласно описанию, проблема Unicode, идентифицируемая как CVE-2021-42574, создает условия для манипуляции кодированием символов в исходных файлах. В частности, оказалось, что порядок расположения лексем в исходном коде можно изменить с помощью управляющих символов BiDi (используются для отображения текстов с разным направлением письма). При этом компилятор и интерпретатор заметят смену логики, а аналитик — нет.

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

Схожую массовую атаку на софт можно провести, используя другую слабость Unicode — возможность подмены символов омоглифами (CVE-2021-42694). Чтобы успешно внедрить вредоносный код через зависимость, достаточно лишь слегка видоизменить имя вызываемой функции в ссылке на связанный объект.

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

Троян ToxicPanda научился отключать защиту Android и захватывать ADB

Банковский троян ToxicPanda получил серьёзный апгрейд: теперь он отслеживает 349 финансовых и криптовалютных приложений в 16 странах, поддерживает 167 удалённых команд и способен самостоятельно добраться до системной оболочки Android.

По данным Zimperium, ToxicPanda 2.0 запрашивает разрешение на создание локального VPN.

Через него зловред контролирует сетевой трафик и блокирует соединения Google Play и Google Play Services. Это может помешать проверкам приложений, обновлениям и обмену данными с Play Protect.

После установки полезной нагрузки вредонос выпрашивает доступ к специальным возможностям. Он накладывает невидимые окна поверх 349 приложений и перехватывает нажатия, а отдельный модуль собирает ПИН-коды из 140 финансовых сервисов.

 

Также ToxicPanda подделывает экран блокировки Android, крадёт пароли и графические ключи и прикрывает свои действия фальшивым системным обновлением.

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

 

Распространяется ToxicPanda 2.0 через файлы в хранилищах Amazon AWS. Индикаторы компрометации опубликованы в репозитории Zimperium.

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