PostgreSQL
TMA-POSTGRES-1.6
Verify That 'PGPASSWORD' is Not Set in Users' Profiles
MédiaNível 1Automatizadapostgres
Descrição
PostgreSQL can read a default database password from an environment variable called PGPASSWORD. Run as root; counts Bash login scripts in /home/*, /root and /etc/environment that mention PGPASSWORD (other shells need manual review).
Como é verificado
Método de auditoria: Comando shell
shell
[ "$(id -u)" -eq 0 ] || exit 1; n=$(grep -ls PGPASSWORD /home/*/.bashrc /home/*/.profile /home/*/.bash_profile /root/.bashrc /root/.profile /root/.bash_profile /etc/environment 2>/dev/null | wc -l); echo "$n"- Saída esperada
0
Como é corrigido
Método de correção: Orientação ou patch de infraestrutura
Remove PGPASSWORD from the listed login scripts and use ~/.pgpass (mode 0600), a service file without passwords, or certificate/peer authentication instead.
Propriedades
- Sistemas operacionais
- Qualquer
- Tags
- postgresdatabasecredentials
- Referência
- CIS PostgreSQL 18 Benchmark v1.0.0 - 1.6 Verify That 'PGPASSWORD' is Not Set in Users' Profiles
Verificar este host
Execute isto em uma máquina que você tenha permissão para auditar. A varredura é somente leitura.
shell
tmaegis scan --target postgres