avva: (Default)
avva ([personal profile] avva) wrote2026-04-08 11:28 pm

клод митос и сила параллелизации

Людям, которые не понаслышке знают про дырки в секьюрити и как они устроены (buffer overruns, exploits и все такое) будет очень интересно прочитать подробный отчет Anthropic о их новой модели Mythos, с помощью которой они нашли тысячи уязвимостей в опен-сорс проектах за последние пару месяцев (Антропик не собирается пока что предоставлять широкой публике доступ к Mythos).

В тексте отчета подробно разбирают несколько багов. Возьмите для примера zero-day уязвимость в OpenBSD, которая позволяла крашнуть любой сервер OpenBSD, подключенный к интернету. Баг находился в tcp-input.c, файле обработки TCP-пакетов, этот файл обсматривали и проверяли на предмет уязвимостей десятки или сотни глаз и автоматических программ-анализаторов за последние десятки лет; тем не менее за 27 лет этот баг не обнаружили. Он довольно хитроумно соединяет два разных недочета в разных местах в коде, позволяющие с одной стороны ввести отрицательный номер пакета (бессмысленно, но в том конкретном месте не опасно), а с другой сделать его отрицательным и таким большим по модулю, чтобы сработал 32-битный overflow, и код ядра запутался, одновременно удаляя единственную запись в связном списке и добавляя новую. Попытка писать по NULL-указателю - сервер капут.

Теперь смотрите какое дело. В файле tcp-input.c больше 4000 строк кода, и он занимается кучей других вещей, кроме менеджмента списка "SACK-дырок", в котором найден этот баг. Но предположим, кто-то посадил бы меня за исходники и сказал: "я подозреваю, что в этом файле есть уязвимость, связанная с SACK-информацией в приходящих пакетах, которой можно воспользоваться. Посмотри, можешь ли ты ее найти; не забывай проверить все обычные места, где прячутся такие баги - edge cases структур данных, отрицательные значения числовых типов, overflow, overrun буферов итд. итп." Нашел бы я тогда за день-два-три этот баг? Вполне возможно, что нашел бы.

Ни у кого нет бюджета и мотивации платить много денег мне или другим компетентным программистам, чтобы они проводили кучу времени за очень скрупулезным обследованием конкретных кусков кода - не просто OpenBSD, не просто ядро OpenBSD, не просто сетевой код ядра OpenBSD, не просто TCP-опции входящего пакета, а конкретно SACK-дырки TCP-потока - при том, что неизвестно, есть там уязвимость или нет.

Но нет никакой проблемы запустить один достаточно умный (может, не AGI, но для этих целей достаточно умный) ИИ-агент, чтобы он разобрал по частям файл tcp-input.c и построил программу проверки из 10-20 отдельных частей, одна из которых SACK-дырки. И чтобы он потом запустил 10-20 отдельных ИИ-агентов, каждому из которых сказал смотреть на свою часть и искать там уязвимость. И если они достаточно умные - а в Claude Mythos этот порог, очевидно, перейден - тот из них, кому поручили на SACK-дырки смотреть, найдет этот баг. А остальные 19 сожгут зря немного токенов, ничего страшного (и не думайте, что они нагаллюционируют несуществующие баги и займут зря ваше время - дополнительный агент-судья с этим неплохо справится).

Если у вас есть компетентный программист, который может компетентно разобрать один файл исходников, то у вас нет миллиона компетентных программистов, которые могут компетентно разобрать миллион файлов исходников. Но если у вас есть компетентный ИИ-агент, который может разобрать один файл, то у вас есть миллион компетентных ИИ-агентов, которые могут разобрать миллион файлов. Важность этого обстоятельства, мне кажется, люди до сих пор очень плохо понимают.
timelets: (Default)

[personal profile] timelets 2026-04-08 08:45 pm (UTC)(link)
Важность этого обстоятельства, мне кажется, люди до сих пор очень плохо понимают

С помощью мифа о Психее и Афродите, этот качественный переход можно объяснить даже детям. На понимание взрослых людей надежды мало.
vak: (Default)

[personal profile] vak 2026-04-08 08:55 pm (UTC)(link)
Почему, люди понимают. Но не все. 😀
Я знаю нескольких, которые понимают и пользуются ИИ.
gegmopo4: (Default)

[personal profile] gegmopo4 2026-04-08 09:17 pm (UTC)(link)

В последнее время сильно увеличился поток багрепортов связанных с безопасностью. Большинсто из них рядовые сегфолты, которые я без помпы нахожу и исправляю несколько раз в год (просто просматривая код, воспроизвести их часто непросто), и ещё больше ревьювя. Но теперь их подают как проблемы безопасности и требуют CVE. Проверка насколько серьёзна проблема и стоит ли её так квалифицировать (часто -- нет) жрёт человеческие ресурсы.

sobriquet9: (Default)

[personal profile] sobriquet9 2026-04-09 12:05 am (UTC)(link)

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

alexanderr: (Default)

[personal profile] alexanderr 2026-04-09 02:38 am (UTC)(link)
черт, за OpenBSD особенно обидно конечно.
всегда так мучаешься с ними, но зато ощущение безопасности. хаха

[personal profile] bowhill 2026-04-09 07:09 am (UTC)(link)
Где там мучиться и с чем – предмет, скорее, индивидуальный. Что касается безопасности, то она вполне осталась на месте. Во первых, это не дырка, и о дырках справедливо написано на титульной странице, а во-вторых – это вопрос ещё и относительный, оцениваемый и в сравнении.

[identity profile] http://users.livejournal.com/sorcerer-/ 2026-04-09 07:37 am (UTC)(link)
Это очевидно работает только до тех пор, пока уязвимость в одном файле.
Как только для ее построения надо затронуть несколько разных весь паралелоизм разваливается.

[personal profile] ux_ergonomix 2026-04-10 12:03 am (UTC)(link)
Ничего не мешает ИИ просматривать и связанные файлы заодно.

Собственно, приведенное описание как раз намекает, что ИИ может находить баги, основанные на ошибке в нескольких разнесенных местах, и делать это [вероятно] лучше чем человек.

[identity profile] http://users.livejournal.com/sorcerer-/ 2026-04-10 04:19 pm (UTC)(link)
Все мешает. В основном априорное незнание в каких файлах смотреть. :)

[personal profile] fjarri 2026-04-09 04:08 pm (UTC)(link)
> позволяющие с одной стороны ввести отрицательный номер пакета (бессмысленно

Вот на этом месте эти десятки и сотни глаз должны были бы среагировать. Если подобные вещи считаются нормальными в OBSD, это печально.
livelight: (Default)

[personal profile] livelight 2026-04-10 12:07 pm (UTC)(link)
А можете пояснить, что такое "отрицательный номер пакета" применительно к TCP-протоколу? TCP Sequence Number - по сути своей беззнаковое число, да ещё и меняющееся циклически.
66george: (Default)

[personal profile] 66george 2026-04-09 06:19 pm (UTC)(link)
Не заинтересуется ли кто-нибудь проверкой протоколов? Программы ProVerif, Scyther, Tamarin. Это самое прекрасное приложение ума к компьютерной безопасности. Анжелика и методы рационального мышления, так сказать.
leonid8: (Default)

[personal profile] leonid8 2026-04-09 10:39 pm (UTC)(link)
И как проверяется компетентность ИИ агента?
pupsikk: (Default)

"ничего страшного"

[personal profile] pupsikk 2026-04-10 07:38 am (UTC)(link)
Тут видимо будет уместно процитировать источник.
Так что цитирую источник.
Источник:
"This was the most critical vulnerability we discovered in OpenBSD with Mythos Preview after a thousand runs through our scaffold. Across a thousand runs through our scaffold, the total cost was under $20,000 and found several dozen more findings. While the specific run that found the bug above cost under $50, that number only makes sense with full hindsight. Like any search process, we can't know in advance which run will succeed."
Плюс зарплаты исследователей - они тоже тратили свое время небесплатно.

К этому надо добавить зарплаты специалистов, которые будут весь этот набор несуразностей разгребать и чинить.

Ну и не факт что все это нельзя было обнаружить существующими средствами-линтерами, профайлерами и юнитестами.
Поэтому неясно, сколько именно наэкономили.
old_leon: (Default)

Более того, ...

[personal profile] old_leon 2026-04-10 03:37 pm (UTC)(link)
Более того, иметь очень компетентного супер-ИИ-агента не так уж и необходимо. Мне тут подослали статью конкурирующей конторы. Они утверждают, что тех же результатов можно добиться умелым применением дешевого набора простых моделей:
"You can deploy cheap models broadly, scanning everything,..."

Я в программировании ничего не понимаю, но обе статьи выглядят саморекламой.

С другой стороны, нет сомнений, что AI радикально меняет наши возможности. Недавно סופר סת"מ ("софер стам" - переписчик священных текстов) сказал мне, что проверять текст на ошибки теперь очень легко, так что я могу не беспокоиться. Это сегодня делают с помощью компьютера. 100% гарантии.

Интересным применением может быть реверс-анализ платного ПО на предмет поиска украденных друг у друга программных решений. (Вроде "Диссернета" на новом уровне.)

[personal profile] enemyoflj 2026-04-11 08:19 pm (UTC)(link)
"Важность этого обстоятельства, мне кажется, люди до сих пор очень плохо понимают." - судя по совещанию у Скотта Бессента во вторник, некоторые люди очень хорошо понимают, но смотрят на это обстоятельство с гораздо менее светлой стороны...