| 1.3, FSA (ok), 10:58, 26/10/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Забавно. Где-то была диаграмма популярности языков для веба. На первом месте был PHP с 70%. А на втором Ruby. Но когда нашли уязвимость в PHP - все стояли на ушах. А тут вообще всем пофигу :-D
| | |
| |
| 2.14, Аноним (14), 11:32, 26/10/2026 [^] [^^] [^^^] [ответить]
| +3 +/– |
А когда найдут дырень в расте, все скажут "да ладно, это вообще ерунда о которой даже думать не надо!"
| | |
| 2.32, Аноним (32), 13:03, 26/10/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
да просто немного найдется проектов, которые позволяют выполнять регулярное выражение, полученное из пользовательского ввода
| | |
|
| 1.8, Аноним (9), 11:18, 26/10/2026 [ответить] [﹢﹢﹢] [ · · · ]
| –3 +/– |
> двойное освобождение памяти
> целочисленные переполнения
и RCE 10 из 10 как вишенка на тортике сишного булщит бинго в безопасном руби))
"С in CVE stands for C language" (c)
| | |
| |
| 2.19, Аноним (19), 11:54, 26/10/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
Т.е. в том что динамический ЯП со сборщиком мусора дырявый виноват Си? А если в расте будет бага, это виноват С++ потому что LLVM написан на нем?
| | |
| |
| 3.25, Аноним (25), 12:09, 26/10/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> Т.е. в том что динамический ЯП со сборщиком мусора дырявый виноват Си?
Кто же интересно дожен быть виноват, если исправления в onigmo.h, regcomp.c и regerror.c?
В динамический ЯП со сборщиком мусора или в убогом недоязычке?
> А если в расте будет бага, это виноват С++ потому что LLVM написан на нем?
rustc написан на расте. Если бага будет там - то виноват раст.
Если в LLVM - то с++.
| | |
|
|
| 1.12, Аноним (13), 11:27, 26/10/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> int num_repeat; /* OP_REPEAT/OP_REPEAT_NG id-counter */
> int num_null_check; /* OP_NULL_CHECK_START/END id counter */
А кто-то может пояснить, почему счетчики сделаны int, а не unsigned int как это сделано несколькими строчками ниже?
В чем был хитрый план? Прокидывать ошибки через отрицательные значения?
| | |
| |
| 2.16, Аноним (16), 11:42, 26/10/2026 [^] [^^] [^^^] [ответить]
| +/– |
Да, в убогих недо-язычках из 70х нет нормального средства передачи ошибок.
Поэтому приходится нарушать "применение типов" и лепить типы данных которые избыточны.
В одной из недавних дыреней в libxml2 (после которой гугл выкинул ее их хрома), для размера рассчитываемого буфера использовали signed переменную.
Чтобы функция могла вернуть ошибку -1.
Ну а так как каст таких типов происходит неявно - то вот и читаем регулярно про очередную дыру.
| | |
| |
| |
| 4.23, Аноним (23), 12:04, 26/10/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> Го сейчас напряглось, идеоматически.
У Го как бы есть тип error.
И прям в официальном примере есть как его использоваться
func Open(name string) (file *File, err error)
f, err := os.Open("filename.ext")
| | |
| |
| 5.31, Аноним (5), 12:53, 26/10/2026 [^] [^^] [^^^] [ответить]
| +/– |
а что ж ты не упомянут if err != nil в следующей строке, которая всем мозолит глаза )
| | |
| 5.37, Аноним (7), 13:25, 26/10/2026 [^] [^^] [^^^] [ответить]
| +/– |
В си тоже можно передать указатель, куда функция запишет код ошибки.
| | |
|
|
| 3.20, Аноним (19), 11:55, 26/10/2026 [^] [^^] [^^^] [ответить]
| –1 +/– | |
> Да, в убогих недо-язычках из 70х нет нормального средства передачи ошибок.
А нормальные это какие? Можешь показать пример?
| | |
| |
| 4.28, Аноним (-), 12:38, 26/10/2026 [^] [^^] [^^^] [ответить]
| +/– |
Конечно.
ADA (и ADA Spark).
Из известных факапов - только Ариан5.
И то по причине долбанутости менеджеров "давайте перенесем код без тестирования".
Из "не языков", а сторонних инструментов - CompCert.
Компилятор для СИ, сделанный для формальной верификации. Соответствует DAL A – DAL D.
Из минусов - он не поддерживает стандарт полностью, как и всякие гну-расширения от васянов.
Ну и не делает агрессивные оптимизации - так что код будет медленнее.
Но оба эти подхода требуют или перестройку процессов, или глубокое понимание проблемы.
Т.е для васянов которые решили выпрограммировать очередную поделку не подходят.
| | |
|
|
|
| 1.15, Аноним (15), 11:41, 26/10/2026 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– | |
> Уязвимость в Ruby, эксплуатируемая для удалённого выполнения кода
Уязвимость в сишной либе, которую по глупости решили использовать рубиты.
В самом руби в данном случае уязвимости нет, не нужно вводить людей в заблуждение.
| | |
| 1.21, Аноним (21), 11:57, 26/10/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Кстати, а что там с актуальностью руби в бэкенде? Он таки смог пережить наплыв ноды и го в rest api или нет?
| | |
| |
| 2.22, Аноним (5), 12:04, 26/10/2026 [^] [^^] [^^^] [ответить]
| +/– |
большие проекты вроде живут, тот же гитлаб например. но новые думаю никто не начинает уже.
| | |
|
| |
| 2.29, Аноним (-), 12:40, 26/10/2026 [^] [^^] [^^^] [ответить]
| +/– |
Зачем?
Если в условном ржавом взять такую же СИшную дырявую либу, то результат мог получиться таким же.
Надеятся что ржа где-то на уровне выше отловит ошибку и брякнется, я бы не стал.
Вывод должен быть скорее "либы используемые в важных проектах должны писаться с использованием надежных инструментов".
И ржа далеко не единственный вариант.
| | |
| 2.30, пох.. (?), 12:50, 26/10/2026 [^] [^^] [^^^] [ответить]
| +/– | |
конечно не было бы - нет кода, нет и проблем.
Но, кстати, никогда не поздно начать переписывать!
| | |
| |
| 3.34, Аноним (34), 13:07, 26/10/2026 [^] [^^] [^^^] [ответить]
| +/– |
Так код то есть.
Вон в андроиде 5+ лямов строк каст кода (ты наверное об этом не знаешь, так как радyжные чаще пользуются айфонами).
В хроме дырявый сишные либы (либхмл, фонты) заменяют на растовые.
| | |
|
|
|