The OpenNET Project / Index page

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



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

"Уязвимости в Perl, ownCloud, GStreamer и Zephyr RTOS"  +/
Сообщение от opennews (?), 27-Ноя-23, 14:29 
Несколько недавно обнаруженных уязвимостей:...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=60185

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

Оглавление

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

1. Сообщение от Tron is Whistling (?), 27-Ноя-23, 14:29   –4 +/
> переменных окружения, которые могут содержать пароль администратора, лицензионный ключ и учётные данные для подключения к почтовому серверу

И так тихонько докеры обошли в изложении...

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

3. Сообщение от Tron is Whistling (?), 27-Ноя-23, 14:32   –5 +/
Вообще таскать чувствительную информацию в env могли придумать только смузихлёбы.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #4, #12, #22

4. Сообщение от Аноним (4), 27-Ноя-23, 14:38   +11 +/
90% современных погромистов это смузихлебы. Либо живи с этим, либо меняй род деятельности.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #5, #6, #113

5. Сообщение от Tron is Whistling (?), 27-Ноя-23, 14:42   +/
Ну, меня всегда забавляют вот эти вот новости, что у них там что-то поломалось из-за того, что они котлету прямо тараканам в мусорницу положили.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4

6. Сообщение от Tron is Whistling (?), 27-Ноя-23, 14:42   +4 +/
(честно говоря этому "CVE" стоило бы поставить WONTFIX, потому что нет там уязвимости, разве что в идиотских сетапах)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4 Ответы: #107

7. Сообщение от Tron is Whistling (?), 27-Ноя-23, 14:44   +/
Лал, оказывается это мелкософт снова обломал все барбершопы.

vendor/microsoft/microsoft-graph/tests/GetPhpInfo.php

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

9. Сообщение от Анонин (?), 27-Ноя-23, 14:53   –1 +/
> запись за пределы выделенного буфера
> Use-After-Free + переполнение буфера
> и еще почти 25 переполнений буфера с RCE

"C. C newer changes"

Такое ощущение, что на Zephyr просто натравили какой-то анализатор и сразу попер высококачественный код лучших в мире погромистов.


Ответить | Правка | Наверх | Cообщить модератору
Ответы: #11, #132

10. Сообщение от Аноним (10), 27-Ноя-23, 14:57   +2 +/
На сайте зефирки
"A proven RTOS ecosystem, by developers, for developers" (про юзеров они ничего не говорят) )
"strives to deliver the best-in-class RTOS"

а на деле фиксы вида
    if (params->ssid_length > WIFI_SSID_MAX_LEN) {
или ошибки Signed to unsigned conversion errors and buffer overflow
но если одного буфера мало, можно переполнить два Two buffer overflow vulnerabilities in Zephyr USB code

Итак дырявые WiFi стек, стек Bluetooth, USB-стек, файловой системе, очередной вайфай eS-WiFi и шина CANbus.
Такое впечатление, что у них нет ни одной подсистемы без дыреней /_о

В общем типи-кал С от лучших погромиздов под эгидой TheLinuxFoundationProjects
Неудивительно, что наверное самая распространенная это ThreadsX из соседней темы, несмотря даже на проприетарную лицензию.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #111

11. Сообщение от Anonist (?), 27-Ноя-23, 15:10   +4 +/
ChatGPT любой код превратит в божественный если правильно уметь задавать промпты.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

12. Сообщение от Рычаг (?), 27-Ноя-23, 15:10   +1 +/
Ну а по фактам-то есть что сказать? Или только как дедушка выругаться «пук-среньк, смузихлёбы»?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #13

13. Сообщение от Tron is Whistling (?), 27-Ноя-23, 15:12   –1 +/
А по фактам - когда в ENV лежат ключи и пароль - это повод взять метлу таки.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12 Ответы: #14, #72, #134

14. Сообщение от Рычаг (?), 27-Ноя-23, 15:19   +1 +/
Если лежат, то да, а если только передавать, то просто ещё один способ передать значение извне в программу. Прочитал, сделал unsetenv и ходи довольный.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13 Ответы: #16, #27

15. Сообщение от Аноним (15), 27-Ноя-23, 15:22   +/
Открывает сайтик Zephyr:

> Build secure [..] devices with Zephyr®
> Developed with security in mind.
> Employs an in-depth security development lifecycle

А в реальности:

> 25 уязвимостей, большинство из которых потенциально могут привести к выполнению кода атакующего

Понты дороже денег. Знаменитая сишечная секьюрность.


Ответить | Правка | Наверх | Cообщить модератору
Ответы: #20

16. Сообщение от Рычаг (?), 27-Ноя-23, 15:27   +/
Хм, наверно, если даже и лежат, то тоже ничего страшного. Вот раскрывать переменные окружения куда-то налево это косяк. Всё равно что файл с секретами катнуть в ответ на какой-нибудь запрос.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14

20. Сообщение от Денис Попов (?), 27-Ноя-23, 15:34   –1 +/
>Понты дороже денег. Знаменитая сишечная секьюрность.

Не бойся, остальные языки безопасные. А упоминание Perl в первом абзаце тебе примерещилось.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15 Ответы: #21

21. Сообщение от Аноним (10), 27-Ноя-23, 15:46   +/
"Уязвимость перла" почему-то находится в файле regcomp.c
Запутались с индексах, с кем бывает.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #159

22. Сообщение от Liin (ok), 27-Ноя-23, 15:57   +/
Да вобщем ничего страшного в использовании паролей в env нет, только если эту инфу не раскрывают наружу всем, кому ни попадя, как ребята с GetPhpInfo.php, который явно для дебага использовался и по какой-то причине был включен в прод. Хотя, конечно, лишнего в env тоже быть не должно. И если от пароля mysql там толку снаружи не будет, то от пароля админа - может пострадать админка. Разумно надо к этому подходить, взвешивать риски.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #114, #151

27. Сообщение от all_glory_to_the_hypnotoad (ok), 27-Ноя-23, 16:41   +2 +/
Ну да ... если бутерброд упал на пол и его успели поднять менее, чем за 5 сек, то считается чистым и можно жрать. Сделать unsetenv примерно как надеть на голову пакет и считать что ты спрятался от окружающих. ENV много где прикапывается, а unsetenv логическая операция, она не удаляет данные из памяти и другие копии ENV-ов. В общем случае корректно передавать секреты через пайпы, а не вот так.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #38, #135, #143

38. Сообщение от Рычаг (?), 27-Ноя-23, 17:15   +/
>она не удаляет данные из памяти

А что имеется в виду? Что управление памятью слишком сложно, чтобы считать, что после unsetenv всё пропало? Если на таком уровне рассматривать, то полностью безопасных способов передать секрет не окажется — секрет же всё равно в памяти оказывается, как ни крути.

>не удаляет другие копии ENV-ов

Тут спорить не с чем, разве что вот так возразить: это является проблемой не всегда. Если не отпочковывать новые процессы до setenv, то и не утечёт в другие env-ы.

>передавать секреты через пайпы

Так-то да, но ведь и передающему их нужно взять откуда-то…

Вообще, влезая в разговор про env, я скорее имел в виду, что передавать через окружение не страшнее, чем читать из файла. Да, менее удобно; да, какая-нибудь библиотека может в лог всё окружение «задебажить», но в общем, можно сказать, это такой специфический файл с адресацией.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27 Ответы: #42

42. Сообщение от Рычаг (?), 27-Ноя-23, 17:18   +/
>Если не отпочковывать новые процессы до setenv

до UNsetenv, UNsetenv.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38

72. Сообщение от Аноним (72), 27-Ноя-23, 17:31   +1 +/
А где ж они должны лежать, дорогой ты мой?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13 Ответы: #104, #119

104. Сообщение от Аноним (104), 27-Ноя-23, 18:02   +3 +/
В коде, как принято)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #108, #110

107. Сообщение от нах. (?), 27-Ноя-23, 18:04   –1 +/
> разве что в идиотских сетапах

т.е. всех более-менее реальных применениях.

ну ок.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6

108. Сообщение от нах. (?), 27-Ноя-23, 18:05   +/
в гитхабе и гитляпе, для надежности.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #104

110. Сообщение от Рычаг (?), 27-Ноя-23, 18:08   +1 +/
Только обязательно рядом комментарий оставить, что ты понимаешь, что так делать нельзя и вообще дико извиняешься, хех.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #104 Ответы: #141

111. Сообщение от 32 (?), 27-Ноя-23, 18:20   +3 +/
> В общем типи-кал С

Да когда вы уже создадите свой проц который будет питон чистый исполнять или яву, и свалите с этой планеты в свою нарнию

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10 Ответы: #115, #118, #129

113. Сообщение от Аноним (113), 27-Ноя-23, 18:26   +1 +/
90% любых работников плохо делают свою работу, лол.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4 Ответы: #116

114. Сообщение от Аноним (113), 27-Ноя-23, 18:28   +/
Если у злоумышленника есть доступ в env то где бы ты не хранил ключи у него по любому уже есть доступ.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22

115. Сообщение от Аноньимъ (ok), 27-Ноя-23, 18:50   –1 +/
Явовскип так-то были.

В си процы вообще довольно отвратительная штука. Они числа дробят быстро да. А код общего назначения у них черещ костыли работает.

Интел конечно сильно старался десятки лет...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #111

116. Сообщение от твой анестезиолог (?), 27-Ноя-23, 18:58   –2 +/
пациент, надеюсь вы понимаете что вы при таком раскладе - так и так труп? Напишете завещание в мою пользу? Хирург не зарежет - так я не разбужу. А патанатом делает у нас свою работу хорошо, потому что искренне ее любит.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #113

118. Сообщение от Аноним (10), 27-Ноя-23, 19:22   –3 +/
А не слишком это сложное решение, вместо того чтобы ПРОСТО проверять входные данные?
Или вы считаете что дыряшечники настолько безнадежны, что проще свой проц запилить, чем этих необучаемых заставить?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #111

119. Сообщение от Tron is Whistling (?), 27-Ноя-23, 19:36   +/
Биндмаунты делать давно разучились?
etcd тоже отменили?
Ясно-понятно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #72 Ответы: #120, #130

120. Сообщение от Аноним (72), 27-Ноя-23, 19:51   +1 +/
Ох уж эти «ветераны» «системного» «администрирования». А в etcd ты как попадёшь? На доверии, с нужного айпишника, надеюсь? Или у тебя там один самоподписанный сертификат на все контейнеры со временем жизни в 10 лет? Ясно-понятно.

> Биндмаунты

КЛБ!

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #119 Ответы: #138, #140, #148

129. Сообщение от хамоним (?), 27-Ноя-23, 20:50   +1 +/
Именно из-за Си шников которые любили использовать каки типа
(*(struct foo *)NULL) = x
ARM для Cortex-M прямо в железо вхардкодила поведение, что на это говоно кидается безусловный и немедленный HardFault
Вот как приходится бороться с криворукостью убогих!

Возможно еще через 5 лет придется добавлять обязательную неотключаемую проверку границ массива, прям в процессор.
Ибо языку почти полтос, ядру больше 30ки, а уязвимости вида "шел сишник по массиву, взял и сделал out-of-bounds" живут и процветают до сих пор.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #111

130. Сообщение от Рычаг (?), 27-Ноя-23, 21:19   +1 +/
И этот человек ещё что-то про смузихлёбов говорил, хех
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #119 Ответы: #139, #146

131. Сообщение от YetAnotherOnanym (ok), 27-Ноя-23, 21:28   +1 +/
> злоумышленник может разместить свой cmd.exe в каталог C:\ProgramData и поднять свои привилегии, если администратор запустит Perl-скрипт из этого каталога

Если админ запускает файлы из каталога с такими разрешениями, то специфичная для перла последовательность поиска исполняемых файлов как-то уже мало на что влияет.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #133

132. Сообщение от Аноним (72), 27-Ноя-23, 21:45   +2 +/
> "C. C newer changes"

А этот пацак всё время говорит на языках, продолжения которых не знает!

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #136, #155

133. Сообщение от Аноним (72), 27-Ноя-23, 21:47   +/
Когда проломят череп, лишая тебя кошелька и мобилы ты знай — это не преступники плохие, просто ты ходил не там и не в то время.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #131 Ответы: #137

134. Сообщение от Аноним (135), 27-Ноя-23, 22:46   +/
> А по фактам - когда в ENV лежат ключи и пароль - это повод взять метлу таки.

Может, начать с того, что если приложение запускается - это уже повод взять метлу?

(Потому что если оно запустилось, то в его памяти хоть что-то интересное, да найдётся)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13 Ответы: #150

135. Сообщение от Аноним (135), 27-Ноя-23, 22:47   +/
> Сделать unsetenv примерно как надеть на голову пакет и считать что ты спрятался от окружающих.

Примерно как сделать exec() после fork() и думать, что это дофига безопасно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27

136. Сообщение от Аноним (135), 27-Ноя-23, 22:49   +/
Он прав. The newer C gets, the more dangerous it becomes.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #132

137. Сообщение от Аноним (135), 27-Ноя-23, 22:51   +4 +/
Ну, если ты пришёл ночью в фавелы, то дальнейшая последовательность действий действительно ни на что не влияет :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #133

138. Сообщение от Tron is Whistling (?), 27-Ноя-23, 23:04   +/
Вы главное продолжайте хранить пароли в окружении, не стирая таковое до форка.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #120

139. Сообщение от Tron is Whistling (?), 27-Ноя-23, 23:05   +/
> И этот человек ещё что-то про смузихлёбов говорил, хех

Да и перед exec можете новое окружение не создавать - всё нормально.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #130

140. Сообщение от Tron is Whistling (?), 27-Ноя-23, 23:06   +/
Что мешает тебе создать инстанс etcd, доступный только с конкретного контейнера?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #120 Ответы: #142, #160

141. Сообщение от Аноним (135), 27-Ноя-23, 23:06   +/
    int getRandomNumber()
    {
      return 4; // chosen by fair dice roll
                // guaranteed to be random
    }
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #110

142. Сообщение от Аноним (135), 27-Ноя-23, 23:09   +2 +/
Недостаточная степень юникс-ветеранства (этот не вполне изящный термин был введен в повествование, чтобы не использовать неполиткорректное слово, начинающееся на "долбое" и заканчивающийся на "изма").
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #140 Ответы: #144, #145, #147

143. Сообщение от Аноним (135), 27-Ноя-23, 23:14   +/
> В общем случае корректно передавать секреты через пайпы, а не вот так.

А кто будет их в пайп оправлять? Админ лично? Или какая-то прога, которая возьмёт их из файла или окружения? (Ба-дум-тссс!)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27

144. Сообщение от Tron is Whistling (?), 27-Ноя-23, 23:23   +/
Поди ещё и вся аппликуха в коньтеноре от рута работает?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #142

145. Сообщение от Tron is Whistling (?), 27-Ноя-23, 23:25   +/
Но я уже на эту тему выше отписал.
Отметить NOTABUG и WONTFIX и закрыть.
Чужие кривые руки у себя исправлять - так себе затея.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #142

146. Сообщение от Tron is Whistling (?), 27-Ноя-23, 23:26   +/
Интересно, что этим господам мешало запустить внутри коньтенора сервис с очищенным от внешних параметров env?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #130 Ответы: #158

147. Сообщение от Tron is Whistling (?), 27-Ноя-23, 23:37   +/
И вообще, способов передать волатильные параметры - 1000+1, но смузихлёбы как всегда выбрали самый удолбищный, который ещё и между процессами наследуется.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #142

148. Сообщение от Tron is Whistling (?), 27-Ноя-23, 23:38   +/
Поверь, если у тебя пароли и ключи лежат в ENV - даже один самоподписанный сертификат будет лучше.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #120

149. Сообщение от Аноним (149), 27-Ноя-23, 23:43   +/
Вот и прекрасно, обнаружили - пофиксили, теперь ПО на божественной Сишечке стало только лучше. Не бывает багов только у тех языков, на которых ничего не пишут ))
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #162

150. Сообщение от Tron is Whistling (?), 27-Ноя-23, 23:49   +/
И вот тут начинается замечательная проблема.
Форкнул ты какой-нибудь ffmpeg для обработки. ENV туда благополучно унаследовался.
Весь этот твой ключ от S3 (который часто один, что не лучше самоподписного сертификата) ему не нужен, и он его не использует.
Но если там найдётся CVE с утечкой памяти процесса в результат - ну, ты понял.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #134

151. Сообщение от Tron is Whistling (?), 27-Ноя-23, 23:51   +/
А кто сказал, что env может утечь только через phpinfo?
Любая дыра с утечкой данных из памяти процесса во внешней 3rd-party тулзе - и привет.
Это при том, что самому процессу твой env вообще может быть не нужен, но поскольку его не почистили - он туда и унаследовался.

Мораль?
Чистить env надо после принятия параметров, чистить.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22

155. Сообщение от bOOster (ok), 28-Ноя-23, 08:19   +/
Абсолютно в тему :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #132

157. Сообщение от Аноним (157), 28-Ноя-23, 12:13   –1 +/
>Уязвимости в Perl

Помнится мне, что раньше на конференциях, в докладах, посвящённых уязвимостям в самом языке Perl, докладчик любил вставлять слайд, на котором было написано:
PERL IS DEAD, DON'T USE PERL.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #166

158. Сообщение от Аноним (135), 28-Ноя-23, 12:57   +/
То, что ему эти параметры НУЖНЫ?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #146 Ответы: #167

159. Сообщение от Серб (ok), 28-Ноя-23, 13:31   +/
Там не в индексах запутались, а в признаках типа кодировки.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #161

160. Сообщение от Аноним (160), 28-Ноя-23, 13:45   +1 +/
Как говорится, есть два стула. На одном придуманная сорок лет назад юникс-дедами система переменных окружения. На другом отдельный инстанс distributed reliable key-value store written in Go доступный только с конкретного контейнера, поднятый для того чтобы приложение почитало из него конфиг и пароли. На какой стул сам сядешь, а на какой смузихлёба посадишь?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #140

161. Сообщение от Аноним (135), 28-Ноя-23, 15:42   +/
UTF-8, с его переменным размером символа, требует некоторой возни с указателями.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #159 Ответы: #163

162. Сообщение от Аноним (135), 28-Ноя-23, 16:07   +/
> ПО на божественной Сишечке стало только лучше

Дыры его только украшают :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #149

163. Сообщение от Серб (ok), 28-Ноя-23, 16:37   +/
> UTF-8, с его переменным размером символа, требует некоторой возни с указателями.

Еще раз. Там проблема с их собственными хаками работы с utf8.

Когда в начале строки пишется признак того, что строка в utf8. Иногда дважды.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #161

166. Сообщение от ыы (?), 28-Ноя-23, 20:17   +/
и где этот докладчик теперь? а perl жив :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #157

167. Сообщение от Tron is Whistling (?), 28-Ноя-23, 21:06   +/
А переложить параметры в файлы конфигурации до запуска религия не позволяет?
Или в смузи-мирке так модно волатильные данные отдавать всем дочерним процессам, пока какой-нибудь не протечёт?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #158 Ответы: #168

168. Сообщение от Tron is Whistling (?), 28-Ноя-23, 21:06   +/
// s/волатильные/сенситивные/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #167


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

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




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

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