| 1.1, Аноним (1), 12:19, 05/01/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +/– | |
> отсутствие должной проверки файловых путей
Никогда такого не было и вот опять
| | |
| |
| 2.14, Аноним (14), 12:56, 05/01/2026 [^] [^^] [^^^] [ответить]
| +8 +/– | |
> Wget2 ... переписанный с нуля и полностью переработанный вариант ... уязвимость, допускающая перезапись произвольных файлов.
Получается, в исходном непереписанном вгете этого не было, а после переписывания - появилось?!
| | |
| 2.48, Аноним (48), 17:24, 05/01/2026 [^] [^^] [^^^] [ответить]
| –1 +/– |
Ребят, когда качаешь через Wget/Wget2 (с обычного https-сайта), провайдер не видит что скачиваешь?
| | |
| |
| |
| 4.77, Аноним (77), 13:20, 06/01/2026 [^] [^^] [^^^] [ответить]
| +/– | |
а чем url внутни http, отличается от содержимого? парочкой символов перевода строки..а, если https?
> От скачивания броузером особо не отличается.
в любом браузере есть опция экспорта запроса в curl/wget и тд, такой запрос вообще с точность до байта эквивалентен
| | |
| |
| 5.78, bergentroll (ok), 15:15, 06/01/2026 [^] [^^] [^^^] [ответить]
| +/– |
> а чем url внутни http, отличается от содержимого?
Вы правы, URL тоже зашифрован. Снаружи только сокет, на который идёт запрос.
| | |
|
|
|
| 2.72, Аноним (-), 02:49, 06/01/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> Никогда такого не было и вот опять
Нестареющая классика жанра :)
| | |
|
| 1.2, Аноним (2), 12:20, 05/01/2026 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Этих вгетов развелось еще... Подскажите, какой самый трушный и в чем разница?
| | |
| |
| 2.17, Аноним (14), 13:02, 05/01/2026 [^] [^^] [^^^] [ответить]
| –1 +/– | |
Ни тот, ни другой на паскале не написан.
> без проверки фактического размера записываемых данных
В паскале есть ключ компиляции array range check: в зависимости от ситуации делает проверку во время компиляции или при выполнении программы. В си - есть что-то подобное? Если есть, почему программисты об этом не знают? Если нету (а паскаль так-то постарше си будет) - почему никто из программистов не догадался добавить опцию в компилятор?
| | |
| |
| 3.22, Аноним (-), 13:20, 05/01/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> В си - есть что-то подобное?
Пф... ну у тебя и требования!
> Если есть, почему программисты об этом не знают?
Типикал Сишник даже стандарт не читал)
> Если нету (а паскаль так-то постарше си будет) - почему никто из программистов не догадался добавить опцию в компилятор?
Ты еще спроси когда СИшники осилили добавить boolean в язык))
Подсказка в С23.
Всего 50 лет ушло на то, что уже было в ALGOL 60.
Думаю еще через лет 20 они добавят data type String чтобы перестать каждый раз бегать в поискать null-terminator, терять его и получать очередную CVE.
| | |
| |
| 4.29, 12yoexpert (ok), 14:26, 05/01/2026 [^] [^^] [^^^] [ответить]
| +5 +/– |
> Ты еще спроси когда СИшники осилили добавить boolean в язык))
> Подсказка в С23.
вся суть маркетинга растосекты. сходил бы ты в гугл что ли
тебя ещё в проекте не было, когда в си добавили бул. просто на твоих сельских курсах вайтишников ни один инфоцыган об этом не знает
| | |
| |
| 5.30, Аноним (30), 14:39, 05/01/2026 [^] [^^] [^^^] [ответить]
| –1 +/– | |
> тебя ещё в проекте не было, когда в си добавили бул.
Если ты про stdbool.h то типиКАЛ костыли для недоязычка
#define true 1
#define false 0
dii.uchile.cl/~daespino/files/Iso_C_1999_definition.pdf
7.16 Boolean type and values <stdbool.h>
Особенно пocoсным выглядит пункт 4
Notwithstanding the provisions of 7.1.3, a program may undefine and perhaps then
redefine the macros bool, true, and false.
Но для недоязыков это нормально.
А вот тебе стандарт С23, надеюсь ты умеешь читать на английском.
open-std.org/jtc1/sc22/wg14/www/docs/n3220.pdf
6.4.4.6 Predefined constants
predefined-constant:
false
true
| | |
| |
| 6.43, Аноним (14), 16:49, 05/01/2026 [^] [^^] [^^^] [ответить]
| –1 +/– | |
> костыли для недоязычка
Помнится, они долго не могли сообразить, что такое nil, меняя определение несколько раз. Потом приняли, что это "тождественно равно числовому нулю".
| | |
| |
| 7.46, Аноним (46), 17:04, 05/01/2026 [^] [^^] [^^^] [ответить] | –1 +/– | А определение нуля они определили The macros are NULL which expands to an imp... большой текст свёрнут, показать | | |
| |
| 8.53, Аноним (14), 18:22, 05/01/2026 [^] [^^] [^^^] [ответить] | +/– | Продолжаем хохму Dereferencing a null pointer is undefined behavior in C - вр... текст свёрнут, показать | | |
|
|
|
|
| |
| 5.42, Аноним (-), 16:48, 05/01/2026 [^] [^^] [^^^] [ответить]
| –2 +/– | |
> тип boolean, конечно, не осилили добавить, а тип _Bool вообще-то с C99.
Да, я ж написал про stdbool.h
Особенно класно в "стандарте" прописан размер типа.
An object declared as type _Bool is large enough to store the values 0 and 1.
Вот прямым тестом "а фиг его знает, главное чтобы 0-1 влез".
Ну и сверху это щедро обмазывается ̶г̶о̶в̶н̶ макросами и дефайнами.
Но! В стандарте сказано, что если, не дай бог-машина, у вас где-то undef, то ваша программа превращается в тыкву.
Notwithstanding the provisions of 7.1.3, a program may undefine and perhaps then
redefine the macros bool, true, and false.2
| | |
| |
| 6.45, Аноним (14), 16:55, 05/01/2026 [^] [^^] [^^^] [ответить]
| –1 +/– | |
> Bool is large enough to store the values 0 and 1
Особенно классно, когда делают параметр Bool в многопараметрической функции из какой-нибудь библиотеки, а ты сидишь и гадаешь, а каким размером скомпилирован тот параметр, чтобы не промахнуться при обращении в список параметров?
| | |
| |
| 7.47, Аноним (-), 17:17, 05/01/2026 [^] [^^] [^^^] [ответить]
| –1 +/– | |
> сидишь и гадаешь
Зато не на паскале! (с)
Вооще читая что стандарт, что код удивляешься как оно вообще может работать.
И вспоминаешь байку про "программистов, дятла и конец цивилизации"))
| | |
|
| 6.51, Совершенно другой аноним (?), 17:50, 05/01/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
>> тип boolean, конечно, не осилили добавить, а тип _Bool вообще-то с C99.
> Да, я ж написал про stdbool.h
Ну, тогда при чём тут С23. В нём только, если правильно помню, решили, что путь уже будет bool штатным ключевым словом, а не переопределяться через #define на _Bool.
| | |
| |
| 7.52, Аноним (52), 17:57, 05/01/2026 [^] [^^] [^^^] [ответить]
| –2 +/– | |
В том что в C23 они смогли наконец то формализовать это самый бул.
Но он отличается от старого
The type bool shall have one value bit and (sizeof(bool)*CHAR_BIT)- 1
А теперь сравни это со старым
An object declared as type _Bool is large enough to store the values 0 and 1.
| | |
|
|
|
| 4.69, Аноним (69), 22:34, 05/01/2026 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Ты еще спроси когда СИшники осилили добавить boolean в язык))
> Подсказка в С23.
А ты, бедненький, не знал, что сишка прекрасно обходилась (и обходится) 0 и 1?
> Всего 50 лет ушло на то, что уже было в ALGOL 60.
И? Ты уверен, что под капотом там будет не те же самые 0 и 1?
| | |
|
| 3.25, Аноним (2), 13:41, 05/01/2026 [^] [^^] [^^^] [ответить]
| –1 +/– | |
>на паскале не написан
Меня вообще не это интересовало. Есть два каких-то wget. Зачем? Какой из них лучше и где глянуть сравнение?
| | |
| |
| |
| 5.70, хата (?), 00:24, 06/01/2026 [^] [^^] [^^^] [ответить]
| +/– |
Без поддержки socks даже через tsocks оно не нужно, в эпоху повсеместных квнвпнвлес у каждой второй бабушки.
| | |
|
|
| 3.60, Аноним (60), 20:32, 05/01/2026 [^] [^^] [^^^] [ответить]
| +/– | |
Потому что в си нет массивов, в нем есть указатели.
a[i] это просто синтаксический сахар для *(a + i)
| | |
| |
| 4.62, Аноним (62), 20:41, 05/01/2026 [^] [^^] [^^^] [ответить]
| –1 +/– |
Не совсем правда. Тип массива есть, но он существует только когда ты определяешь тип автоматической или статической переменной.А вот адресация внутри этого массива - да, синтаксический сахар, потому что массив всегда деградирует в указатель на первый элемент.
| | |
| |
| 5.68, Аноним (68), 21:43, 05/01/2026 [^] [^^] [^^^] [ответить]
| –1 +/– | |
> потому что массив всегда деградирует в указатель на первый элемент.
А потом чтобы узнать "а сколько у нас элементов" приходится бегать каждый раз до конца массива.
Или лепить сбоку и хранить отдельно.
| | |
| |
| 6.71, Аноним (69), 01:25, 06/01/2026 [^] [^^] [^^^] [ответить]
| +2 +/– | |
> чтобы узнать "а сколько у нас элементов" приходится бегать каждый раз до конца массива.
То есть, с Си ты знаком очень поверхностно.
| | |
| |
| 7.79, Аноним (-), 16:40, 06/01/2026 [^] [^^] [^^^] [ответить]
| +/– |
>> чтобы узнать "а сколько у нас элементов" приходится бегать каждый раз до конца массива.
> То есть, с Си ты знаком очень поверхностно.
Ну скажи мне сколько символов в unicode строке.
И как их быстро посчитать.
Строки в СИ это же массивы, да?))
| | |
|
| 6.81, Аноним (81), 23:08, 06/01/2026 [^] [^^] [^^^] [ответить]
| +/– |
Э, ну вот у меня указатель на первый элемент struct {}. Как мне узнать, сколько их там? Очевидно, никак. Размер должен передаваться как то. Или обычно считать, что элемент один.
| | |
|
| 5.73, Аноним (60), 09:31, 06/01/2026 [^] [^^] [^^^] [ответить]
| +/– |
это просто такой helper для выделения фиксированного непрерывного объема памяти на стеке (или глобальной преаллокации при старте программы). в итоге все равно имеем указатель
| | |
|
|
|
|
| 1.4, Аноним (-), 12:29, 05/01/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
GNU всегда было знаком какчества!
Буквально вчера была новость про GnuPG, которая позволяет обойти верификацию и выполнить свой код.
И вот теперь про GNU Wget...
| | |
| |
| 2.33, Аноним (33), 14:58, 05/01/2026 [^] [^^] [^^^] [ответить]
| +4 +/– |
Это GNU Wget2. Он хостится в каком-то болоте, не имеющем отношения к GNU.
| | |
|
| 1.9, Фнон (-), 12:44, 05/01/2026 [ответить] [﹢﹢﹢] [ · · · ] | –4 +/– | Звучит круто Фикс просто обалденный char fname_esc sizeof tmp buf len... большой текст свёрнут, показать | | |
| |
| 2.12, онанист (?), 12:53, 05/01/2026 [^] [^^] [^^^] [ответить]
| +2 +/– |
это ж опен сурсе
для тестирования , да и исправления,есть юзеры
тысячи глаз (тм)
| | |
| |
| 3.16, Аноним (-), 12:58, 05/01/2026 [^] [^^] [^^^] [ответить]
| +/– |
Зато можно с гордостью за свой код писать:
Around 2014, I began contributing to open-source projects and became (co-)maintainer of GNU Wget, GnuTLS, and GNU libidn. Two of my own projects, Wget2 and libpsl, are now packaged in almost every Linux distribution.
| | |
|
| 2.18, Аноним (18), 13:05, 05/01/2026 [^] [^^] [^^^] [ответить]
| +/– | |
Тут явно же видно, что не в перестановке дело а в условии.
Наиболее вероятно при просмотре условие инвертировал для читабельности, а выражения местами забыл поменять. Как вариант - отвлекли.
| | |
| |
| 3.21, Аноним (-), 13:11, 05/01/2026 [^] [^^] [^^^] [ответить]
| +/– |
> Наиболее вероятно при просмотре условие инвертировал для читабельности,
> а выражения местами забыл поменять.
Никто ничего не менял, код зашел одним коммитом.
gitlab.com/gnuwget/wget2/-/commit/3dc30f5f0c6f8feae97f866c537324f821ea05d6
Просто кто-то не умеет в память :)
> Как вариант - отвлекли.
Рептилоиды с Нибиру?)
| | |
| |
| 4.59, Аноним (18), 19:40, 05/01/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> Никто ничего не менял, код зашел одним коммитом.
Ты явно с Нибиру.
Как то что ты говорил опровергает то, что писал я?
У тебя нибирушная логика.
| | |
|
|
| 2.37, Аноним (37), 16:02, 05/01/2026 [^] [^^] [^^^] [ответить]
| +1 +/– | |
> Автор и первого б̶е̶к̶д̶о̶р̶а̶ бага и его исправления Tim Rühsen.
Немцы те еще бекдорщики :)
| | |
|
| 1.13, Аноним (-), 12:54, 05/01/2026 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
> переполнение буфера потенциально способное привести к
> исполнению кода
Никогда такого не было и вот опять!
> при обработке специально оформленных URL на загружаемых страницах
А можно дропать юзверю хомяка?
Офгенное решение чтобы всякие хитрецы не выкачивали сайт wget'ом.
| | |
| |
| 2.19, Аноним (14), 13:08, 05/01/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> Например, атакующий может перезаписать содержимое ... ~/.bashrc и добиться выполнения своего кода в системе
а в bashrc пишем известную команду по зачиствке хомяка...
| | |
| 2.82, Аноним (81), 23:24, 06/01/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> Офгенное решение чтобы всякие хитрецы не выкачивали сайт wget'ом.
Удивительная жадность.
| | |
|
| 1.20, Аноним (20), 13:09, 05/01/2026 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
А мне кажется, сишники специально делают CVE в своих опусах, ради чёрного пиара своих продуктов. Это же тоже пиар. Больше CVE - больше людей узнают о твоём GNU творении из новостей! Вот так вот!
| | |
| |
| 2.24, Аноним (-), 13:39, 05/01/2026 [^] [^^] [^^^] [ответить] | +3 +/– | Ты реально думаешь, что wget 1 был менее дыряв У меня для тебя плохие новости ... большой текст свёрнут, показать | | |
| |
| 3.63, Аноним (62), 20:52, 05/01/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
Эээ, а чё ему такие высокие очки накидали? Это юзерспейнсая программа, не требующая особых привилегий, а скор такой, будто баг в ядре нашли или в openssl.
| | |
|
|
| 1.35, Аноним (35), 15:42, 05/01/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Прямо-таки парад найденных в СПО уязвимостей. Косвенно это говорит о том, что ведется серьезная работа по уменьшению его дырявости, под будущую кибервойну. Можно на уровне сервисов внедрить _более безопасный_ раст, но остаться с дыркой в какой-нибудь крон джобе, использующей вгет.
| | |
| |
| 2.50, Fyji (-), 17:39, 05/01/2026 [^] [^^] [^^^] [ответить]
| –1 +/– | |
> Прямо-таки парад найденных в СПО уязвимостей.
Системы автоматического поиска проблем просто стали намного круче.
Стали доступны не только спецам.
И внезапно оказалось что диды код писать не умели.
| | |
| |
| 3.56, Аноним (35), 19:27, 05/01/2026 [^] [^^] [^^^] [ответить]
| +/– | |
Системы эффективно применить тоже нужны спецы. В конечном счете все сводится к наличию ресурсов на все это.
> внезапно оказалось что диды код писать не умели
Спойлерну: отцы, дети и внуки тоже не умеют. Точнее умеют, но не будут. То есть будут, но при финансировании которого не будет, поэтому не будут ))
| | |
| 3.66, Аноним (14), 21:29, 05/01/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> диды код писать не умели
Или наоборот - умели? Как история с пейджерами.
| | |
|
|
| 1.64, kusb (?), 21:00, 05/01/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Блин, эти уязвимости удивительно похожи, такое ощущение, что с ними можно справиться централизованно.
| | |
| |
| 2.65, Аноним (14), 21:28, 05/01/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> с ними можно справиться централизованно
Можно. Но почему-то не нужно.
| | |
|
|