The OpenNET Project / Index page

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



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

Оглавление

Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 , opennews (ok), 06-Янв-24, (0) [смотреть все]

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


19. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +2 +/
Сообщение от Аноним (19), 06-Янв-24, 12:20 
- const unsigned sum = unsigned(name.size() + value.size());
+ size_t sum;
+ if (qAddOverflow(size_t(name.size()), size_t(value.size()), &sum))
+     return HeaderSize();

Ну забыли проверить размер, ну бывает!

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

22. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  –1 +/
Сообщение от Агл (?), 06-Янв-24, 13:13 
"Безопасность в коде определяется не отсутствием дыр, а возможностью программистов их вовремя прикрывать!"
Ответить | Правка | Наверх | Cообщить модератору

23. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (23), 06-Янв-24, 13:34 
Если попало в новости, значит, вовремя не прикрыли.
Ответить | Правка | Наверх | Cообщить модератору

26. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +1 +/
Сообщение от Аноним (26), 06-Янв-24, 14:34 
Как раз вовремя, потому что не пришлось втихую патчить.
Ответить | Правка | Наверх | Cообщить модератору

50. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (50), 07-Янв-24, 04:53 
Обезвреживать, глеб егорыч
Ответить | Правка | К родителю #22 | Наверх | Cообщить модератору

32. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (32), 06-Янв-24, 15:20 
По версии местных ыкспертов, программисты, которые допускают такие ошибки, должны быть разжалованы из программистов, а проект быть нареченным говнокодом. Правда, за десятки лет так и не научились писать на языках с ручным управлением памяти без ошибок, так что по такой логике нет настоящих программистов.
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

37. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +1 +/
Сообщение от Аноним (37), 06-Янв-24, 18:19 
Именно так, потому как надо точно понимать то что ты пишешь и хотя бы владеть инструментами тестирования если ты такой тупой.
Чтобы писать на языках с управлением памятью надо почитать как это делается и иметь обычай перепроверять вручную все обращения к памяти.
А если эти упыри с с искуственным интеллектом заведут работать суперкомпьютер высчитывая вероятность написать код правильно ударами модотка по корпусу, то скорее всего он еще и выдаст что шанс ненулевой даже, хотя всем понятно что именно нулевой на практике.
Ответить | Правка | Наверх | Cообщить модератору

44. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (44), 06-Янв-24, 23:39 
>  и хотя бы владеть инструментами тестирования если ты такой тупой.

гугловцы утверждают, что мало помогает, прям совсем. Но да, поверю тебе, что они там просто все тупые, поголовно.

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

55. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (55), 07-Янв-24, 09:22 
Наоборот, гугловцы предлагают одни из лучших инструментов для тестирования и они помогают им еще как! Хром почти не крашится, уязвимостей немного и оперативно исправляются.
Ответить | Правка | Наверх | Cообщить модератору

86. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (86), 07-Янв-24, 21:27 
Судя по тому что практически в любом мало мальски крупном проекте был юи такие ошибки, то стоит признать что ручное управление памятью оно не для кожанных мешков с костями. Раз за несколько десятков лет этот класс ошибок не только не остался в прошлом, но и остаётся в топе популярных.
Ответить | Правка | К родителю #37 | Наверх | Cообщить модератору

35. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +2 +/
Сообщение от Аноним (6), 06-Янв-24, 15:45 
>> if (qAddOverflow(size_t(name.size()), size_t(value.size()), &sum))

зачем вообще писать на С++ генерируя такие конструкции

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

38. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +1 +/
Сообщение от Аноним (38), 06-Янв-24, 19:11 
А что и на что вы предлагаете заменить?
Ответить | Правка | Наверх | Cообщить модератору

67. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (67), 07-Янв-24, 16:38 
Тут гогнодизайн в самом API: вместо того, чтобы size() ф-ии как, и везде в мире, возвращали size_t, они возвращают ssize_t (знаковый тип). Нужно, очевидно, наконец таки убрать маразм из своей кодовой базы, ну или сделать костыль в виде некой свободной ф-ии типа питоновского len(...)
Ответить | Правка | Наверх | Cообщить модератору

68. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (67), 07-Янв-24, 16:44 
Ну и qAddOverflow(...) зачем-то берёт последний аргумент по указателю, хотя в данном случае нужно по ссылке. Так обычно делают когда аргумент опиционален, но здесь он обязателен и если положить nullptr, то код сложится. В общем, весь Qt устарел на не один десяток лет. Ссылки в с++ появились где-то в 1985, первый Qt появился в 1991.
Ответить | Правка | К родителю #38 | Наверх | Cообщить модератору

40. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +1 +/
Сообщение от _ (??), 06-Янв-24, 20:32 
> зачем вообще писать на С++ генерируя такие конструкции

А ты вообще в курсе _ЧТО_ такое  Qt ?!  

... не думаю! ;-)

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

101. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (101), 08-Янв-24, 13:14 
Qt... Что-то из области маркетинга, видимо.
Ответить | Правка | Наверх | Cообщить модератору

43. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  –1 +/
Сообщение от Аноним (43), 06-Янв-24, 22:14 
Кути пришли из 90х. Ты помнишь плюсы тех лет?
Ответить | Правка | К родителю #35 | Наверх | Cообщить модератору

61. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Советский инженер (ok), 07-Янв-24, 10:32 
>Кути пришли из 90х. Ты помнишь плюсы тех лет?

а из каких годов пришел HTTP/2 ?

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

49. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноньимъ (ok), 07-Янв-24, 04:19 
А если всё проверять то будет не производительно (( и код дольше писать.

Окажется что сишечка не быстрее гошечки да джавы. А так нельзя.

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

69. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (67), 07-Янв-24, 16:48 
В данном случае это особенность формата HPACK, он хитрый и нужно много проверять. Тут проверки на итоговые задержки практически не повлияют. Во всяком случае сначала нужно написать корректный код с проверками, а потом аккуратно оптимизировать. Тут же сразу на от...сь сложили два unsigned и результат проверили на переполнение сравнением с max<unsigned>(). Даже не пытались не нагогнокодить
Ответить | Правка | Наверх | Cообщить модератору

76. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноньимъ (ok), 07-Янв-24, 17:12 
> Во всяком случае сначала нужно написать корректный код с проверками

Автоматически увеличивает строк кода в сишечной программы в 3-5 раз. Соответственно и трупрограммисто рабочих часов. На самом деле часов будет больше, так как растёт не линейно.

> Тут же сразу на от...сь сложили два unsigned

Обычная сишечная практика.

> и результат проверили на переполнение сравнением с max<unsigned>()

И вот реально, наняли же на работу, платят человеку ЗП.

> Даже не пытались не нагогнокодить

По другому почти никогда и не бывает. Особенно с сишкой. Потому как читать первую часть комментария, иной подход требует очень дорогих специалистов и кучу человеко-часов.

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

79. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (67), 07-Янв-24, 17:35 
Чушь пишеь, это c++ и здесь всё можно посахарить до уровня питона
Ответить | Правка | Наверх | Cообщить модератору

81. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноньимъ (ok), 07-Янв-24, 18:29 
Сишка и сипипишка конечно отличаются. Сишка просто несколько хромосом лишних имеет. Но сипипишка страдает острой маниакальной шизофренией.

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

Только С# изобрели много много лет назад, и ненужно вот таким вот в нём заниматься вообще, оно уже всё там есть.

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

82. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  –1 +/
Сообщение от Аноним (67), 07-Янв-24, 19:25 
Какая ты всё-таки бестолочь. C# тормоз и не гибкий ЯП
Ответить | Правка | Наверх | Cообщить модератору

100. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +2 +/
Сообщение от Аноньимъ (ok), 08-Янв-24, 12:39 
> Какая ты всё-таки бестолочь. C# тормоз и не гибкий ЯП

Если С# - не гибкий, пишите на F#.

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

90. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  –2 +/
Сообщение от Аноним (90), 07-Янв-24, 21:48 
>С# изобрели много много лет назад

Ага, каждая программа гвоздями прибита к конкретной .Net Core, дофига зависимостей и пакетам нюгета. Ффзвезду ЯП с таким рантаймом.

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

91. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от анон (?), 07-Янв-24, 23:24 
.Net поддерживает компиляцию в нативный код (как и Java к слову, но с ограничениями)
Ответить | Правка | Наверх | Cообщить модератору

99. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноньимъ (ok), 08-Янв-24, 12:18 
> Ага, каждая программа гвоздями прибита к конкретной .Net Core, дофига зависимостей и
> пакетам нюгета. Ффзвезду ЯП с таким рантаймом.

У С++ дела с этим гораздо ХУЖЕ.

И вообще, дотнетовские программы то обычно жаст воркс, и им для этого ненужен пАкЕтНый меНеджЕр.

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

117. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Котофалк (?), 09-Янв-24, 09:27 
>  жаст воркс

жаст котегов себе заведи жаст пяток. Ну чтобы выяснить, что кроме "жаст" ещё нужно чтоб к лотку были приучены. Да и других тонкостей вагон. Да и дотнетовский "жаст воркс" тоже ожидается что конфиги на месте (там где определил дистр), логи на месте, органы управления на месте. Но у дотнетчиков понятное дело не так. Весь пар в жалобы про пакетный менеджер в пабликах.

И да, "жаст ворк" это про static линковку? Это вы  так удивить пытались?

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

63. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от cheburnator9000 (ok), 07-Янв-24, 13:11 
Просто кому-то захотелось выпендриться и написать феерическое "const unsigned" чтобы что не ясно, вместо условного unsigned long long или Qt-шного quint64.
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

77. "Уязвимость в предлагаемой в Qt реализации протокола HTTP/2 "  +/
Сообщение от Аноним (67), 07-Янв-24, 17:15 
Размер то они проверили, но не осилили сложить два unsigned без переполнения
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

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

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




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

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