Уязвимости в Rust-библиотеках zip-rs и librsvg
В библиотеке zip-rs, написанной на языке Rust и насчитывающей около 10 млн загрузок в неделю, выявлена уязвимость (CVE-2026-115905), позволяющая создавать архивы, которые выглядят безобидными, но при распаковке из них извлекаются другие, изначально не показанные в списке, файлы. Файлы могут быть размещены в архиве вне структуры Central Directory, из-за чего при просмотре списка файлов показывается одно содержимое, но при распаковке через API ZipStreamReader извлекаются другие файлы. Проблеме присвоен уровень опасности 10 из 10. Уязвимость исправлена в версии zip-rs 9.0.5.
Полный текст:
https://opennet.ru/66555/
https://opennet.me/66555/
В библиотеке zip-rs, написанной на языке Rust и насчитывающей около 10 млн загрузок в неделю, выявлена уязвимость (CVE-2026-115905), позволяющая создавать архивы, которые выглядят безобидными, но при распаковке из них извлекаются другие, изначально не показанные в списке, файлы. Файлы могут быть размещены в архиве вне структуры Central Directory, из-за чего при просмотре списка файлов показывается одно содержимое, но при распаковке через API ZipStreamReader извлекаются другие файлы. Проблеме присвоен уровень опасности 10 из 10. Уязвимость исправлена в версии zip-rs 9.0.5.
Полный текст:
https://opennet.ru/66555/
https://opennet.me/66555/
🔥19❤5👍5
Основатель CentOS и Rocky Linux представил Linux-совместимое ядро Ginux, написанное на Rust
Грегори Курцер (Gregory Kurtzer), основатель дистрибутивов CentOS и Rocky Linux, представил проект Ginux, развивающий ядро операционной системы на языке Rust, нацеленное на достижение совместимости с ядром Linux. Опубликованный исследовательский прототип уже способен загрузить системное окружение дистрибутивов Alpine с BusyBox и Rocky Linux 10 с systemd в многопользовательском консольном режиме. Код проекта распространяется под лицензией Apache 2.0. Поддерживается работа на системах с архитектурой x86-64.
Полный текст:
https://opennet.ru/66562/
https://opennet.me/66562/
Грегори Курцер (Gregory Kurtzer), основатель дистрибутивов CentOS и Rocky Linux, представил проект Ginux, развивающий ядро операционной системы на языке Rust, нацеленное на достижение совместимости с ядром Linux. Опубликованный исследовательский прототип уже способен загрузить системное окружение дистрибутивов Alpine с BusyBox и Rocky Linux 10 с systemd в многопользовательском консольном режиме. Код проекта распространяется под лицензией Apache 2.0. Поддерживается работа на системах с архитектурой x86-64.
Полный текст:
https://opennet.ru/66562/
https://opennet.me/66562/
👍26❤11💅5😁3🤣3❤🔥2🤔2
This media is not supported in your browser
VIEW IN TELEGRAM
⚡ Minecraft переписывают на Rust: Horizon - альтернативный клиент с открытым кодом.
Проект воссоздаёт Minecraft: Java Edition 26.3: от генерации мира и физики до интерфейса, звука и сетевой игры. Доступен для Windows, Linux и Mac на Apple Silicon.
По заявлениям разработчиков, совместимость с оригиналом проверяется 281 набором сравнительных тестов. Клиент подключается к ванильным серверам, поддерживает сохранения и перенос совместимых модов из сборок Modrinth и CurseForge.
В сети распространяются демонстрации высокой производительности на слабых компьютерах. Однако обещать всем 60 FPS и мгновенную загрузку чанков нельзя: результат зависит от железа, настроек и конкретной сцены.
Как попробовать:
1. Установите свою лицензионную Minecraft: Java Edition через официальный лаунчер и один раз запустите версию 26.3.
2. Скачайте лаунчер Horizon и установите доступный релиз.
3. Подготовьте ресурсы из установленной копии игры и запускайте клиент.
Horizon – независимый проект, не связанный с Mojang и Microsoft. Код распространяется под MIT, файлы самой Minecraft в комплект не входят.
https://playhorizon.dev/
Проект воссоздаёт Minecraft: Java Edition 26.3: от генерации мира и физики до интерфейса, звука и сетевой игры. Доступен для Windows, Linux и Mac на Apple Silicon.
По заявлениям разработчиков, совместимость с оригиналом проверяется 281 набором сравнительных тестов. Клиент подключается к ванильным серверам, поддерживает сохранения и перенос совместимых модов из сборок Modrinth и CurseForge.
В сети распространяются демонстрации высокой производительности на слабых компьютерах. Однако обещать всем 60 FPS и мгновенную загрузку чанков нельзя: результат зависит от железа, настроек и конкретной сцены.
Как попробовать:
1. Установите свою лицензионную Minecraft: Java Edition через официальный лаунчер и один раз запустите версию 26.3.
2. Скачайте лаунчер Horizon и установите доступный релиз.
3. Подготовьте ресурсы из установленной копии игры и запускайте клиент.
Horizon – независимый проект, не связанный с Mojang и Microsoft. Код распространяется под MIT, файлы самой Minecraft в комплект не входят.
https://playhorizon.dev/
❤27👍19🤝1
Переписал GPU-вычисления на Rust и ускорил обработку в десятки раз. Но часть работы не окупилась
Провин Перера рассказал, как за три недели перевёл speakrs с ONNX Runtime на собственные GPU-ядра, написанные на Rust с помощью NVIDIA cuda-oxide.
Библиотека занимается диаризацией речи: определяет, кто и когда говорит в аудиозаписи.
По замерам автора на RTX 4090, после всех изменений:
- VoxConverse dev: 1236 → 38 секунд.
- Earnings-21: 2692 → 75 секунд.
- Ошибка диаризации, DER, осталась прежней.
Однако отказ от ONNX Runtime сам по себе дал ускорение в 1,81 раза. Остальной прирост нельзя приписывать одной замене рантайма.
А вот замена cuDNN и cuBLAS собственными ядрами, по оценке автора, преимущественно не оправдала усилий. Библиотеки NVIDIA оптимизированы под множество GPU, а свои реализации приходилось отдельно настраивать под A100, T4 и RTX 5090. H100 пока осталась без настройки.
Бонус полного отказа от этих библиотек - GPU-контейнер примерно на 2 ГБ меньше.
Большую часть ядер написали ИИ-агенты. Автор задавал цели, измерял результат и решал, что принимать. Пять дней ушли на сложную систему проверок, принёсшую один PR. После перехода к простой сквозной проверке за восемь часов удалось внедрить больше изменений.
Вывод автора: сначала измерьте пользу от замены компонента. Поддерживать собственную версию придётся тоже вам.
https://avencera.com/
Провин Перера рассказал, как за три недели перевёл speakrs с ONNX Runtime на собственные GPU-ядра, написанные на Rust с помощью NVIDIA cuda-oxide.
Библиотека занимается диаризацией речи: определяет, кто и когда говорит в аудиозаписи.
По замерам автора на RTX 4090, после всех изменений:
- VoxConverse dev: 1236 → 38 секунд.
- Earnings-21: 2692 → 75 секунд.
- Ошибка диаризации, DER, осталась прежней.
Однако отказ от ONNX Runtime сам по себе дал ускорение в 1,81 раза. Остальной прирост нельзя приписывать одной замене рантайма.
А вот замена cuDNN и cuBLAS собственными ядрами, по оценке автора, преимущественно не оправдала усилий. Библиотеки NVIDIA оптимизированы под множество GPU, а свои реализации приходилось отдельно настраивать под A100, T4 и RTX 5090. H100 пока осталась без настройки.
Бонус полного отказа от этих библиотек - GPU-контейнер примерно на 2 ГБ меньше.
Большую часть ядер написали ИИ-агенты. Автор задавал цели, измерял результат и решал, что принимать. Пять дней ушли на сложную систему проверок, принёсшую один PR. После перехода к простой сквозной проверке за восемь часов удалось внедрить больше изменений.
Вывод автора: сначала измерьте пользу от замены компонента. Поддерживать собственную версию придётся тоже вам.
https://avencera.com/
👍12❤5🔥5🤔3⚡1🥰1
Два месяца оптимизаций Rust-кода. А самое большое ускорение дало знание того, как устроен Linux.
Гийом Гомес, разработчик
Дальше началась оптимизация:
- Работа с байтами вместо строк - примерно на 20% меньше инструкций.
- Замена
-
- Повторное использование буферов - на 79% меньше выделенных байтов, но без ускорения.
Перелом случился после чтения исходников
Значит, обходить одну и ту же таблицу для каждого потока незачем. Если она общая, достаточно скопировать GPU-данные процесса.
В замерах автора время выполнения сократилось с 0,31 до 0,11 секунды - примерно на 64%, а число инструкций упало на 65%.
Есть нюанс: поток может отделить свою таблицу. Проверить, общая ли она, позволяет
Цифры получены на машине автора и зависят от нагрузки.
https://blog.guillaume-gomez.fr/
Гийом Гомес, разработчик
sysinfo, добавил сбор данных об использовании GPU отдельными процессами. Обновление информации резко замедлилось: приходилось обходить открытые файловые дескрипторы и искать подключения к видеокарте.Дальше началась оптимизация:
- Работа с байтами вместо строк - примерно на 20% меньше инструкций.
- Замена
Vec структурой в одном парсере - около 6%.-
fstatat вместо readlink - около 8%.- Повторное использование буферов - на 79% меньше выделенных байтов, но без ускорения.
Перелом случился после чтения исходников
htop: потоки обычно разделяют таблицу файловых дескрипторов своего процесса.Значит, обходить одну и ту же таблицу для каждого потока незачем. Если она общая, достаточно скопировать GPU-данные процесса.
В замерах автора время выполнения сократилось с 0,31 до 0,11 секунды - примерно на 64%, а число инструкций упало на 65%.
Есть нюанс: поток может отделить свою таблицу. Проверить, общая ли она, позволяет
kcmp.Цифры получены на машине автора и зависят от нагрузки.
https://blog.guillaume-gomez.fr/
🔥14❤12
Показываешь ИИ чужой сайт или приложение, а он разбирается, как всё работает, и собирает свою версию
На GitHub появился Craft Anything - open-source инструмент на Rust, объединяющий реверс-инжиниринг и AI-разработку.
Работает довольно интересно. Указываешь сайт, десктопное приложение или игру и описываешь, что хочешь воспроизвести.
Система исследует оригинал, передаёт результаты coding-агенту, собирает новый проект и сравнивает его с исходным. Если обнаруживает расхождения, запускает следующую итерацию исправлений.
Внутри целый движок реверс-инжиниринга с более чем 300 инструментами. Поддерживаются анализ бинарников, .NET, Java, Android, Electron, JavaScript и игровых файлов.
Есть два режима. Clean Room изучает только внешнее поведение и интерфейс, не читая исходники. Deep позволяет исследовать внутреннее устройство программы, включая дизассемблирование и декомпиляцию.
Все инструменты доступны через CLI и MCP. Для генерации кода используется прежде всего Claude Code.
Например, можно попросить агента воссоздать интерфейс сайта, а затем проверить результат на трёх размерах экрана.
Проект пока в ранней альфе: часть проверок и интеграций ещё экспериментальная.
Интересная идея для coding-агентов: вместо попытки угадать устройство программы по скриншоту сначала собрать реальные данные о её работе, а затем писать код.
https://github.com/storytold/craft-anything
На GitHub появился Craft Anything - open-source инструмент на Rust, объединяющий реверс-инжиниринг и AI-разработку.
Работает довольно интересно. Указываешь сайт, десктопное приложение или игру и описываешь, что хочешь воспроизвести.
Система исследует оригинал, передаёт результаты coding-агенту, собирает новый проект и сравнивает его с исходным. Если обнаруживает расхождения, запускает следующую итерацию исправлений.
Внутри целый движок реверс-инжиниринга с более чем 300 инструментами. Поддерживаются анализ бинарников, .NET, Java, Android, Electron, JavaScript и игровых файлов.
Есть два режима. Clean Room изучает только внешнее поведение и интерфейс, не читая исходники. Deep позволяет исследовать внутреннее устройство программы, включая дизассемблирование и декомпиляцию.
Все инструменты доступны через CLI и MCP. Для генерации кода используется прежде всего Claude Code.
Например, можно попросить агента воссоздать интерфейс сайта, а затем проверить результат на трёх размерах экрана.
Проект пока в ранней альфе: часть проверок и интеграций ещё экспериментальная.
Интересная идея для coding-агентов: вместо попытки угадать устройство программы по скриншоту сначала собрать реальные данные о её работе, а затем писать код.
https://github.com/storytold/craft-anything
🔥22🤔9🤬5👀4🖕3🥰1
Forwarded from Анализ данных (Data analysis)
Инженеры Google дали Gemini 4 Argon через Antigravity научную модель океана FVCOM. В исходном проекте было 174 тысячи строк Fortran и C, накопленных за десятилетия.
Агент самостоятельно изучил код, составил план миграции, переписал основные вычислительные модули на Rust, запустил тесты и оптимизировал производительность.
Результаты эксперимента:
- 59 минут на миграцию основного вычислительного ядра.
- Ускорение симуляции в 1,88 раза.
- Потребление памяти снизилось на 54%.
- Обнаружено 6 старых ошибок, включая переполнения и выходы за границы массивов.
- 96,8% покрытия ветвей тестами.
- Численные результаты совпали с оригиналом до 12 знаков после запятой на 100 тестовых сценариях.
В новом коде полностью запретили
unsafe. Для ускорения агент убрал лишние выделения памяти внутри циклов, переработал структуры данных и применил LLVM PGO.При первом запуске один тест упал из-за ошибки в расчётах для мелководья. Агент сам разобрал трассировку, исправил код и повторно прогнал тесты.
Google выложила использованный workflow в виде открытого skill для Antigravity. Запуск миграции выглядит так:
/migrate-to-rust <github-repo-url>https://antigravity.google/blog/modernizing-40-year-old-scientific-code-with-gemini-4-argon
@data_analysis_ml
#rust #Google #Argon
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥42😁10👍6🥱6❤4🤔1🖕1
Discord переписывают на Rust. Electron отправляют на пенсию
Технический директор Discord Станислав Вишневский подтвердил, что компания разрабатывает новый клиент на Rust, полностью отказываясь от Electron на десктопе и React Native на мобильных устройствах.
Вместо Electron разработчики используют GPUI, нативный UI-фреймворк на Rust с GPU-ускорением. Мобильные приложения сохранят нативный интерфейс, но будут использовать общую с десктопом логику на Rust.
Тестовый клиент Discord Phoenix потребляет всего 290,2 МБ оперативной памяти. Для сравнения, нынешний Discord у некоторых пользователей занимает 1-2 ГБ и больше. Правда, полноценного сравнительного тестирования пока нет.
Discord использует Rust ещё с 2018 года: на нём уже работают части инфраструктуры, голосовые технологии и отдельные компоненты клиента.
Новая версия должна сохранить привычный интерфейс, но стать быстрее и экономнее по памяти. Пользовательское тестирование планируют начать скоро, точной даты релиза пока нет.
Источник: https://x.com/svishnevskiy/status/2118081920194203799
Технический директор Discord Станислав Вишневский подтвердил, что компания разрабатывает новый клиент на Rust, полностью отказываясь от Electron на десктопе и React Native на мобильных устройствах.
Вместо Electron разработчики используют GPUI, нативный UI-фреймворк на Rust с GPU-ускорением. Мобильные приложения сохранят нативный интерфейс, но будут использовать общую с десктопом логику на Rust.
Тестовый клиент Discord Phoenix потребляет всего 290,2 МБ оперативной памяти. Для сравнения, нынешний Discord у некоторых пользователей занимает 1-2 ГБ и больше. Правда, полноценного сравнительного тестирования пока нет.
Discord использует Rust ещё с 2018 года: на нём уже работают части инфраструктуры, голосовые технологии и отдельные компоненты клиента.
Новая версия должна сохранить привычный интерфейс, но стать быстрее и экономнее по памяти. Пользовательское тестирование планируют начать скоро, точной даты релиза пока нет.
Источник: https://x.com/svishnevskiy/status/2118081920194203799
🔥44❤12👍4