LINUX.ORG.RU

Модель o3 OpenAI нашла уязвимость в модуле ядра Linux

 , ,


0

3

В модуле ksmbd, который обеспечивает встроенную в ядро Linux реализацию SMB-сервера, обнаружена опасная уязвимость (CVE-2025-37899). Она позволяет злоумышленнику выполнить произвольный код на уровне ядра, отправив специально сформированные SMB-пакеты. Интересно, что проблема была выявлена не вручную, а с помощью ИИ-модели OpenAI o3 в ходе автоматизированного аудита безопасности.

Поскольку код модуля ksmbd слишком велик для полного анализа в рамках одного запроса, проверка проводилась поэтапно. ИИ исследовал реализацию отдельных SMB-команд, используя типовые запросы, и в итоге обнаружил use-after-free в обработчике команды logoff.

Суть уязвимости:

При завершении сеанса (logoff) освобождалась память, связанная с пользовательской структурой sess->user. Однако, если параллельно в другом соединении приходил запрос на установку нового сеанса (smb2_sess_setup), этот поток мог обратиться к уже освобождённой памяти, что приводило к уязвимости.

Проблема устранена в следующих версиях ядра: 6.15-rc5, 6.14.6, 6.12.28, 6.6.90, 6.1.138. Ветка 5.15, куда модуль ksmbd был первоначально добавлен, не затронута.

Исследование провёл Шон Хилан (Sean Heelan), создатель платформы Prodfiler для анализа производительности и безопасности кода. Он решил протестировать возможности современных ИИ-моделей в поиске уязвимостей и пришёл к выводу, что OpenAI o3 демонстрирует высокий уровень понимания кода.

Ключевые наблюдения:

  • Модель смогла выстроить логическую цепочку, учитывающую параллельные подключения и использование общих структур данных.

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

  • Перед поиском новых уязвимостей Шон проверил модель на известной уязвимости (CVE-2025-37778), и o3 успешно её обнаружила, показав результаты, близкие к ручному аудиту.

Этот случай демонстрирует растущую роль ИИ в кибербезопасности. Хотя автоматизированные системы пока не заменяют экспертов, они уже способны находить сложные уязвимости, экономя время исследователей. В будущем подобные технологии могут стать стандартным инструментом аудита безопасности.

>>> Подробности (OpenNet)

★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 1)
Ответ на: комментарий от firkax

А, нашёл, это недавнее нововведение оказывается, в 5.15 добавили. Сомневаюсь что этой штукой много кто пользовался.

И вот ещё интересное обсуждение, первые же комменты. https://www.opennet.ru/opennews/art.shtml?num=55706

19:46, 30/08/2021
Ну и дыры тогда можно будет прямо эскалировать на уровень ядра ))
 
01:42, 31/08/2021
сабжем можно не пользоваться, используйте самбу и запретите модуль.
в отличие от ebpf, например.
 
11:25, 31/08/2021
гнать ссаными тряпками из ядра
firkax ★★★★★
()

А где тег #решето ?

Myp3ik ★★★
()

Раз в год и палка стреляет.

a1ba ★★★
()

Да пофиг. Тут у «гигантов» данные утекают. А почему мне, за свою зарплату, должно быть стыдно за чужой продукт?

delidov_george
()

Сегодня я узнал о том, что в ядре есть сервер smb.

Странные люди, http выпилили, smb запилили. Зачем?

thesis ★★★★★
()

Этот случай демонстрирует растущую роль ИИ в кибербезопасности

В киберопасности

pihter ★★★★★
()

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

snizovtsev ★★★★★
()
Последнее исправление: snizovtsev (всего исправлений: 2)

Поскольку код модуля ksmbd слишком велик для полного анализа в рамках одного запроса, проверка проводилась поэтапно. ИИ исследовал реализацию отдельных SMB-команд, используя типовые запросы, и в итоге обнаружил use-after-free в обработчике команды logoff.

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

One ★★★★★
()

А кто вообще додумался затащить в ведро самбу? Это какая степень упоротости? Или это просто «место» под юзерспейс какой-то, а все остальное доп.софтом?

Gonzo ★★★★★
()
Последнее исправление: Gonzo (всего исправлений: 1)
Ответ на: комментарий от ivan007007

А теперь представь натравить самую передовую на поиск уязвимостей? И никому ничего не говорить. Это же прикинь как разбогатеть можно было бы, влазить на тысячи серверов в мире и оставаться незамеченным! (если что, я первый это придумал, идея моя)

Gonzo ★★★★★
()
Р Е Ш Е Т О !
Е Е
Ш   Ш
Е     Е
Т       Т
О         О
!           !
thunar ★★★★★
()

Хотя автоматизированные системы пока не заменяют экспертов
пока

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

Satou ★★★★★
()
Ответ на: комментарий от I_one

Это проект ksmbd, который реализует протокол самба (официально он теперь называется cifs, но всем пофиг). А я писал про то, что этот самый протокол реализуют обычно в юзерспейсе.

firkax ★★★★★
()
Ответ на: комментарий от Gonzo

Очевидно, агенты микрософта. Кстати, автор данного модуля сейчас там и работает.

firkax ★★★★★
()
Ответ на: комментарий от Gonzo

А теперь представь натравить самую передовую на поиск уязвимостей? И никому ничего не говорить. Это же прикинь как разбогатеть можно было бы, влазить на тысячи серверов в мире и оставаться незамеченным!

1. Это если не бояться рискнуть не остаться незамеченным.

2. Не подсказывай.

posixbit ★★★
()
Последнее исправление: posixbit (всего исправлений: 1)
Ответ на: комментарий от firkax

В ядре и веб-сервер бывает. Но тоже мало кто пользуется. Наверно только те кому нужна особо огромная производительность.

watchcat382
()
Ответ на: комментарий от arcanis

4 вышла вот, а вайб кодерки ноют, что 3.5/7 была лучше

В общем случае больший номер версии совершенно не означает что программа стала объективно лучше. Примеров обратного не так уж мало.

watchcat382
()
Ответ на: комментарий от seiken

А не проще юзать раст и не делать уязвимостей изначально? Особенно таких. Можно даже при помощи ИИ. Хм… да ну, бред какой то.

LightDiver ★★★★★
()
Ответ на: комментарий от LightDiver

А не проще юзать раст и не делать уязвимостей изначально? Особенно таких.

Rust - не панацея, хотя от подобных уязвимостей, да, защитит…

QsUPt7S ★★★
()
Ответ на: комментарий от LightDiver

Лично я фанат принципа распределения ответственности. Т.е. вот есть люди, разрабы, есть компиляторы, а есть прочий инструментарий. И качество ПО зависит от совместной работы их всех. Когда предлагается одна серебряная пуля, и семантика владения выворачивается из кишок наружу в синтаксис - это что-то странное.

Мне больше нравится подход Ada. Если использовать все фичи, в т.ч. небезопасные типа сырых указателей, можно по-разному отстреливать себе ногу (хотя всё равно будет уже безопаснее C и С++, хотя бы потому что строки - это строки, не терминированные (или не…) нулём массивы. Далее, можно обмазаться контрактами. Если нужен наивысший уровень безопасности, переходим на SPARK, в котором запрещены все небезопасные операции, и свойства кода доказываются автоматически, солвером. И заметьте, что всё это в рамках одного и того же синтаксиса.

Таким образом разные команды могут сконцентрироваться на своих отдельных задачах, происходит максимальное разделение труда, а следовательно и максимизация общей эффективности труда. Вместо этого Раст предлагает всего два режима - unsafe, где ад и хаос, как в древней сишке, и safe, где вся ответственность на разрабах компилятора, и притом, обнаруживается, что таки могут быть проблемы с памятью и в сейф коде, для чего предлагаются обходные костыли. Это не разделение ответственности, а глупость.

seiken ★★★★★
()
Ответ на: комментарий от firkax

Говорят, на больших скоростях юзерспейс не вытягивает. Думаю, есть те, кто хочет подключать NAS через самбу к виндовому компьютеру на 10 гигабитах, например.

vbr ★★★★★
()
Ответ на: комментарий от Satou

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

У меня есть дом в деревне. Там огород на 20 соток. Куплю мотоблок, буду картошку сажать, курей разведу, козу. И забор поставлю. Никакие роботы мне не страшны. У меня даже колодец есть с жёлтой водой, полная автономность.

vbr ★★★★★
()
Ответ на: комментарий от seiken

unsafe, где ад и хаос, как в древней сишке

Вообще-то нет. Unsafe код весьма себе строг, там на порядок больше проверок, чем в С.

Вот, что можно делать в Unsafe Rust:

  • Dereference raw pointers
  • Call unsafe functions (including C functions, compiler intrinsics, and the raw allocator)
  • Implement unsafe traits
  • Access or modify mutable statics
  • Access fields of unions

Например borrow checker всё ещё работает в Unsafe Rust.

vbr ★★★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от vbr

Хорошо, пусть будет «надёжнее, чем в древней сишке». Всё равно можно использовать адресную арифметику с указателями. И общую картину это не меняет.

seiken ★★★★★
()
Последнее исправление: seiken (всего исправлений: 1)

Следующая новость: Шон уволен? Или «о3 ОпенАИ добавила уязвимость в ядро Линукс»?

kirill_rrr ★★★★★
()
Последнее исправление: kirill_rrr (всего исправлений: 1)

Ну спасибо, пригодилось по делу. Не, нуачо, научить ИИ делать тот же фаззинг было бы неплохо.

gns ★★★★★
()

встроенную в ядро Linux реализацию SMB-сервера

а что, так можно?

Shadow ★★★★★
()
Ответ на: комментарий от AndreyKl

Нормальный ИИ нашёл бы и молча прикопал на будущее, а не делился сразу же найденным с кожаными мешками.

pr849
()
Ответ на: комментарий от hateyoufeel

Ну, малинка очевидно не заполнит. А современное ядро Ризена? К тому же на 40Гбит канал точно не упадёт 1 клиент, а несколько уже распаралелятся.

kirill_rrr ★★★★★
()
Ответ на: комментарий от hateyoufeel

Да вот собственно малинка (пи3, кортекс-а53, 800Мгц) заполняет 100 Мбит нагрузкой в 5%. А её предел это соответственно 3 Гбита. А интеловское Р-ядро 13-14 поколений должно выдавать до 80Гбит. Ну это при линейной интерполяции и без упора в диск.

kirill_rrr ★★★★★
()
Последнее исправление: kirill_rrr (всего исправлений: 2)
Ответ на: комментарий от vasya_pupkin

Скормить ИИ исходники ИИ и сказать ему, что он съел сам себя.

rupert ★★★★★
()

ждём ебилдов^W патча от openaAI.

splinter ★★★★★
()
Ответ на: комментарий от Gonzo

Ну, по идее, в OpenWRT должно быть интереснее обычной.

Shadow ★★★★★
()
Ответ на: комментарий от vbr

Думаю, есть те, кто хочет подключать NAS через самбу к виндовому компьютеру

У них в тудушке аж iscsi over smb, например.

thesis ★★★★★
()

Этот случай демонстрирует растущую роль ИИ в кибербезопасности.

Нет, это показывает потуги маркетологов продать очередное ненужно.

Какое-то поделие обнаружило одну ошибку в экспериментальном модуле который ещё не готов, и в котором наверняка ещё куча ошибок. Это буквально означает, что во всём остальном линуксе нет ни одной ошибки. Так ли это? Хрен там - в линуксе ещё дофига ошибок, особенно в многочисленных драйверах железок, из-за которых пользователи иногда сталкиваются с глюками и неправильной работой железа. Ни одной такой ошибки эта хрень не нашла. Вывод - хрень является дерьмом, она тупо не работает как заявлено. Скорее всего её вообще подшаманили, чтобы она «нашла» эту единственную, с большой вероятностью заранее найденную, скорее всего людьми, ошибку в конкретном модуле.

Зачем этот цирк устроили? Очевидно исключительно в маркетинговых целях.

Stanson ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.