The OpenNET Project / Index page

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



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

"Уязвимость в Dropbear SSH, допускающая подстановку команд в dbclient"  +/
Сообщение от opennews (??), 12-Май-25, 10:58 
Опубликован выпуск проекта Dropbear 2025.88, развивающего  сервер и клиент SSH, получивший распространение в  беспроводных маршрутизаторах и компактных дистрибутивах, подобных OpenWrt. В новой версии устранена уязвимость (CVE-2025-47203) в реализации SSH-клиента (программа dbclient), позволяющая выполнить shell-команды при обработке специально оформленного имени хоста. Уязвимость вызвана отсутсвием экранирования спецсимволов в имени хоста и использованием командного интерпретатора при запуске команд в режиме multihop (несколько хостов, разделённых запятой). Уязвимость представляет опасность для систем, запускающих dbclient с непроверенным именем хоста...

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

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

Оглавление

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


1. Скрыто модератором  –3 +/
Сообщение от Аноним (1), 12-Май-25, 10:58 
Ответить | Правка | Наверх | Cообщить модератору

2. Скрыто модератором  +10 +/
Сообщение от Аноним (2), 12-Май-25, 11:05 
Ответить | Правка | Наверх | Cообщить модератору

11. Скрыто модератором  +3 +/
Сообщение от Аноним (11), 12-Май-25, 11:48 
Ответить | Правка | Наверх | Cообщить модератору

14. Скрыто модератором  +1 +/
Сообщение от aname (?), 12-Май-25, 11:55 
Ответить | Правка | Наверх | Cообщить модератору

15. Скрыто модератором  +/
Сообщение от Аноним (15), 12-Май-25, 12:08 
Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

20. Скрыто модератором  +2 +/
Сообщение от Аноним (20), 12-Май-25, 12:39 
Ответить | Правка | Наверх | Cообщить модератору

28. Скрыто модератором  +/
Сообщение от 12yoexpert (ok), 12-Май-25, 14:03 
Ответить | Правка | Наверх | Cообщить модератору

35. Скрыто модератором  +1 +/
Сообщение от Аноним (-), 12-Май-25, 15:06 
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

18. Скрыто модератором  +/
Сообщение от Аноним (20), 12-Май-25, 12:34 
Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

3. Скрыто модератором  +6 +/
Сообщение от Аноним (3), 12-Май-25, 11:08 
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

8. Скрыто модератором  +4 +/
Сообщение от Аноним Анонимович Анонимов (?), 12-Май-25, 11:45 
Ответить | Правка | Наверх | Cообщить модератору

12. Скрыто модератором  +/
Сообщение от aname (?), 12-Май-25, 11:49 
Ответить | Правка | Наверх | Cообщить модератору

9. Скрыто модератором  +/
Сообщение от Аноним (11), 12-Май-25, 11:46 
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

13. Скрыто модератором  +/
Сообщение от aname (?), 12-Май-25, 11:54 
Ответить | Правка | Наверх | Cообщить модератору

17. Скрыто модератором  +/
Сообщение от Аноним (-), 12-Май-25, 12:34 
Ответить | Правка | Наверх | Cообщить модератору

30. Скрыто модератором  +/
Сообщение от Аноним (11), 12-Май-25, 14:17 
Ответить | Правка | К родителю #13 | Наверх | Cообщить модератору

43. Скрыто модератором  +/
Сообщение от aname (?), 12-Май-25, 16:59 
Ответить | Правка | Наверх | Cообщить модератору

4. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (4), 12-Май-25, 11:08 
>использованием командного интерпретатора при запуске команд

Сколько раз твердили миру: за использование `exec` для чего-либо кроме запуска команд, которые пользователь приказал запустить, нужно к стенке ставить.

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

36. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (-), 12-Май-25, 15:12 
>>использованием командного интерпретатора при запуске команд
> Сколько раз твердили миру: за использование `exec` для чего-либо кроме запуска команд,
> которые пользователь приказал запустить, нужно к стенке ставить.

Скорее за system(). Exec значительно безопаснее. Но ssh с его юниксвеем так работает что вот именно ssh сделать именно безопасно - и не встав на грабли - не очень просто. Допушения неудобные, и от клиента и от сервера требуется жесткая валидация все и вся, иначе те два самосвала грабель в полях - заедут ручкой по лбу, и еще скажите спасибо если оптимизаторы топор не насадили.

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

45. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (45), 12-Май-25, 17:29 
Shell-out — самый обычный unix-way, в TAoUP это описано и именно в этом ключе. Ты сейчас фактически предложил поставить к стенке тех самыд дидов, которые юниксы сваяли и их ортодоксию^Wфилософию заложили.
Ответить | Правка | К родителю #4 | Наверх | Cообщить модератору

52. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (52), 12-Май-25, 18:38 
Знаешь, unix-way - это вообще не об использовании баша. Он о декомпозиции. Более того, под "программами" "диды" понимали в том числе библиотеки. Это винда приучила всех делить на "приложение" и "компонент приложения" (dynamic-link-library). Академия, откуда родом "диды" - называла библиотеки библиотеками подПРОГРАММ, то есть "библиотека" - это на самом деле жаргон, ставший нормой. Unix-way не говорит нам завязываться на баш. Шелл вообще может быть полностью объектно-ориентированным, где вообще никаких пайпов, да и вообще никаких программ, а одни библиотеки, которые можно комбинировать любым способом. Причём безопасно (если без бэкдоров, но есть способы сделать так, что безопасно будет даже с бэкдорами ... и всё равно в рамках одного процесса!).

А использование шелла везде где попало - это просто тараканы в головах некоторых.

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

58. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (-), 12-Май-25, 20:14 
> Шелл вообще может быть полностью объектно-ориентированным

Вообще-то McIlroy прямо требует:
"Write programs to handle text streams"

Так что объектно-ориентированный уже будет нарушением unix-way.

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

5. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (5), 12-Май-25, 11:09 
Так уязвимость получается не для серверов (маршрутизаторов), а для клиента.
Ответить | Правка | Наверх | Cообщить модератору

6. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Смузихлеб забывший пароль (?), 12-Май-25, 11:25 
> Уязвимость вызвана отсутсвием экранирования спецсимволов в имени хоста

Как же это замечательно. Зато, наверняка, и по типам всё проверяется и всё норм и всевозможные интеграции-тестирования успешно проходит и разработчики всевозможные КоК'и соблюдают да кодят "согласно регламентам и требованиям к оформлению"

Только, дыра есть. Точнее, дырища прямо на месте парадного входа, через которую и авианосец пролезет. Но это - мелочи. Главное - всё по регламентам. А остальное - мелочи

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

10. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от aname (?), 12-Май-25, 11:48 
А как надо?
Ответить | Правка | Наверх | Cообщить модератору

16. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (16), 12-Май-25, 12:28 
Главное что контроль за софтом - кого надо. От вредоносной функцио-анальности внесённой самим автором не защитит ничего. И у автора есть железобетонная отмазка: "проект делался исключительно для себя, я вас не заставлял его юзать"
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

26. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  –1 +/
Сообщение от Аноним (26), 12-Май-25, 13:49 
Правильная система типов, с введением типа наподобие ExecArgumentString, который можно получить только как результат экранирования (function escapeExecArgument(string): ExecArgumentString), и который требуется сигнатурой exec(), проблему как раз решает.

Но про типы в этом контексте почему-то редко думают.

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

27. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (26), 12-Май-25, 13:49 
Правильная система типов, с введением типа наподобие ExecArgumentString, который можно получить только как результат экранирования (function escapeExecArgument(string): ExecArgumentString), и который требуется сигнатурой exec(), проблему как раз решает.

Но про типы в этом контексте почему-то редко думают.

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

29. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  –1 +/
Сообщение от Аноним (-), 12-Май-25, 14:04 
Пффф... О каких типах может идти речь,
если в том коде они вручную считали длину с magic numbers

- len += 4 + strlen(key->filename);

С другой стороны, что от сишки можно ожидать. Какие-то типы? Они даже строки нормальные не осилили.

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

31. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (11), 12-Май-25, 14:52 
> Правильная система типов, с введением типа наподобие ExecArgumentString, который можно
> получить только как результат экранирования (function escapeExecArgument(string): ExecArgumentString),
> и который требуется сигнатурой exec(), проблему как раз решает.
> Но про типы в этом контексте почему-то редко думают.

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


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

37. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (26), 12-Май-25, 15:22 
Я специально псевдокодом, синтаксически далёким от C, написал, чтобы было понятно, что я не про конкретный язык, а про то, что в типизации важна не только техническая, но и смысловая сторона. 10 долларов и 10 яблок - это разные вещи. Так же как и строка, несмотря на то, что это просто массив байт технически, может нести совершенно разную смысловую нагрузку.

Я такой подход называю "типизация вместо валидации". Провалидировать строку можно забыть. А если у меня тип Email, то я уверен, что этот массив байт прошёл валидацию и содержит валидный Email. А если окажется невалидный, то единственное проблемное место - это конструктор типа (emailFromString).

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

41. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (11), 12-Май-25, 16:28 
> Я специально псевдокодом, синтаксически далёким от C, написал, чтобы было понятно, что
> я не про конкретный язык, а про то, что в типизации
> важна не только техническая, но и смысловая сторона.

...
> А если у меня тип Email, то я уверен, что этот
> массив байт прошёл валидацию и содержит валидный Email. А если окажется
> невалидный, то единственное проблемное место - это конструктор типа (emailFromString).

Это-то понятно, но как раз без "технической стороны" (т.е. поддержки ЯП/компилятором) привычку к такому подходу выработать довольно сложно, как и следовать ему (если только ты не единственный разработчик или не начнешь костылять с помощью struct и прочего, потому что сишный typedef - просто алиас).

Т.е. пишущие в основном на Си (в лучших традициях "Настоящий Погроммист может писать программы на Фортране^W Си на любом языке!") зачастую просто не в курсе, что "так тоже можно было" ...

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

49. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  –1 +/
Сообщение от Аноним (-), 12-Май-25, 17:56 
> Во-первых, в си - слабая типизация, с неявными приведениями и прочим (как
> и куча легаси)

Можно и не очень слабую сделать.
1) -Werror в хороших проектах так то норма.
2) typedef struct ... something_t - и теперь вообще попробуйте вместо something_t или такого указателя что-то другое дать вообще.
3) Со строками 2) кстати прекрасно катит и можно завести строки с .len.

> Во-вторых -- ошибка там как раз в (самопальной) функции экранирования.

#define "самопальный" :)


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

7. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  –1 +/
Сообщение от Аноним (7), 12-Май-25, 11:39 
> Уязвимость вызвана отсутсвием экранирования спецсимволов в имени хоста

Подозреваю, что надо сказать спасибо дидам, которые накалякали невнятные RFC с взаимоисключающими определениями, какие символы допустимы, а какие нет.

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

22. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +1 +/
Сообщение от Аноним (22), 12-Май-25, 12:50 
Opennet, это такой большой багтреккер.
Ответить | Правка | Наверх | Cообщить модератору

24. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +6 +/
Сообщение от Аноним (24), 12-Май-25, 13:44 
Баттхерт-треккер, я бы сказал)
Ответить | Правка | Наверх | Cообщить модератору

50. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (-), 12-Май-25, 17:57 
> Баттхерт-треккер, я бы сказал)

Или просто батт-трекер, я бы сказал. Даже индекс топа a$$h0l3z интернета запросто может быть.

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

25. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (24), 12-Май-25, 13:46 
Мда, всегда лично смотрел с подозрением на сабж, а после новости, тем более нафиг. Лучше уж что то стандарное, но протестированное.
Ответить | Правка | Наверх | Cообщить модератору

44. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (44), 12-Май-25, 17:08 
Поднимите руки те, кто использовал их клиентскую реализацию
Серверная в том же OpenWRT и всех прошивках на нем базирующихся(в том числе у Сяоми, у Тенды и прочих бюджетных роутерах), а вот где и кто использует их клиент вместо нормального из OpenSSH я не знаю и не встречал, если честно
Ответить | Правка | Наверх | Cообщить модератору

46. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (45), 12-Май-25, 17:36 
Никогда не приходилось заходить по ssh прямо с роутера по link-local IP на полуживой хост? Хотя, глядя на OpenWRT, понимаю, что быстрее под кровать залезть и моник с клавой подключить, чем что-то там реанимировать как будто бы это unmanned pop за тридевять земель. Пожалуй ты прав, клиентом мало кто пользуется за пределами локалхоста, так что проблема несущественная. Поправили, и на том спасибо. Удивительно, что вообще заметил кто-то.
Ответить | Правка | Наверх | Cообщить модератору

47. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (44), 12-Май-25, 17:42 
Знаешь, у меня у всех роутеров с ОпенВРТ достаточный объем накопителя и я всегда просто его собираю с клиентом от OpenSSH, вот и вообще не видел клиент от dropbear

Не, я помню как пару лет назад зачем-то пытался вспомнить как этот клиент вообще зовут, сидел и минут пять тупил, без гуглежа так и не мог вспомнить

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

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

55. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (55), 12-Май-25, 18:56 
Dropbear в реальных системах вроде облаков популярен. Ну, в целом его любят за то, что он минималистичный и стабильный, чего про openssh никак не скажешь. Кто любит? Разные серьёзные дяди с датацентрами.
Ответить | Правка | Наверх | Cообщить модератору

53. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (53), 12-Май-25, 18:43 
Дорогой, если ты клиент вручную можешь запустить, то и ту команду, которую ты в имя хоста зачем-то воткнул, можешь и так запустить. Не понимаю чего все так возбудились.   Уязвимость скорее из категории когда клиента невозможно запускать вручную (нет шелла, только вэбморда какая нибудь которая дергает клиент для заданного хоста). Вот тогда приплетаешь хитрым образом шелл к имени хоста - и вуаля.
Ответить | Правка | К родителю #46 | Наверх | Cообщить модератору

54. "Уязвимость в Dropbear SSH, допускающая подстановку команд в ..."  +/
Сообщение от Аноним (54), 12-Май-25, 18:46 
Набирать dbclient для ssh клиента... ШТА ?
Какой гений выбирал имя команды ?
Я если бы даже захотел - в жизнь бы не догадался.
Ответить | Правка | К родителю #44 | Наверх | Cообщить модератору

56. Скрыто модератором  +/
Сообщение от zionist. (?), 12-Май-25, 20:03 
Ответить | Правка | Наверх | Cообщить модератору

51. Скрыто модератором  +/
Сообщение от Аноним (-), 12-Май-25, 18:07 
Ответить | Правка | Наверх | Cообщить модератору

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

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




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

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