AI found a way to crash bitcoin nodes on Windows and Macs. It's now public
Решение разработчиков Bitcoin Core прекратить сокрытие ошибок, которые может обнаружить искусственный интеллект, уже привело к тому, что были обнародованы три такие ошибки, в том числе одна, которая позволяет злоумышленнику вызывать сбои в работе узлов, работающих на компьютерах с Windows и Mac.
Эта уязвимость, изначально обнаруженная в результате сканирования с помощью ИИ 23 октября, позволяла любому компьютеру, подключенному к узлу Bitcoin, работающему под управлением Windows, macOS или BSD, перегружать этот узел данными, пока он не исчерпывал объем доступной памяти и не выходил из строя. Разработчики подтвердили наличие этой проблемы в день ее обнаружения, выпустили исправления 27 октября и опубликовали подробности в среду, вместе с информацией о двух других ошибках, обнаруженных в ходе сканирования.
Узел – это программное обеспечение, которое проверяет и передает все транзакции Bitcoin, а Bitcoin Core – это программа, на которой работает большинство узлов. До прошлой недели, разработчики Core скрывали уязвимости средней степени серьезности, такие как эта, в течение года, чтобы предоставить операторам время на обновление программного обеспечения, прежде чем злоумышленники узнают, где искать эти уязвимости.
Это изменилось 22 октября для ошибок, которые, по мнению проекта, "легко обнаруживаются", поскольку большие языковые модели сделали их обнаружение относительно простым. Теперь исправления для этих ошибок выпускаются как можно быстрее для всех поддерживаемых версий, с публикацией соответствующего уведомления, как сообщалось в CoinDesk.
Все три ошибки были обнаружены в результате автоматического сканирования, в котором использовалась большая языковая модель для анализа кода Bitcoin Core. После этого каждое обнаружение проверялось человеком, прежде чем оно дошло до команды безопасности проекта.
Вторая ошибка показывает, почему Core изменила свои правила. Результаты сканирования были сообщены проекту 15 сентября, и через шесть дней другой разработчик независимо обнаружил ту же самую уязвимость. Она позволяла подключенному узлу заявлять, что работает с устаревшей версией протокола, а затем "зависать". Сообщения накапливались в памяти уязвимого узла, достигая 2 МБ в час для каждого входящего соединения и 5 МБ в час для каждого исходящего, как указано в уведомлении.
Третья ошибка, признанная как имеющая низкую степень серьезности, была обнаружена трижды: в ходе сканирования и в двух отдельных отчетах разработчиков, в августе и 23 октября. Майнер мог создавать блоки, которые приводили к переполнению файлов, которые узел хранит для перестройки (процесса, когда сеть заменяет несколько последних блоков на конкурирующий набор).
На 64-битных системах для осуществления атаки потребуется примерно месяц работы всей сети в режиме производства блоков. На системах Windows и на 32-битных системах узел может полностью выйти из строя, и, как говорится в уведомлении, "перезагрузка не поможет". Узлы, работающие на 32-битных системах или использующие старые диски с файловой системой FAT32 для хранения блоков, остаются уязвимыми даже после устранения уязвимости.
В то же время, в примечаниях к выпуску указано, что еще три ошибки средней и высокой степени серьезности, исправленные в версии 30.0, будут раскрыты через две недели.