Halloy — это IRC-приложение, написанное на Rust. До фиксации 0f77b2cfc5f822517a256ea5a4b94bad8bfe38b6 поток приема DCC не очищал имена файлов из входящих запросов DCC SEND. Удаленный пользователь IRC может отправить имя файла с последовательностями обхода пути, например `../../.ssh/authorized_keys`, и файл будет записан вне настроенного пользователем `save_directory`.
При включенном автоматическом принятии это не требовало никакого взаимодействия со стороны жертвы. Начиная с коммита 0f77b2cfc5f822517a256ea5a4b94bad8bfe38b6, все идентифицированные пути кода очищают имена файлов с помощью общей функции sanitize_filename.
Показать оригинальное описание (EN)
Halloy is an IRC application written in Rust. Prior to commit 0f77b2cfc5f822517a256ea5a4b94bad8bfe38b6, the DCC receive flow did not sanitize filenames from incoming `DCC SEND` requests. A remote IRC user could send a filename with path traversal sequences like `../../.ssh/authorized_keys` and the file would be written outside the user's configured `save_directory`. With auto-accept enabled this required zero interaction from the victim. Starting with commit 0f77b2cfc5f822517a256ea5a4b94bad8bfe38b6, all identified code paths sanitize filenames through a shared `sanitize_filename` function.
Характеристики атаки
Последствия
Строка CVSS v4.0
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Halloy Halloy
cpe:2.3:a:halloy:halloy:*:*:*:*:*:*:*:*
|
— |
<= 2026.4
|