Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
pfsense-ldap-name-collision — pfSense CE 2.9.0-DEVELOPMENT - Alta - Remota - Privilégio remanescente - Nome de administrador LDAP | Kitploit
Ferramentas/GitHubGitHub/abraxas/pfsense-ldap-name-collision
Autenticação e AutorizaçãoEscalada de PrivilégiosAnálise de VulnerabilidadesExploraçãoExploração de Aplicações WebSegurança WebTestes de PenetraçãoLabs e Prática

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
GitHubabraxas/pfsense-ldap-name-collision

pfsense-ldap-name-collision

pfSense CE 2.9.0-DEVELOPMENT - Alta - Remota - Privilégio remanescente - Nome de administrador LDAP

Ver Repositório
2há 5 diasAinda não revisado

Abraxas Labs - pfsense-ldap-name-collision

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  pfsense-ldap-name-collision

pfsense-ldap-name-collision

Classe: Privilégio residual Alcance: Remoto

pfSense CE 2.9.0-DEVELOPMENT (9363ac5) - pfsense.org

getUserEntry($name) retorna a linha local quando o nome corresponde. isAdminUID() então vê uid 0 e isAllowedPage permite todas as páginas. passwordmg trata a sessão como local e grava o hash desse usuário. uid == 0 é uma comparação frouxa.

IDainda sem CVE
ClassePrivilégio residual
AlcanceRemoto (WebGUI autenticado, salvo indicação em contrário)
CWECWE-269
CVSSAlto: 8.8 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
ProdutopfSense CE
Afetado2.9.0-DEVELOPMENT (9363ac5b8651a1c7a333180425ce7719070f95f9)
AutenticaçãoSessão WebGUI com remote WebGUI login when authmode != Local; passwordmg is not warn-root
LicençaGNU Affero GPL v3.0
Laboratórioapenas 127.0.0.1

Fixe o master público 9363ac5. O laboratório é um gadget PHP do sink fixado, HTTP em loopback em 127.0.0.1:19010.

Série de write-ups: https://abraxaslabs.tech/research/pfsense-ce-leftovers

O que um atacante pode fazer

MétodoSinkPrivilégio
Bind LDAP/RADIUS com nome de admin local, depois POST passwordmggetUserEntry / isAdminUID / local_user_set_passwordIntegridade: Comprovado em laboratório: o admin remoto é isAdminUID; todas as páginas, incluindo diag_command; passwordmg definiu o hash do uid 0. Nomes remotos apenas stub falham de forma segura.
mesmo resíduomesmo sinkReconhecimento: Comprovado em laboratório: flag de permissão para todas as páginas.
mesmo resíduomesmo sinkDisponibilidade: Nenhuma demonstrada.

Requer: remote WebGUI login when authmode != Local; passwordmg is not warn-root. CSRF-magic no POST, salvo indicação em contrário. O WebGUI PHP-FPM é root.

Requer: remote WebGUI login when authmode != Local; passwordmg is not warn-root. CSRF-magic no POST, salvo indicação em contrário. O WebGUI PHP-FPM é root. CSRF-magic no POST, salvo indicação em contrário. O WebGUI PHP-FPM é root.

Superfície adjacente que permanece fechada

Nomes remotos apenas stub. O próprio usermanager é warn-root. O skip de uid do xmlrpc SA-26_22 é um bug diferente.

Sem Diagnostics: Command a menos que essa página também seja concedida.

Laboratório

cd lab
./run.sh

Loopback 127.0.0.1:19010. Projeto Compose pfsense-ldap-name-collision. Testemunha PFSENSE-LDAP-NAME-COLLISION-WITNESS. Apenas loopback: 127.0.0.1:19010. Projeto Compose pfsense-ldap-name-collision. Testemunha PFSENSE-LDAP-NAME-COLLISION-WITNESS. Gadget PHP das linhas fixadas. A stack é desmontada após a execução.

Última linha:

SUCCESS PFSENSE-LDAP-NAME-COLLISION control-isadmin=no control-diag=no control-hash-unchanged=yes trigger-isadmin=yes trigger-all-pages=yes trigger-hash-set=yes uid-loose-eq=yes PFSENSE-LDAP-NAME-COLLISION-WITNESS

Correção

Não mapeie um nome remoto para uma linha local de uid 0. Use uid estrito === '0' mais a origem de autenticação. Faça passwordmg ser warn-root.

Referências

  • github.com/pfsense/pfsense 9363ac5b8651a1c7a333180425ce7719070f95f9
  • CWE-269
  • Série: https://abraxaslabs.tech/research/pfsense-ce-leftovers
Baixar ferramenta