<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Уязвимости в QoS-подсистеме ядра Linux, позволяющие поднять свои привилегии в системе</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/130197.html</link>
    <description>В ядре Linux выявлены две уязвимости (CVE-2023-1281, CVE-2023-1829), позволяющие локальному пользователю поднять свои привилегии в системе. Для проведения атаки требуются полномочия на создание и изменение классификаторов трафика, доступные при наличии прав CAP_NET_ADMIN, которые можно получить при возможности создания пространств имён идентификаторов пользователя (user namespace). Проблемы проявляются начиная с ядра 4.14 и устранены в ветке 6.2...&lt;br&gt;&lt;br&gt;Подробнее: https://www.opennet.ru/opennews/art.shtml?num=58955&lt;br&gt;</description>

<item>
    <title>Уязвимости в QoS-подсистеме ядра Linux, позволяющие поднять ... (n00by)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/130197.html#167</link>
    <pubDate>Fri, 21 Apr 2023 04:01:38 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Т.е. может быть всё, что угодно. В том числе и &quot;неуспешное освобождение&quot;.&lt;br&gt;&amp;gt; Для функции &quot;free&quot; в стандарте ничего не сказано про то что эта &lt;br&gt;&amp;gt; операция вообще может обломаться.&lt;br&gt;&lt;br&gt;Всё там сказано, читайте цитаты в моих сообщениях, начиная с &amp;#8470;140. Или учитесь их понимать, если уже читали.&lt;br&gt;</description>
</item>

<item>
    <title>Уязвимости в QoS-подсистеме ядра Linux, позволяющие поднять ... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/130197.html#166</link>
    <pubDate>Thu, 20 Apr 2023 20:58:05 GMT</pubDate>
    <description>&amp;gt; Т.е. может быть всё, что угодно. В том числе и &quot;неуспешное освобождение&quot;. &lt;br&gt;&lt;br&gt;Для функции &quot;free&quot; в стандарте ничего не сказано про то что эта операция вообще может обломаться. С таким же успехом можно предположить что имелось в виду что это - &quot;should never happen&quot;, а если все же happen это баг имплементации.&lt;br&gt;&lt;br&gt;&amp;gt; 2 Note 1 to entry: Possible undefined behavior ranges from ignoring the &lt;br&gt;&amp;gt; situation completely with unpredictable results,&lt;br&gt;&lt;br&gt;Маленький нюанс в том что в доке описывающей free() про UB вообще совсем ничего не упомянуто. То-есть не специфицировано что оно может обломаться и что при этом будет UB. Это вы сами от себя додумали. Откуда это следует я не знаю.&lt;br&gt;&lt;br&gt;Как более жесткий пример: если я вызываю void something(void) - тут прямо на уровне прототипа прозрачный намек что оно не обламывается, и с таким прототипом как правило предполагается что оно всегда успешно - например, в чистой математике нечему обламываться. И в освобождении памяти в его изначальном понимании тоже: все ресурсы на этот момент уж</description>
</item>

<item>
    <title>Уязвимости в QoS-подсистеме ядра Linux, позволяющие поднять ... (Rock)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/130197.html#165</link>
    <pubDate>Tue, 18 Apr 2023 17:17:50 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Либо скорость, либо безопасность &lt;br&gt;&amp;gt; насколько это: &lt;br&gt;&amp;gt;     free(ptr); &lt;br&gt;&amp;gt; быстрее, чем это: &lt;br&gt;&amp;gt;     free(ptr); &lt;br&gt;&amp;gt;     ptr = NULL; &lt;br&gt;&amp;gt; ?&lt;br&gt;&lt;br&gt;Ну, вот, как порча указателя на память связана с порчей памяти? Речь шла о том, что free могла бы обнулять память ради безопасности. Очевидно, что повлиять на указатели на эту память, сохраненные где-то снаружи, она чисто технически никак не может.&lt;br&gt;Я вообще не понимаю людей на этом форуме...&lt;br&gt;</description>
</item>

<item>
    <title>Уязвимости в QoS-подсистеме ядра Linux, позволяющие поднять ... (n00by)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/130197.html#163</link>
    <pubDate>Fri, 14 Apr 2023 12:03:24 GMT</pubDate>
    <description>3.4.3&lt;br&gt;&lt;br&gt;1 undefined behavior&lt;br&gt;&lt;br&gt;behavior, upon use of a nonportable or erroneous program construct or of erroneous data, for which&lt;br&gt;this International Standard imposes no requirements&lt;br&gt;&lt;br&gt;поведение ... к которому не предъявляется (никаких) требований.&lt;br&gt;&lt;br&gt;Т.е. может быть всё, что угодно. В том числе и &quot;неуспешное освобождение&quot;.&lt;br&gt;&lt;br&gt;2 Note 1 to entry: Possible undefined behavior ranges from ignoring the situation completely with unpredictable results,&lt;br&gt;***to behaving during translation or program execution in a documented manner*** characteristic of the environment (with or&lt;br&gt;without the issuance of a diagnostic message), to terminating a translation or execution (with the issuance of a diagnostic&lt;br&gt;message).&lt;br&gt;&lt;br&gt;и разрешено документировать поведение, что как раз и оправдано в ядре.&lt;br&gt;</description>
</item>

<item>
    <title>Уязвимости в QoS-подсистеме ядра Linux, позволяющие поднять ... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/130197.html#162</link>
    <pubDate>Fri, 14 Apr 2023 08:32:42 GMT</pubDate>
    <description>&amp;gt; Доказать эти сомнения элементарно - приведи пример аналогичного бага в раст коде =)&lt;br&gt;&lt;br&gt;Вас забанили на сайте с списком CVE? Там замечательный ассортимент, есть и ошибки управления памятью, и переполнения буфера, и что вы там еще хотели? Да, оказывается так можно было =)&lt;br&gt;</description>
</item>

<item>
    <title>Уязвимости в QoS-подсистеме ядра Linux, позволяющие поднять ... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/130197.html#161</link>
    <pubDate>Fri, 14 Apr 2023 08:27:10 GMT</pubDate>
    <description>По-моему самое непосредственное отношение. Либо поведение определено (и подлежит документированию), либо нет. Это бинарная величина. Для free() не определено понятие фэйла при легитимном использовани, его просто нет. Если понятия нет, оно не может входить в какое либо множество. &lt;br&gt;&lt;br&gt;При нормальном использовании в пределах спеков видимо считается что он всегда успешен, там нет места для fails в результатах вызова, стало быть это понятие просто не существует в этих абстракциях. Это скорее из категории &quot;should never happen&quot;.&lt;br&gt;&lt;br&gt;И на самом деле это как раз ключевая грабля стандартов на си и их стдлиб, там очень много чего недоопределено, определено неоднозначно или допускает UB. И за это временами тех господ из ISO хочется немножечко придушить.&lt;br&gt;</description>
</item>

<item>
    <title>Уязвимости в QoS-подсистеме ядра Linux, позволяющие поднять ... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/130197.html#160</link>
    <pubDate>Fri, 14 Apr 2023 08:17:36 GMT</pubDate>
    <description>&amp;gt; с++ это надстройка над си, а не какой-нибудь язык, претендующий на &amp;gt; независимость &lt;br&gt;&lt;br&gt;Вот ведь блин, а ISO не в курсе такой ерунды и выпускает 2 набора стандартов от 2 разныз рабочих групп.&lt;br&gt;&lt;br&gt;Более того - compat там далеко не стопроцентный. А как тебе использование &quot;auto&quot; в си и в c++? Думаешь, будет одно и то же? А вот и хрен, совсем разные вещи. В C2x (C23) это может быть изменится. Но он пока не вышел. Или скажем удачи использовать кейворд &quot;register&quot; в плюсах. Так то плюсы &quot;extern C&quot; сделали не просто для красоты.&lt;br&gt;</description>
</item>

<item>
    <title>Уязвимости в QoS-подсистеме ядра Linux, позволяющие поднять ... (n00by)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/130197.html#159</link>
    <pubDate>Fri, 14 Apr 2023 06:46:37 GMT</pubDate>
    <description>&amp;gt; А у вас проблемы с логическими операциями.&lt;br&gt;&lt;br&gt;Это не имеет отношения к UB и твоему непониманию, что такое UB.&lt;br&gt;</description>
</item>

<item>
    <title>Уязвимости в QoS-подсистеме ядра Linux, позволяющие поднять ... (Аноним)</title>
    <link>https://opennet.ru/openforum/vsluhforumID3/130197.html#158</link>
    <pubDate>Fri, 14 Apr 2023 06:30:23 GMT</pubDate>
    <description>А у вас проблемы с логическими операциями. Для меня выглядит так как будто это ЛИБО undefined behavior, ЛИБО, если понятие call fails определено, тогда рассказано как определить fail, и тогда это уже defined behavior. Вы, кажется, этого не поняли.&lt;br&gt;&lt;br&gt;Defined behavior отличается от undefined как раз тем что конкретно расписано что и как происходит. Если это расписано для call fails - окей, это defined behavior, мы можем определить это в caller&apos;е. А в вон том случае &quot;call fails&quot; просто не определен как сущность. Этого понятия не существует для этой функции, как минимум в стандарте.&lt;br&gt;&lt;br&gt;С точки зрения реализации видимо идея была такая что на этот момент все ресурсы которые надо было выделить уже были успешно выделены, новых не надо и как может обломиться чистая математика и маркировка регионов - загадка. Если случилось что-то вообще совсем странное, типа read или write error в каком-нибудь там свопфайле, это уже глубокая и невосстановимая системная ошибка и там разве что SIGSEGV какой процессу прислать, или что т</description>
</item>

</channel>
</rss>
