Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2025-12748 — CVE-2025-12748 的概念验证与详细信息 | Kitploit
工具/GitHubGitHub/teresh1/cve-2025-12748
云基础设施安全漏洞分析漏洞利用学习与教育
GitHubteresh1/cve-2025-12748

CVE-2025-12748

CVE-2025-12748 的概念验证与详细信息

查看仓库
9个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2025-12748

英文 俄文

  • 致谢:Svyatoslav Tereshin (@TERESH1), Artem Mukhin (@saladosss)
  • 问题:#687, #825

英文

描述

在 XML 文件处理过程中发现了一个问题。

文件内容的处理在 ACL 检查之前执行。这允许具有有限权限的用户提交特制的 XML 文件,导致资源过度消耗,从而可能引发拒绝服务(DoS)攻击。

环境搭建

  1. 操作系统:Alt Linux P10 server
  2. 根据文章(俄语)安装和配置 libvirt/qemu
  • 英文摘要:
root@kitploit:~
apt-get install libvirt libvirt-kvm libvirt-qemu
gpasswd -a user vmusers
systemctl enable --now libvirtd
  1. 在 /etc/libvirt/libvirtd.conf 中,将内容替换为:
root@kitploit:~
listen_tls = 0
listen_tcp = 1
tcp_port = "16509"
listen_addr = "0.0.0.0"
unix_sock_group = "vmusers"
auth_tcp = "none"
access_drivers = ["polkit"]
min_workers = 1
max_workers = 1
prio_workers = 1
admin_min_workers = 1
admin_max_workers = 1

log_outputs="1:file:/var/log/libvirt/libvirtd.log"
log_level = 1
  1. 为 polkit 添加一条规则(/etc/polkit-1/rules.d/50-libvirt-user.rules):
root@kitploit:~
polkit.addRule(function(action, subject) {
    polkit.log("action=" + action);
    polkit.log("subject=" + subject);
    if ((action.id == "org.libvirt.api.domain.write" || action.id == "org.libvirt.api.domain.save") &&
        subject.user == "user") {
        return polkit.Result.NO;
    }
    else {
        return polkit.Result.YES;
    }
})
  1. 重启服务:systemctl restart libvirtd polkit

复现

使用有效的 XML 文件尝试访问 libvirt:

root@kitploit:~
virsh --connect qemu://system define ./test.xml

将会收到以下错误:

root@kitploit:~
error: Failed to define domain from ./test.xml
error: access denied: access denied "QEMU"

以及相应的 polkit 日志:

root@kitploit:~
polkitd[611708]: <no filename>:2: action=[Action id='org.libvirt.unix.manage']
polkitd[611708]: <no filename>:3: subject=[Subject pid=613904 user='user' groups=user,wheel,vmusers,docker seat=null session='55525' local=false active=true]
polkitd[611708]: <no filename>:2: action=[Action id='org.libvirt.api.connect.getattr' connect_driver='QEMU']
polkitd[611708]: <no filename>:3: subject=[Subject pid=613904 user='user' groups=user,wheel,vmusers,docker seat=null session='55525' local=false active=true]
polkitd[611708]: Unregistered Authentication Agent for unix-process:613904:1401403695 (system bus name :1.113770, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale ru_RU.UTF-8) (disconnected from bus)
polkitd[611708]: <no filename>:2: action=[Action id='org.libvirt.api.domain.write' domain_name='test-vm' connect_driver='QEMU' domain_uuid='123e4567-e89b-12d3-a456-426614174000']
polkitd[611708]: <no filename>:3: subject=[Subject pid=613904 user='user' groups=user,wheel,vmusers,docker seat=null session='55525' local=false active=true]

使用恶意 XML 文件尝试访问 libvirt:

root@kitploit:~
virsh --connect qemu://system define ./oom.xml

由于服务器挂起,日志将为空,可以在 top 中观察到 libvirtd 资源消耗增加。

俄文

描述

在 XML 文件处理过程中发现了一个问题。

文件内容的处理在 ACL 检查之前执行。这允许具有有限权限的用户提交特制的 XML 文件,导致资源过度消耗,从而可能引发拒绝服务(DoS)攻击。

环境搭建

  1. 操作系统:Alt Linux P10 server
  2. 根据文章 安装/配置 libvirt/qemu
  3. 在 /etc/libvirt/libvirtd.conf 中,将文本替换为:
root@kitploit:~
listen_tls = 0
listen_tcp = 1
tcp_port = "16509"
listen_addr = "0.0.0.0"
unix_sock_group = "vmusers"
auth_tcp = "none"
access_drivers = ["polkit"]
min_workers = 1
max_workers = 1
prio_workers = 1
admin_min_workers = 1
admin_max_workers = 1

log_outputs="1:file:/var/log/libvirt/libvirtd.log"
log_level = 1
  1. 为 polkit 添加规则(/etc/polkit-1/rules.d/50-libvirt-user.rules):
root@kitploit:~
polkit.addRule(function(action, subject) {
    polkit.log("action=" + action);
    polkit.log("subject=" + subject);
    if ((action.id == "org.libvirt.api.domain.write" || action.id == "org.libvirt.api.domain.save") &&
        subject.user == "user") {
        return polkit.Result.NO;
    }
    else {
        return polkit.Result.YES;
    }
})
  1. 重启:systemctl restart libvirtd polkit

复现

使用有效的 XML 文件访问 libvirt:

root@kitploit:~
virsh --connect qemu://system define ./test.xml

将会收到错误:

root@kitploit:~
ошибка: Не удалось создать описание домена на основе ./test.xml
ошибка: доступ запрещен: доступ запрещен "QEMU"

以及相应的 polkit 日志:

root@kitploit:~
polkitd[611708]: <no filename>:2: action=[Action id='org.libvirt.unix.manage']
polkitd[611708]: <no filename>:3: subject=[Subject pid=613904 user='user' groups=user,wheel,vmusers,docker seat=null session='55525' local=false active=true]
polkitd[611708]: <no filename>:2: action=[Action id='org.libvirt.api.connect.getattr' connect_driver='QEMU']
polkitd[611708]: <no filename>:3: subject=[Subject pid=613904 user='user' groups=user,wheel,vmusers,docker seat=null session='55525' local=false active=true]
polkitd[611708]: Unregistered Authentication Agent for unix-process:613904:1401403695 (system bus name :1.113770, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale ru_RU.UTF-8) (disconnected from bus)
polkitd[611708]: <no filename>:2: action=[Action id='org.libvirt.api.domain.write' domain_name='test-vm' connect_driver='QEMU' domain_uuid='123e4567-e89b-12d3-a456-426614174000']
polkitd[611708]: <no filename>:3: subject=[Subject pid=613904 user='user' groups=user,wheel,vmusers,docker seat=null session='55525' local=false active=true]

使用恶意 XML 文件访问 libvirt:

root@kitploit:~
virsh --connect qemu://system define ./oom.xml

由于服务器挂起,日志将为空,可以在 top 中观察到 libvirtd 资源消耗增加。

下载工具