Bug 53138 - SIGABRT по завершению воспроизведения на KDE
Summary: SIGABRT по завершению воспроизведения на KDE
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: vorbis-tools (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P2 blocker
Assignee: Anton Farygin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks: 46625
  Show dependency tree
 
Reported: 2025-02-18 16:51 MSK by Artem Varaksa
Modified: 2025-03-01 13:35 MSK (History)
6 users (show)

See Also:


Attachments
Тестовый файл (696.04 KB, audio/ogg)
2025-02-18 16:51 MSK, Artem Varaksa
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Artem Varaksa 2025-02-18 16:51:16 MSK
Created attachment 17770 [details]
Тестовый файл

Шаги
====

1. $ ogg123 file.ogg

Фактический результат
=====================

По завершению воспроизведения SIGABRT:

> Звуковое Устройство:   PulseAudio Output
> 
> Воспроизведение: file.ogg
> Поток Ogg Vorbis: 2 канал, 44100 Гц
> Album: Example Files
> Title: OGG Test File
> Artist: Online-Convert.com
> *** buffer overflow detected ***: terminated,3 kbps)  Выходной Буфер  77,8%                      
> Аварийный останов (образ памяти сброшен на диск)

Ожидаемый результат
===================

Успешное завершение работы приложения.

Дополнительно
=============

Coredump нет, несмотря на "образ памяти сброшен на диск":

> $ coredumpctl info
> ...
> Message: Process 5709 (ogg123) of user 1000 terminated abnormally without generating a coredump.

Воспроизводимость
=================

ALT Workstation K 11.0 beta20250210 x86_64
ALT Education (KDE) 11.0 alpha20240606 x86_64

Воспроизводится на виртуальных машинах:

[p11] vorbis-tools-1.4.2-alt1.x86_64
[sisyphus] vorbis-tools-1.4.2-alt2.x86_64

Не воспроизводится в других DE.
Comment 1 Yuri N. Sedunov 2025-02-18 17:04:23 MSK
Вроде бы должно быть исправлено

* Sun Feb 16 2025 Anton Farygin <rider@altlinux.ru> 1.4.2-alt2
- Added patch from upstream gitlab with fix buffer Overflow vulnerability
  in Vorbis-tools (Fixes: CVE-2023-43361).
- Fixed build with gcc 14.

но:
$ C ogg123 /usr/share/lincity-ng/sounds/TruckEngine.ogg

Audio Device:   PulseAudio Output

Playing: /usr/share/lincity-ng/sounds/TruckEngine.ogg
Ogg Vorbis stream: 1 channel, 11025 Hz
                                                                                
Done.

$ ogg123 /usr/share/lincity-ng/sounds/TruckEngine.ogg

Звуковое Устройство:   PulseAudio Output

Воспроизведение: /usr/share/lincity-ng/sounds/TruckEngine.ogg
Поток Ogg Vorbis: 1 канал, 11025 Гц
*** buffer overflow detected ***: terminated,6 kbps)  Выходной Буфер  82,6% (EOS)
Аварийный останов

Обращаю внимание, что с LANG=C не валится.
Comment 2 Artem Varaksa 2025-02-18 17:36:41 MSK
Исходя из https://nvd.nist.gov/vuln/detail/CVE-2023-43361, проблема была связана  с конвертированием wav -> ogg:

> Buffer Overflow vulnerability in Vorbis-tools v.1.4.2 allows a local attacker to execute arbitrary code and cause a denial of service during the conversion of wav files to ogg files.

И в https://github.com/xiph/vorbis-tools/issues/41 в POC используется oggenc, а не ogg123.

Обе buffer overflow, но мне кажется это могут быть разные проблемы.
Comment 3 Sergey V Turchin 2025-02-28 15:57:05 MSK
Интересно, что у libvorbis лежит тарбол 1.4.2, а в git только 1.3.7 .
Comment 4 Sergey V Turchin 2025-02-28 15:59:55 MSK
Из изменений вижу только https://gitlab.xiph.org/xiph/vorbis/-/commit/315da9cc9d30484c802b2e2ea150df39e060e2b9
и в коменте "out of bounds".
Comment 5 Anton Farygin 2025-03-01 12:28:31 MSK
Да, там переполнение буфера при выводе статистики в UTF локали.
Апстрим не озаботился никакими проверками и не заморачиваясь наполняет буфер в 200 байт данными для вывода.
Comment 6 Repository Robot 2025-03-01 13:35:44 MSK
vorbis-tools-1.4.2-alt3 -> sisyphus:

 Sat Mar 01 2025 Anton Farygin <rider@altlinux.ru> 1.4.2-alt3
 - Fixed buffer overflow in ogg123 when using non-C locales (Closes: #53138).