Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2025-12748 — Proof of concept & details for CVE-2025-12748 | Kitploit
Ferramentas/GitHubGitHub/teresh1/cve-2025-12748
Cloud Infrastructure SecurityVulnerability AnalysisExploitationLearning & Education
GitHubteresh1/cve-2025-12748

CVE-2025-12748

Proof of concept & details for CVE-2025-12748

Ver Repositório
há 9 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2025-12748

Eng Rus

  • Credit: Svyatoslav Tereshin (@TERESH1), Artem Mukhin (@saladosss)
  • Issues: #687, #825

English

Descrição

Foi descoberto um problema no processamento de arquivos XML.

O processamento do conteúdo do arquivo é realizado antes da verificação de ACL. Isso permite que um usuário com permissões limitadas envie um arquivo XML especialmente criado que pode causar consumo excessivo de recursos, levando a um potencial ataque de negação de serviço (DoS).

Configuração do Ambiente

  1. SO: Alt Linux P10 server
  2. Instale e configure libvirt/qemu conforme o artigo (em russo)
  • resumo em inglês:
root@kitploit:~
apt-get install libvirt libvirt-kvm libvirt-qemu
gpasswd -a user vmusers
systemctl enable --now libvirtd
  1. Em /etc/libvirt/libvirtd.conf, substitua o conteúdo por:
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. Adicione uma regra para o 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. Reinicie os serviços: systemctl restart libvirtd polkit

Reprodução

Tentativa de acessar o libvirt com um arquivo XML válido:

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

Será recebido o seguinte erro:

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

E o log correspondente do 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]

Tentativa de acessar o libvirt com um arquivo XML malicioso:

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

O log estará vazio devido à parada do servidor, e o aumento no consumo de recursos pelo libvirtd pode ser observado no top.

Руссский

Descrição

Foi descoberto um problema no processamento de arquivos XML.

O processamento do conteúdo do arquivo é realizado antes da verificação de ACL. Isso permite que um usuário com permissões limitadas envie um arquivo XML especialmente criado que pode causar consumo excessivo de recursos, levando a um potencial ataque de negação de serviço (DoS).

Configuração do Ambiente

  1. SO Alt Linux P10 server
  2. instalar/configurar libvirt/qemu conforme o artigo
  3. em /etc/libvirt/libvirtd.conf substituir o texto por:
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. adicionar uma regra para o 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. reiniciar: systemctl restart libvirtd polkit

Reprodução

Acesso ao libvirt com um arquivo XML válido:

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

Será recebido um erro:

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

E o log correspondente do 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]

Acesso ao libvirt com um arquivo XML malicioso:

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

O log estará vazio devido à parada do servidor; no top é possível observar o aumento no consumo de recursos do libvirtd.

Baixar ferramenta