Уязвимость Dirty COW исправлена не до конца

Уязвимость Dirty COW исправлена не до конца

Уязвимость Dirty COW исправлена не до конца

Исследователи Bindecy утверждают, что печально известная уязвимость «Dirty COW» (CVE-2016-5195), обнаруженная в прошлом году в Linux, была не до конца устранена. Эксперты выяснили, что уязвимость обусловлена тем, как подсистема памяти ядра Linux обрабатывает разрывы памяти в режиме copy-on-write (COW). Эта ошибка могла позволить злоумышленнику повысить свои привилегии в системе.

Более того, эта брешь затрагивала и Android. Вскоре после этого Google выпустила патч, однако были разработаны новые атаки, использующие Dirty COW на системе Android.

Как утверждают эксперты Bindecy, никто не заметил, что предложенный патч не до конца устранял уязвимость Dirty COW. Исходная уязвимость повлияла на функцию get_user_pages, которая используется для получения физических страниц за виртуальными адресами в пользовательских процессах.

По словам исследователей, выпущенное исправление не уменьшает запрашиваемые разрешения.

«_user_pages теперь просто помнит тот факт, что мы прошли цикл COW», — объясняют специалисты.

Команда Bindecy обнаружила, что уязвимость все еще может быть использована, когда задействованы Transparent Huge Pages (THP) и Page Medium Directory (PMD).

Исследователи обнаружили, что код исправления Dirty COW, который имеет отношение к THP, содержит функцию can_follow_write_pmd, которая в основном применяет ту же логику can_follow_write_pte к большим страницам PMD.

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

«На данный момент использовать страницу достаточно просто — мы сначала разбиваем исходную страницу , а затем включаем грязный бит», — отмечает Bindecy.

Ранее мы также упоминали о том, что эксплойты для Android используют уязвимость Dirty COW.

Linux вдохнул новую жизнь в видеокарты AMD 2011–2013 годов

Старые видеокарты AMD получили неожиданно хорошие новости из мира Linux. В ближайшей версии ядра Linux 6.19, выход которой ожидается в феврале 2026 года, появится полноценная поддержка графических процессоров на архитектурах GCN 1.0 и 1.1 — тех самых, что дебютировали ещё в 2011–2013 годах.

Речь идёт о поколениях Southern Islands и Sea Islands, знакомых по таким моделям, как Radeon HD 7970, HD 7950, а также Radeon R9 290 и 290X.

До сих пор владельцы этих видеокарт были вынуждены мириться с ограничениями: современный драйверный стек AMDGPU официально поддерживал только GCN 1.2 и более новые архитектуры. Старые GPU оставались за бортом всех свежих оптимизаций.

Ситуацию удалось изменить благодаря работе Тимура Кристофа и команды Valve, которая активно участвует в развитии графического стека для Linux. В результате для GCN 1.0 и 1.1 подготовили новые открытые драйверы, которые теперь планируется включить в основную ветку ядра.

И это не просто «поддержка для галочки». По тестам Phoronix, перевод Radeon HD 7950 на новый драйверный стек даёт прирост производительности до 30%. Особенно заметен эффект в старых OpenGL-играх, где оптимизации оказываются наиболее эффективными.

Одна из ключевых причин такого прироста — полноценная поддержка Vulkan-драйвера RADV из Mesa. Ранее владельцы старых карт были фактически лишены преимуществ современного графического стека, а теперь получают более быстрый и стабильный рендеринг.

Разумеется, ждать чудес не стоит: видеокарты 12–14-летней давности не станут внезапно пригодными для современных AAA-проектов. Но для повседневной работы, старых игр и просто более плавного интерфейса улучшения будут вполне ощутимыми.

RSS: Новости на портале Anti-Malware.ru