
CVE-2026-46215 Linux 7.0用 DRM GEM UAF エクスプロイト - Linuxカーネル7のUse-After-Freeに対する初の動作可能なPoC - 作者 Antonius (sw0rdm4n, w1sdom, ev1lut10n)
コード作成者: Antonius (w1sdom / ev1lut10n / sw0rdm4n) - bluedragonsec.com
https://github.com/bluedragonsecurity
このエクスプロイトは限られた環境で動作します。以下の要件を確認してください!!!
これはCVE-2026-46215(LinuxカーネルのUse After Free)のエクスプロイトで、Linux 7.0向けに改変されています!!! このエクスプロイトは、私が以前リリースした最初のエクスプロイトよりも安定しており、信頼性が高いです。
クロスキャッシュ手法: SheavesSiphon
SheavesSiphonは、私がLinux 7.* シリーズで発明した新しいクロスキャッシュ手法です。
しばらくお待ちください... エクスプロイトの実行には時間がかかる場合があります。
バグとは? 古いハンドルがNULLにされない -> ダングリングポインタ(UAFへのレース状態)
このエクスプロイトを実行する際は、しばらくお待ちください! 長い時間がかかります!
kratnowlクロスキャッシュからの改良版
gcc -o exploit exploit.c -lpthread -lutil -static
このエクスプロイトはLinux 7.0向けに設計されていますが、 脆弱性は7.0から7.0.8まで(7.0-rc* シリーズを含む)影響を受けます。 lubuntu 26 + Linux 7.0のみでテスト済みです!!!

Linux 7.0を搭載したlubuntu 26、ubuntu 26、またはubuntu 26サーバーを使用してください。 Linux 7.0.1 - 7.0.8には脆弱性がありますが、このエクスプロイトは7.0以外のバージョン向けには設計していません。 ただし、試してみても構いません。動作する可能性もあります(Linux 7.0以外のバージョンは試していません)。 注: このエクスプロイトはLinux 7.0向けに設計されています。
以下のコマンドを使用してください(一例です): qemu-system-x86_64
-machine type=q35,accel=kvm
-enable-kvm -cpu host -smp $(nproc) -m 6G
-drive file=lubuntu26.qcow2,format=qcow2,if=virtio,cache=none,aio=io_uring,discard=unmap
-netdev user,id=n0,hostfwd=tcp::2222-:22
-device virtio-net-pci,netdev=n0
-device virtio-rng-pci -device virtio-balloon
-vga virtio -display spice-app
-device virtio-serial-pci
-chardev spicevmc,id=spicechannel0,name=vdagent
-device virtserialport,chardev=spicechannel0,name=com.redhat.spice.0
-device qemu-xhci,id=xhci
-device usb-tablet,bus=xhci.0 -device usb-kbd,bus=xhci.0
-rtc base=utc,clock=host
-serial mon:stdio
-s
このエクスプロイトを動作させるには、OSがテキストモードである必要があります。
lubuntu 26またはubuntu 26の場合、エクスプロイトをテストする前に以下を実行してください:
sudo systemctl set-default multi-user.target && reboot
エラー「[-] No DRM」を避けるため、lubuntuの場合はユーザーがvideoグループに属している必要があります。エクスプロイトを実行する前に以下を実行してください:
sudo usermod -a -G video your_username && newgrp video
例: 私のユーザー名: robohax の場合:
sudo usermod -a -G video robohax && newgrp video
確認:
robohax@robohax-standardpc:~$ id
uid=1000(robohax) gid=1000(robohax) groups=1000(robohax),4(adm),24(cdrom),27(sudo),30(dip),44(video),46(plugdev),110(lpadmin),978(sambashare)
44(video) ===> これは /dev/dri を開くために必要です!!!

エクスプロイトが動作している(スタックしていない)ことを示すプログレスバーを追加しました。プログレスバーが動いている限り、OSを再起動する必要はありません。