TGViewer
notes.ml notes.ml @notesdotml · 160 subscribers
Post #18 366
Глупые железяки

Разбираю тут одну статью по оценке качества LLM на задаче информационной безопасности, периодически повторяю что-то, если глаз зацепился.

И вот дохожу до эксперимента, в котором проверяется умение языковых моделей находить уязвимости (картинка 1). Авторы смотрят на результат (мол createQuery возвращает параметризованный запрос) и делают очевидный вывод:

(1) LLMs are not familiar with the safe practices of library functions, and
(2) LLMs cannot handle complex multi- function and multi-variable data flow patterns.

Ладно, факт есть факт, подумал я и решил ради интереса проверить, смогут ли, спустя несколько лет публикации статьи, текущие модели справиться с этой задачей? Всё-таки GPT-4 вышла в далеком 2023 ( а cutoff у нее вообще случился в 2021).

Я отправил этот кусок кода без замысловатого промпта в gpt-4o и посмотрите на 2 картинку, о боже, она тоже попалась на эту задачу?!🤢

Заподозрил что-то неладное и решил проверить. Повторил пример из статьи и обнаружил баг: в стремлении упростить сниппет кода, авторы оставили в нем ошибку, которая не позволяла корректно воспроизвести уязвимость (а точнее её отстутсвие), сервис крашился на попытке выполнить cursor.execute с входным tuple вместо ожидаемых параметров:

TypeError: can't concat tuple to bytes

Поэтому нельзя сказать, что текущая и старая версии chatgpt были совсем не правы, они просто изучили код не так подробно, как хотелось бы авторам, сделав допущение, что в коде ошибок нет - подсветили явную уязвимость: мы в каком-то методе сформировали запрос без параметров в возвращаемом значении и подали на исполнение.

Получается дилемма, которую часто ловлю в работе с llm как с code copilot:

- Если вопрос был поставлен прямо: есть ли уязвимость (да/нет/не знаю) в коде, должна ли ллм предусматривать еще и программные ошибки, которые не позволят коду запуститься?
- Или она должна допустить, что в одной из частей код корректен и ответить на поставленный вопрос?
- Если так, то обязана ли она выбрать то же допущение, что и пользователь?

Кажется, что нет...


Тут как нельзя кстати приходится сравнение llm с джунами, которые часто в силу отсутствия опыта решают (a) только четко поставленные задачи, и (б) - решают их в лоб.

#papers #fun
More from @notesdotml
  1. Sep 20, 2026Заметка достаточно настоялась, нашел силы причесать 🫠 Итак, таймлайн: - AppSec 1.0 - проц…
  2. Sep 20, 2026Смена парадигмы безопасной разработки в эпоху software 3.0 Часть 5 - AppSec 3.0, сингулярн…
  3. Aug 19, 2026Как понять, что конфа годная? У тебя нет билета, но доклады на посмотреть копятся сами соб…
  4. Jul 25, 2026photo post
  5. Jul 25, 2026Сегодня наша команда держала стенд на технохабе Сбера, активность по ML System Design в ИБ…
  6. Jul 16, 2026Так, блог-заметки по MOLOT'у подоспели, го читать и лайкать: - ru - eng
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →