Linux e infraestrutura · controle

SELinux AVC — diagnóstico de negações

Registros de controle de acesso que ajudam a explicar ações negadas por política SELinux.

Conceito e funcionamento

SELinux usa domínios e tipos para limitar operações, independentemente das permissões POSIX. Mensagens AVC descrevem contexto, classe e ação negada. Uma aplicação pode falhar porque o arquivo está com rótulo incompatível, porque a porta possui tipo incorreto ou porque sua política exige ajuste específico.

Como investigar e correlacionar

Analise getenforce, sestatus e ausearch -m AVC; observe domínio do processo, tipo de objeto e operação. Compare com logs do serviço. Prefira corrigir rotulagem ou configuração quando for a causa, com semanage fcontext e restorecon apenas após revisão e teste.

Consulta ou exemplo orientativo

Execute somente em ambiente autorizado, com privilégios e ferramentas adequados. A saída depende da configuração da fonte.

Bash
getenforce
sestatus
sudo ausearch -m AVC -ts recent -i

ESTUDO DE CASO · CENÁRIO SINTÉTICO

Aplicação em uma investigação

Situação

Uma aplicação migrada para /dados não consegue ler seus arquivos enquanto DAC aparenta estar correto.

Procedimento orientado

Inspecione getenforce, contexto com ls -Z e AVCs, e compare o domínio do serviço com o tipo rotulado no caminho.

Resultado esperado

A recomendação explica ajuste de rótulo ou política conforme diagnóstico, com validação posterior e plano de rollback.

Cuidados adicionais

Executar setenforce 0 como primeira resposta esconderia a causa e reduziria a proteção.

Limitações e interpretações incorretas

Um AVC não significa que a política deve ser ampliada. Desabilitar SELinux ou aplicar permissões genéricas mascara problemas e diminui isolamento. O diagnóstico depende de logs disponíveis e do domínio correto.

Checklist de validação

  • Verificar enforcing/permissive
  • Localizar AVC da janela
  • Conferir contextos
  • Justificar correção mínima

Referências técnicas

Guias para aprofundar

  • hardening linux oracle rhel9 — aguardando publicação editorial