Баг в функции JavaScript подвергает адреса Bitcoin риску брутфорса

Баг в функции JavaScript подвергает адреса Bitcoin риску брутфорса

Баг в функции JavaScript подвергает адреса Bitcoin риску брутфорса

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

Уязвимость существует из-за функции JavaScript SecureRandom(), которая используется для генерации случайного Bitcoin-адреса и его закрытого ключа (некого аналога пароля). Вся проблема заключается в том, что эта функция не генерирует по-настоящему случайные данные.

«Функция будет генерировать ключи, которые, несмотря на их длину, имеют менее 48 бит энтропии. Таким образом, на выходе будет не более тех же 48 бит. Затем SecureRandom() запускает номер, который он получает через устаревший алгоритм RC4, что еще снижает количество бит энтропии. Следовательно, ваш ключ становится более предсказуем», — уточнил обнаруживший брешь эксперт.

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

Специалисты отмечают, что уязвимы все адреса Bitcoin, созданные с использованием BitAddress до 2013 года, а также Bitcoinjs до 2014 года. Wallet-приложения, использующие старые версии jsbn.js, по-прежнему генерируют слабые секретные ключи, которые легко сбрутфорсить.

Linux-руткиты поумнели: теперь они прячутся в eBPF и io_uring

Linux-руткиты долго оставались где-то в тени по сравнению с Windows-аналогами, но сейчас ситуация меняется. Причина понятная: Linux всё плотнее сидит в облаках, контейнерах, IoT и корпоративной инфраструктуре, а значит, и интерес злоумышленников к нему растёт. Исследователи из Elastic обратили внимание на новую тенденцию: современные Linux-руткиты всё чаще прячутся не в «экзотике», а во вполне легитимных механизмах ядра — eBPF и io_uring.

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

Защитные меры в Linux-средах стали жёстче: Secure Boot, подпись модулей, режимы lockdown, стандартные средства аудита. В результате старые методы либо быстро выявляются, либо вообще не работают. И вот тут злоумышленники начали использовать то, что уже встроено в систему и изначально создавалось совсем не для атак.

Один из главных инструментов в этой новой волне — eBPF. Изначально он нужен для фильтрации пакетов, трассировки и других полезных низкоуровневых задач. Но проблема в том, что eBPF позволяет выполнять код внутри ядра, не подгружая классический модуль. Для атакующего это почти подарок: можно цепляться к системным вызовам или событиям Linux Security Module и делать это так, что обычные сканеры вроде rkhunter или chkrootkit просто ничего не заметят. Формально модуль ядра не загружался, и искать вроде бы нечего.

 

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

Вторая интересная история — io_uring. Интерфейс io_uring появился в Linux как быстрый способ асинхронного ввода-вывода: он позволяет пачками отправлять операции в ядро через кольцевые буферы общей памяти. Для производительности это отлично. Для атакующего — тоже. Вместо того чтобы вызывать множество отдельных системных вызовов, процесс может передать целую очередь операций сразу. А значит, системам мониторинга, которые привыкли ловить активность по отдельным системным вызовам, становится заметно сложнее увидеть полную картину.

Именно поэтому io_uring всё чаще рассматривают как удобный механизм ухода от EDR и других средств наблюдения. Если упрощать, телеметрии становится меньше, шума тоже, а вредоносная активность растворяется в «нормальной» работе системы. В материале Elastic упоминается, например, экспериментальный руткит RingReaper, который показывает, как через io_uring можно скрытно подменять типовые операции вроде read, write и connect.

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