1.1, Аноним (1), 16:12, 11/10/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Нееет, хватит!
Я уже устал ржать!
- socksreq[len++] = (char) hostname_len; /* one byte address length */
+ socksreq[len++] = (unsigned char) hostname_len; /* one byte length */
О мой глоб /_-
| |
|
|
3.6, Аноним (1), 16:31, 11/10/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Возможно еще через 1315 дней можно будет получить еще 4к баксов)
| |
3.9, ТОФУ (?), 16:38, 11/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
Видимо, для поддержки легаси компиляторов. Вы удивитесь, но в некоторых опенсорс проектах можно найти поддержку даже ANSI C - C89, с кучей грязных хаков.
| |
|
4.77, Аноним (77), 09:42, 12/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
>потому что char всегда 1 байт
кто такое сказал? может очень нужеый ISO стандарт?
| |
|
5.96, пох. (?), 20:00, 12/10/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
>>потому что char всегда 1 байт
> кто такое сказал? может очень нужеый ISO стандарт?
Вот самое мерзотное в языке Си - это как раз та непонятная муха, укусившая Ритчи, из-за которой он за каким-то совершенно неведомым хреном придумал эти char использовать не по назначению.
Причем в bcpl БЫЛ тип byte.
Как, ну как можно было так долбануться?
| |
|
|
|
2.11, Аноним (11), 16:40, 11/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
Просто нужны проверки, статанализатор и божественные сишники (которые обитают только на опеннете, а в дикой природе не водяться).
| |
|
3.50, Аноним (-), 18:49, 11/10/2023 [^] [^^] [^^^] [ответить]
| +3 +/– |
> Просто нужны проверки, статанализатор и божественные сишники (которые обитают
> только на опеннете, а в дикой природе не водяться).
Автор сабжа так то вполне крутой и правильный сишник. А лоханулся он в общем то в процессе ... рефактора. Когда приделал логику резольвера к машине состояний - на что оно изначально расчитано не было вообще. Ну дальше логика и отъехала.
p.s. а дебиан уже обновил эту штуку.
| |
|
4.57, пох. (?), 20:06, 11/10/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Автор сабжа так то вполне крутой и правильный сишник. А лоханулся он
> в общем то в процессе ... рефактора. Когда приделал логику резольвера
> к машине состояний - на что оно изначально расчитано не было
> вообще. Ну дальше логика и отъехала.
а вот писал бы на нескучном язычке - не было бы проблемы с логи... waaaait... oh shi....
впрочем, не написал бы а начал бы переписывать - все б получилось. Но он почему-то не хочет.
> p.s. а дебиан уже обновил эту штуку.
а смысл? многие реально используют libcurl для хождения через socks5 на вредоносные сайты?
проблема - яйца выеденного не стоила. новость от любителей хрустохайпа.
| |
|
5.61, Аноним (-), 21:20, 11/10/2023 [^] [^^] [^^^] [ответить] | +/– | Думаешь, питоняша вообще в курсе что такое машина состояний И тем более может н... большой текст свёрнут, показать | |
5.67, Аноним (67), 02:43, 12/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
А как нескучный язык на этапе компиляции определит, что потом, во время работы курлу не прилетит урл длиннее 64 (кб или скок там)? Или просто внедрит то, что в ненавистных паскалях было уже десятилетия назад?
| |
|
6.70, пох. (?), 07:41, 12/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
> А как нескучный язык на этапе компиляции определит, что потом, во время
> работы курлу не прилетит урл длиннее 64 (кб или скок там)?
как всегда когда ему надо работать с данными из внешнего источника - unsafe { мамой клянус что бэзопастно! }
> Или просто внедрит то, что в ненавистных паскалях было уже десятилетия
> назад?
просто пока будешь на нем писать стейтмашину - зае...шься бегать от борова и сдохнешь. Нет кода - нет увизгвимостей!
| |
6.82, Аноним (11), 11:29, 12/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
Язык никак не определит, но переполнения буфера бы не было. Да, туда бы попал только обрезанный урл и это всё привело бы к ошибке, но это была бы просто ошибка в curl (в крайней случае курл бы просто упал), а не уязвимость с возможность запустить код.
| |
|
|
4.83, Аноним (11), 11:30, 12/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
Ты не смог в сарказм. А автор и правда матёрый сишник. И код у него настоящий, а не как у местных божественных сишников.
| |
|
|
2.52, пох. (?), 18:56, 11/10/2023 [^] [^^] [^^^] [ответить]
| –5 +/– |
И пофиг что оно никогда бы не вызвало проблемы - если бы автор не банально запутался в _логике_ своей "стейт машины".
щвятой хруст от этого конечно бы безусловно помог - хрен бы тот осилил написать стейтмашину попутно без конца бегая от безумного борова. Нет кода - нет и увизгвимостей, шах и мат неудачники.
| |
|
3.54, Аноним (1), 19:20, 11/10/2023 [^] [^^] [^^^] [ответить]
| –2 +/– |
Какой громкий пук!
Естественно, только "пох" знает, что мог или не мог автор. Вот это самомнение!
Даже несмотря на то что сам автор говорит, что нескучный язычек помог бы решить эту проблему.
| |
|
2.102, Ivan_83 (ok), 00:02, 13/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
Когда включаешь в clang максимальные варинги он ещё и не такое начиает обругивать.
Но это же надо потом тыщи варнингов отсмотреть и исправить...
Поэтому никто не включает.
| |
|
1.7, Аноним (1), 16:35, 11/10/2023 [ответить] [﹢﹢﹢] [ · · · ] | +2 +/– | У автора фикса довольно интерсная статья https daniel haxx se blog 2023 10 11 ... большой текст свёрнут, показать | |
|
2.22, Аноним (1), 16:59, 11/10/2023 [^] [^^] [^^^] [ответить]
| +5 +/– |
Если я правильно нашел его линкедын, то он Professional C++ development for Unix и Technical Lead C++, а на момент написания бага Independent Computer Software Professional
Это просто какой-то позор (с)
| |
|
3.26, Аноним (26), 17:10, 11/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
Вполне определённый позор. Но, в то время было значительно хуже со статическими анализаторами (хотя и сегодня не каждый использует smatch) и дешёвых рантайм анализаторов вроде asan, которые можно было бы пофаззить, тоже не существовало. Я, конечно, не утверждаю, что автор что-то из этого умеет использовать и сегодня.
| |
|
4.29, Анонимусс (?), 17:15, 11/10/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
В какое "то время" O_o?
Socks вмерджили в основную ветку курлс в феврале 2020 года
"On February 14 2020 I landed the main commit for this change in master. It shipped in 7.69.0"
Не, ну я понимаю, что сейчас время такое, что год за пять идет)))
| |
|
3.40, Аноним (17), 17:58, 11/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
Кстати в плюсах не приняты такие касты. Там принят static_cast<>. Очень длинно и заставляет задуматься.
| |
|
|
|
|
3.85, Аноним (85), 12:25, 12/10/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Глупость, очевидно, что развитие будет только при устранении уязвимостей.
| |
|
|
1.56, Аноним (56), 20:03, 11/10/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
$4660 не за эксплуатацию уязвимости, а просто за переполнение? Не многовато ли?
| |
|
2.65, Да ну нахер (?), 21:43, 11/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
Для иностранцев четыря тыщи это наоборот же очень мало вроде? Я слышал там за четыре тыщи пустой main пишут, и то в неделю.
| |
|
3.68, Аноним (67), 02:45, 12/10/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
Этого хватит чтобы оплатить электричество, потреблённое компьютером и хотдог.
| |
|
|
1.74, Аноним (74), 09:04, 12/10/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Что же получается, помимо указанной уязвимости? Если в качестве SOCKS5 используется TOR, то если длина URL > 256, имеет место обращение к DNS, следовательно, возможен деанон. Если, конечно, правилами файервола не запрещено прямое хождение в инет.
| |
|
2.88, Аноним (88), 12:47, 12/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
Это неэксплуатабельно в интернете: DNS-имя не может быть больше 254 байт. Поэтому протокол SOCKS5 такие длинные имена и не поддерживает.
| |
|
1.81, Аноним (81), 11:28, 12/10/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
>При длине имени хоста до 256 символов curl сразу передаёт имя в SOCKS5-прокси для резолвинга на его стороне, а если имя больше 255 символов переключается на локальный резолвер и передаёт в SOCKS5 уже определённый адрес.
Вот так можно деанонимизировать пользователей Tor, из-за бэкдора в libcurl?
| |
|
2.84, Аноним (11), 11:37, 12/10/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
Любая потенциально возможная к эксплуатации уязвимост ьв сетевом софте может потенциально быть деанонимизирующей.
Для тебя это новость?
| |
|
3.86, Аноним (86), 12:28, 12/10/2023 [^] [^^] [^^^] [ответить] | +/– | Походу эта бырка была для кого надо дырка https github com curl curl commit fb... большой текст свёрнут, показать | |
|
4.87, Аноним (88), 12:47, 12/10/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Эта дырка неэксплуатабельна в интернете: DNS-имя не может быть больше 254 байт. Поэтому протокол SOCKS5 такие длинные имена и не поддерживает.
| |
|
|
|
1.92, uis (??), 18:04, 12/10/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Если сильно фапать на безопасность, можно просто собирать с hardened параметрами копмпилятора, а если фапать ещё упорнее, то с -fsanitize=address
| |
|
2.103, Ivan_83 (ok), 00:04, 13/10/2023 [^] [^^] [^^^] [ответить]
| +/– |
Вы что то путаете.
Санитайзер сборки они для отладки.
Чтобы найти эту и подобные проблемы обычно достаточно включить все доступные варнинги и компилятор покажет все похожие места.
| |
|
|