Профиль: Аноним (вход | регистрация) неRU opennet.me  
The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

В OpenBSD устранена локальная уявзимость, позволяющая получить права root

16.07.2026 09:54 (MSK)

Проект OpenBSD опубликовал исправление уязвимости (CVE-2026-57589) в ядре, затрагивающей реализацию системных вызовов для работы с семафорами System V (sem). Проблема вызвана обращением к уже освобождённой памяти в функции sys_semget() и может эксплуатироваться для получения прав root непривилегированным локальным пользователем в конфигурации по умолчанию.

В кодовую базу OpenBSD-current исправление было включено 23 мая, но для уже выпущенных релизов патчи опубликованы только сегодня. Ошибка присутствовала в коде 23 года и была выявлена в рамках инициативы Patch the Planet по проверке открытых проектов AI-моделями OpenAI.

Помимо отмеченной проблемы опубликовано несколько исправлений, которые не помечены как устранения уязвимостей, но, судя по описанию, могут быть связаны с безопасностью: недостаточная проверка входных данных в коде IPsec и IPComp; двойное освобождение памяти в сервере NFS; повреждение памяти в коде для работы с блокировками в функциях pinsyscall и kbind.

  1. Главная ссылка к новости (https://www.mail-archive.com/a...)
  2. OpenNews: Релиз OpenBSD 7.9
  3. OpenNews: В OpenBSD переименовали поле в pfsync после ложного AI-отчёта об уязвимости
  4. OpenNews: Уязвимость в гипервизоре VMM, развиваемом OpenBSD, оказалась исправлена не полностью
  5. OpenNews: Удалённая уязвимость в IPv6-стеке OpenBSD
  6. OpenNews: Уязвимость в NFS-сервере FreeBSD и OpenBSD, приводящая к удалённому выполнению кода
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65867-openbsd
Ключевые слова: openbsd
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (33) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 09:57, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я так понимаю софт на Коболе 60 летней давности еще не охвачен.
    В рекламных целях, на безрыбье и лещ - рыба.
     
     
  • 2.4, Аноним (4), 10:11, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Там искать нечего, потому-что писали диды дидов, и это были боги. А боги - безгрешны и ошибок не делают по определению.
     
     
  • 3.19, Аноним (19), 12:06, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Проблема что уязвимый код уже и не на чем запустить.  
      
     
     
  • 4.23, Аноним (1), 12:49, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Проблема что уязвимый код уже и не на чем запустить.  

    Ви таки плохо думаете про американские банки.

     

  • 1.2, Смузихеб забывший пароль (?), 10:04, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Как так академики поживают ?
    Докторскую на устранении этой уязвимости уже кому-то пообещали ?)
     
     
  • 2.21, Аноним (21), 12:26, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Как так академики поживают ?
    > Докторскую на устранении этой уязвимости уже кому-то пообещали ?)

    То ли дело CopyFail в 7-8 варинтах за пару месяцев и бесспорное лидерство с огромным отрывом по CVEшкам... Но пустить метанчик в сторону бzдей - на опеннете это святое, да!

     
     
  • 3.22, Аноним (22), 12:40, 16/07/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 3.30, Смузихеб забывший пароль (?), 14:13, 16/07/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.3, psv (??), 10:06, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Ошибка внесена в 2023. Но почему нет последовательности "исправления" кода которая к ней привела? В том числе авторов патчей (со ссылками где они еще светились)?
     
     
  • 2.8, Аноним (8), 10:39, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Перечитай еще раз. В 2003
     
  • 2.12, Аноним (12), 10:55, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    претензии от человека, который прочитать без ошибок не может
     

  • 1.5, ryoken (ok), 10:13, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отпечатков копыт ИИ не найдено?
     
  • 1.7, openssh_user (ok), 10:25, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Странно, что для релизов выпуск исправлений затянулся
     
  • 1.9, Аноним (9), 10:40, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Локальная

    А ещё кто-то локально может подойти к моему компьютеру и стукнуть по нему молотком.

     
     
  • 2.10, Аноним (8), 10:45, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Либо попасть через другую дыру под пользователем nobody и стать рутом.
     
  • 2.11, Аноним9000 (?), 10:49, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Путаете локальный доступ и физический
     
  • 2.26, Аноним (26), 13:09, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Локальный - значит ты по SSH подключился не root'ом.
     

  • 1.13, EmmGold (ok), 11:10, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Only  ̶t̶w̶o̶ three remote holes in the default install, in a heck of a long time!
     
     
  • 2.14, Аноним (14), 11:47, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, она не remote, это же локально эксплуатируемая уязвимость.
     

  • 1.15, крокодил мимо.. (?), 11:48, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Проблема вызвана обращением к уже освобождённой памяти в функции sys_semget() и может эксплуатироваться для получения прав root непривилегированным локальным пользователем в конфигурации по умолчанию.

    вариант эксплойта для подтверждения есть?
    судя по:
    https://ftp.openbsd.org/pub/OpenBSD/patches/7.9/common/005_sysv.patch.sig
    не только и не столько sys_semget(), скорее "обычная" безалаберность.. что тоже не оправдание..

     
  • 1.16, Аноним (16), 11:50, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Погодите.
    Это та самая бздя которая мега-защищенная и они всей командой наяривают на бижопашность как стая мартышек?

    Выходит не такая она крутая.

     
     
  • 2.18, Аноним (19), 12:05, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Какая безопасность? Их обвиняли в прямой работе на ФБР.
     
     
  • 3.20, Colorado_House_of_Representatives (?), 12:13, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Не их, а конкретного разработчика. И закладок после аудита не нашли.
     
     
  • 4.31, Смузихеб забывший пароль (?), 14:14, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    а зачем их находить ?
     

  • 1.17, Аноним (17), 11:51, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Кто знает, насколько эта нейронка права?:

    Уязвимость находится в функции 'semop' (строки 684–705) и представляет собой **гонку с использованием после освобождения (use-after-free)**.

    **Суть проблемы:**

    1. Перед вызовом 'tsleep_nsec()' процесс сохраняет локальный указатель 'semaptr' на структуру набора семафоров. Затем он засыпает, отпуская блокировку семафорной подсистемы.
    2. Пока процесс спит, другой поток/процесс может удалить этот набор семафоров через 'IPC_RMID'. Память, на которую указывает 'semaptr', освобождается ('free' + 'pool_put'), а элемент массива 'sema[semid]' обнуляется.
    3. Если после этого (до пробуждения первого процесса) создаётся *новый* набор семафоров с тем же идентификатором 'semid' (реиспользование индекса), 'sema[semid]' будет указывать уже на новую структуру.
    4. Первый процесс просыпается, перезахватывает блокировку и выполняет проверку:
       '''c
       if (sema[semid] == NULL ||
           semaptr->sem_perm.seq != IPCID_TO_SEQ(SCARG(uap, semid)))
       '''
       При этом 'semaptr' **не обновляется** из 'sema[semid]', а продолжает указывать на уже освобождённую память.
    5. Так как 'sema[semid]' теперь не 'NULL' (новый набор), короткого замыкания по первому условию не происходит, и код читает поле 'sem_perm.seq' из освобождённой памяти — это **use-after-free**.
    6. Если освобождённая память была переиспользована и злоумышленник смог записать туда старый номер последовательности, проверка может пройти, и дальнейшая логика продолжит работать с висячим указателем 'semaptr', что ведёт к контролируемому повреждению памяти ядра и потенциальному повышению привилегий.

    **Где именно в коде:** строки 693–700 — после 'tsleep_nsec' используется 'semaptr' без переприсваивания из 'sema[semid]'. Исправление должно включать сброс 'semaptr = sema[semid]' после пробуждения и соответствующую обработку 'NULL'.

     
  • 1.24, gvf (??), 12:53, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Нихрена вы не понимаете!
    Это заговор ИИ-шек! Они под видом исправления наших уязвимостей вставляют свои чтобы захватить Мир!!!!!11111
    Спасайся пока не поздно!
    8))))))
     
  • 1.25, Аноним (-), 13:06, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >" Проблема вызвана обращением к уже освобождённой памяти"

    Опять память? Да чтож такое та!

     
     
  • 2.27, Аноним (27), 13:49, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    двойное освобождение памяти и всякие рейс кондишены это проблема погромиста! Поэтому всегда нужна верификация корректности в таких алгоритмах.
     
     
  • 3.28, Аноним (28), 13:55, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > двойное освобождение памяти и всякие рейс кондишены это проблема погромиста!

    Верно только отчасти.

    Пограммист себе код оттарабанил и пошел пить пиво.
    А в первую очередь это проблема пользователя у которого софт дырявый.

    > Поэтому всегда нужна верификация корректности в таких алгоритмах.

    Вы мышки станьте ежиками (с)
    Есть ли реалистичные предложения как это сделать?
    Или предотвратить "двойное освобождение памяти и всякие рейс кондишены",
    или хотя бы найти после написания овнокода, но ДО попадания к пользователям?


     
     
  • 4.32, Аноним (27), 14:16, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > А в первую очередь это проблема пользователя у которого софт дырявый.

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

    > Есть ли реалистичные предложения как это сделать?

    Писать спеку на алгоритм и доказывать его корректность, 1000500 способов как это сделать. Этот процесс и называется по сути программированием, а то, что потом это имплементируют на том или ином ЯК (языке кодирования), называют - кодированием! В итого идет верификация корректности этой имплементации.

    > Или предотвратить "двойное освобождение памяти и всякие рейс кондишены",

    Предотвращают мозгами и доказательством.

    > или хотя бы найти после написания овнокода

    А этого не будет никогда если перед тобой изначально не стоит задача доказательство корректности, вот поэтому эти "уязвимости" находят другие, в том числе ЫЫ (ЫЫ тупо строит модель алгоритма, и пытается доказать корректность его, не может доказать, как следствие выявляет уязвимость).

    > но ДО попадания к пользователям?

    Пользователь - обреченный, это последнее о чем будет думать погромист, если бы он реально думал бы о конечном пользователе, и реально хотел бы сделать для этого "гр3банного мира что-то хорошее", то он бы следовал бы указаниям которые я дал выше, и это не моя выдумка, это то как должно быть в науке! CS - наука в первую очередь!

     
     
  • 5.35, Аноним (35), 14:32, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > а тут дилемма обреченного, пользователю только такой софт и дан, другого нету, он обреченный по определению.

    Ну... как в анекдоте "а какая альтернатива? Утки!"

    А если серьезно, то пользователь может не знать, что вместо рекламируемых академиков код писали bunch of masturbating monkeys.

    > Писать спеку на алгоритм и доказывать его корректность, 1000500 способов как это сделать.

    Есть хороший пример sel4 - где 6к строк кода верифицировали 11 человеко-лет.
    Получилось невероятно надежно для СИшки, но очень-очень дорого.

    > Этот процесс и называется по сути программированием, а

    Думаешь в опенБСД есть спецы такого уровня?
    Не тяпляпнуть код, а разбираться в алгоритмах и их верификации.

    >  то, что потом это имплементируют на том или ином ЯК (языке кодирования), называют - кодированием! В итого идет верификация корректности этой имплементации.

    А потом в коньпиляторе поменяют СИшную UBшку (как произошлов C23) и код превратиться в ̶т̶ы̶к̶в̶у̶ не верифицированные буковки.

    > Предотвращают мозгами и доказательством.

    А где?
    Что ядро, что бсд оказались дырявыми.
    А к ним паравозом куча критических библиотек.

    > А этого не будет никогда если перед тобой изначально не стоит задача ....

    писать корректный код)
    Я чуть сократил твои рассуждения.
    Пресловутое AS IS когда пользователя ставят в положение "жричодали".
    И если на коммерцию есть хоть какие-то рычаги "исправьте баг, а то не увидите мои деньги", то на опенсорс - вообще никаких.

    > Пользователь - обреченный, это последнее о чем будет думать погромист

    Это можно решить законодательно.
    Примерно как с продажей пирожков, шаурмы или оказания услуг (например медицинских).
    opennet.me/opennews/art.shtml?num=60273
    Но опенсорсники первые выступили против.
    Удивительно, не правда ли.

     
  • 4.33, Аноним (27), 14:23, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Вы мышки станьте ежиками (с)

    Пробуйте писать крипто-алгоритмы без спеки и доказательства корректности :) Это яркий пример , а что говорить за системный код ОС или математические библиотеки?

     

  • 1.29, Аноним (29), 14:04, 16/07/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    "Уявзимость"
    * смотрит в словарь понимающим взглядом
     
     
  • 2.34, Аноним (29), 14:23, 16/07/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Не в тот словарь смотрите надо в СРЛЯ, а вы поди в СУЛМ.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру