The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]



"Уязвимость в gettext, позволяющая выполнить код при обработк..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от opennews (??), 13-Ноя-18, 09:14 
В библиотеке gettext (https://www.gnu.org/software/gettext/), применяемой для создания многоязычных приложений, выявлена (https://usn.ubuntu.com/3815-1/) опасная уязвимость (CVE-2018-18751 (https://security-tracker.debian.org/tracker/CVE-2018-18751)), которая может использоваться для организации выполнения произвольного кода при обработке специально оформленных сообщений в po-файлах. Проблема вызвана двойным освобождением блока памяти (double free) в функции default_add_message, определённой в файле read-catalog.c. В сети уже доступны варианты (https://github.com/CCCCCrash/POCs/tree/master/Bin/Tools-gett...) po-файлов (https://github.com/CCCCCrash/POCs/tree/master/Bin/Tools-gett...), эксплуатирующие уязвимость.

Проблема проявляется только в актуальном выпуске gettext 0.19.8. В кодовой базе gettext проблема была устранена ещё в сентябре 2016 года, без акцента на наличие возможной уязвимости, но данное изменение пока не вошло в состав релиза (последний выпуск gettext 0.19.8 датирован (https://git.savannah.gnu.org/gitweb/?p=gettext.git;a=summary) июнем 2016 года) и новая версия с исправлением ещё не доступна (http://ftp.gnu.org/pub/gnu/gettext/). Уязвимость устранена в Ubuntu (https://usn.ubuntu.com/3815-1/)  и Fedora (https://bugzilla.redhat.com/show_bug.cgi?id=1647044), но остаётся неисправленной  в Debian (https://security-tracker.debian.org/tracker/CVE-2018-18751) и RHEL 7 (https://bugzilla.redhat.com/show_bug.cgi?id=1647044). RHEL 5, RHEL 6, SUSE и openSUSE проблеме не подвержены (https://bugzilla.novell.com/show_bug.cgi?id=CVE-2018-18751) так как используют старые версии gettext без файла "read-catalog.c".

URL: https://usn.ubuntu.com/3815-1/
Новость: https://www.opennet.ru/opennews/art.shtml?num=49600

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  –8 +/
Сообщение от Аноним (-), 13-Ноя-18, 09:14 
Вот вам и языки с ручным управлением памятью.

*садится и ждет еду*

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +5 +/
Сообщение от ползкрокодил (?), 13-Ноя-18, 09:58 
Ну а толку? Если есть доступ испортить po-файлы, то можно и исполняемые пошатать как угодно.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от Orduemail (ok), 13-Ноя-18, 10:15 
А разве нельзя подложить свой po файл без доступа в /usr?
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

8. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +1 +/
Сообщение от Аноним (8), 13-Ноя-18, 11:00 
> А разве нельзя подложить свой po файл без доступа в /usr?

.po для людей, для программ .gmo, их из .po получают.
И если вы в /usr писать можете, то у вас уже есть права root,
нафига вам уязвимость?

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

14. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от Аноним (14), 13-Ноя-18, 13:04 
Там указано "без доступа в /usr"
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

24. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от ig0r (??), 14-Ноя-18, 10:59 
А если ты написал программу, можно подумать ты будешь ревьюить .po файлы в PR если они для незнакомого тебе языка.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

32. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от ползкрокодил (?), 28-Ноя-18, 18:22 
Можно даже отревьюить, а потом окажется, что какая-то последовательность иероглифов крашит макось.
Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

5. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +2 +/
Сообщение от Аноним (5), 13-Ноя-18, 10:32 
Сейчас выдвинут тезис, что ручное управление памятью нужно "осилить". Тезис будет сопровождаться упоминанием о неких "макаках", которым "осиляторство" не под силу. Но то, что этот тезис появится под новостью о gettext, будет подразумевать, что авторы gettext - неисиляторы и макаки. Спрашивается, зачем тогда нам операционная система GNU, если его писали неосиляторы и макаки?

Но если этот тезис выдвинут не будет (в виду неприятных выводов), то это будет означать, что си действительно такой неудачный, что даже "осиляторы" и "немакаки" напишут в нем уязвимый код. Но из этого последует другой вывод -- что следует пользоваться другими языками, где нет ручного управления памятью.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

6. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +3 +/
Сообщение от Аноним (6), 13-Ноя-18, 10:41 
Что-то твой опус напоминает анекдот про Петьку и логику.
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +7 +/
Сообщение от Акакжев (?), 13-Ноя-18, 10:53 
Скорее, про Петьку и нюанс.
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

10. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +1 +/
Сообщение от captcha 20168 (?), 13-Ноя-18, 11:06 
> следует пользоваться другими языками, где нет ручного управления памятью

безбожно неэффективный код

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

20. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от Аноним (20), 13-Ноя-18, 18:16 
Предрассудки. Ручное управление памятью тоже требует ресурсов, а порой и медленнее GC, который может отрабатывать в отдельном потоке и даже устранять фрагментацию
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

29. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от Annoynymous (ok), 14-Ноя-18, 22:18 
Помнится, в Java был многпоточны
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

30. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от Annoynymous (ok), 14-Ноя-18, 22:19 
Помнится, в Java был многопоточный GC.
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

31. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +1 +/
Сообщение от Аноним (31), 15-Ноя-18, 00:03 
Уж каких там только GC не было, а все равно тормозит.
Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

17. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +4 +/
Сообщение от Аноним (17), 13-Ноя-18, 14:14 
> ручное управление памятью нужно "осилить"
> "макаках", которым "осиляторство" не под силу

Всё правильно изложил.
Да, так оно и есть - с памятью надо обращаться аккуратно. Когда в том огромном объёме кода, написанного немакаками-осиляторами, косяки таки иногда обнаруживаются, это вызывает бурную радость макак, пишущих тормозные поделия на "безопасных" языках.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

21. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от Аноним (20), 13-Ноя-18, 18:18 
Вот только эксплуатировать уязвимость в интерпретаторе намного сложнее, чем в прикладном коде
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

22. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от Аноним (20), 13-Ноя-18, 18:19 
Сорри это к 2.11 было
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

25. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  –1 +/
Сообщение от IRASoldier (?), 14-Ноя-18, 14:17 
>операционная система GNU

Нет такой операционной системы.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

27. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от девелоперкодошлеп (?), 14-Ноя-18, 14:39 
как это нету, вон, gnu hurd, вчера только в эмуляторе ее запускал.

хотя, конечно, когда доломают все эмуляторы, еще как-то умеющие 32-бита, будут проблемы.

Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

11. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +4 +/
Сообщение от beckemail (??), 13-Ноя-18, 11:11 
В языках с автоматическим управлением памятью управление памятью написано на тех же языках с ручным управлением памятью. И это конец рекурсии, так сказать.

Такого рода уязвимости будут всегда, так как всегда будут находить огрехи в реализациях, компиляторах, железе, драйверах, сочетании всего этого.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

19. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +4 +/
Сообщение от Аноним (19), 13-Ноя-18, 16:19 
То есть споры о единственно верном подходе к программированию — удел балаболов и пустомель, в своём развитии ушедших не дальше чёрно-белой картины мира, свойственной подростковому возрасту. Судя по комментариям к новостям на подобную тематику, взрослые люди на опеннет встречаются крайне редко. Меня это печалит.
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

23. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от beckemail (??), 13-Ноя-18, 18:51 
Совершенно согласен.
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

18. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от Аноним (18), 13-Ноя-18, 16:02 
А в языках с ручным управлением памяти давно существует Borrow Checker для защиты от таких ошибок.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

4. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +/
Сообщение от Alex_Kemail (??), 13-Ноя-18, 10:18 
Ведь ничего не понятно в том, что написали про подверженные проблеме версии.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

9. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +2 +/
Сообщение от ddd788 (?), 13-Ноя-18, 11:00 
Что там непонятного? Последняя версия выпущена в 2016 году - она и подвержена. Не подверждены дистрибутивы, которые используют более древнюю версию.
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

12. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +3 +/
Сообщение от Аноним (12), 13-Ноя-18, 11:25 
Судя по написанному, также не подвержены дистрибутивы, собирающие себе свеженький пакет из гита. Ну либо использующие более античные версии. Хотя проблема не сказать чтобы критичная, разве что можно попытаться хакнуть ленивого разработчика, прислав тому перевод.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

13. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  –1 +/
Сообщение от Аноним (13), 13-Ноя-18, 11:50 
Где мой фаззинг, а? Привыкли тестировать мультимедию, привыкайте фаззить пошки.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

16. "Уязвимость в gettext, позволяющая выполнить код при обработк..."  +4 +/
Сообщение от Аноним (16), 13-Ноя-18, 14:00 
Напоминает большинство новостей о якобы уязвимостях Linux типа - нужны 3 команды, чтобы сломать то-то и то-то ... Первая команда - sudo ... Бред.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру