Aprenda o Linux System Auditing com a Auditd Tool no CentOS/RHEL
- 3127
- 54
- Mrs. Christopher Okuneva
A auditoria do sistema refere-se simplesmente à análise aprofundada de um sistema direcionado específico: uma auditoria é composta por um exame das várias partes que compreendem esse sistema, com avaliação crítica (e teste, se necessário) em diferentes áreas de interesse.
Leia também: Lynis - Ferramenta de Auditoria de Segurança e Digitalização para Sistemas Linux
Um dos subsistemas críticos em RHEL/CENTOS o sistema de auditoria Linux comumente conhecido como Auditd. Ele implementa um meio de rastrear informações relevantes para a segurança em um sistema: ele usa regras pré-configuradas para coletar vastas quantidades de informações sobre eventos que estão acontecendo no sistema e os registra em um arquivo de log, criando um teste de auditoria.
Ele pode registrar informações como data e hora, tipo e resultado de um evento; Usuários que causaram o evento, quaisquer modificações feitas em arquivos/bancos de dados; Usos de mecanismos de autenticação do sistema, como PAM, LDAP, SSH e outros.
Auditd Registre também quaisquer alterações feitas nos arquivos de configuração de auditoria ou qualquer tentativa de acessar arquivos de log de auditoria e quaisquer esforços para importar ou exportar informações para ou do sistema, além de muitas outras informações relacionadas à segurança.
Por que o sistema de auditoria Linux é importante?
- Não requer programas ou processos externos para executar em um sistema, tornando-o autossuficiente.
- É altamente configurável, portanto, permite visualizar qualquer operação do sistema que você deseja.
- Ajuda a detectar ou analisar possíveis compromissos de um sistema.
- É capaz de trabalhar como um sistema de detecção independente.
- Pode funcionar com sistemas de detecção de intrusões para permitir a detecção de intrusões.
- É uma ferramenta vital para auditar investigações forenses.
Os componentes do sistema de auditoria Linux
O sistema de auditoria possui dois componentes principais, a saber:
- Aplicativos e utilitários/ferramentas do espaço do usuário, e
- Processamento de chamadas do sistema do lado do kernel-Isso aceita chamadas de sistema de aplicativos de espaço do usuário e os passa por três tipos de filtros, a saber: do utilizador, tarefa, saída, ou excluir.
A parte mais importante é o espaço do usuário Daemon de auditoria (Auditd) que reúne informações com base em regras pré-configuradas, do kernel e gera entradas em um arquivo de log: o log padrão é /var/log/auditoria/auditoria.registro.
Além disso, o Audispd (Daemon Dispatcher de auditoria) é um multiplexor de eventos que interage com Auditd e envia eventos para outros programas que desejam realizar processamento de eventos em tempo real.
Existem vários espaço do usuário Ferramentas para gerenciar e recuperar informações do sistema de auditoria:
- Auditctl - Uma utilidade para controlar o sistema de auditoria do kernel.
- AuMearch - Um utilitário para pesquisar arquivos de log de auditoria para eventos específicos.
- aureport - Uma utilidade para criar relatórios de eventos gravados.
Como instalar e configurar a ferramenta de auditoria em RHEL/CENTOS/FEDORA
Primeiro, verifique se a ferramenta de auditoria está instalada no seu sistema usando o comando rpm e o utilitário grep da seguinte forma:
# rpm -qa | Auditoria GrepVerifique a ferramenta Auditd
Se você não tiver os pacotes acima instalados, execute este comando como usuário root para instalá -los.
# yum instalar auditoria
Em seguida, verifique se Auditd está ativado e em execução, emita os comandos do SystemCTL abaixo no terminal.
--------------- No CentOS/Rhel 7 --------------- # SystemCTL IS-IS-Auditd # SystemCtl Status Auditd # SystemCtl START AUDITD [START] # SystemCtl Ativar Auditd [Enable] --------------- No CentOS/Rhel 6 --------------- # Serviço Auditd Status # Service Auditd Iniciar [Iniciar] # chkconfig Auditd em [Enable]Verifique o status da ferramenta Auditd
Agora veremos como configurar Auditd Usando o arquivo de configuração principal /etc/auditor/auditd.conf. Os parâmetros aqui permitem controlar como o serviço é executado, como definir a localização do arquivo de log, número máximo de arquivos de log, formato de log, como lidar com discos completos, rotação de log e muitas outras opções.
# vi/etc/auditor/auditd.conf
Da saída da amostra abaixo, os parâmetros são auto-explicativos.
Arquivo de configuração AuditdEntendendo as regras de auditoria
Como mencionamos anteriormente em, Auditd usa regras para coletar informações específicas do kernel. Essas regras são basicamente Auditctl Opções (veja a página do homem) que você pode pré-consagrar regras no /etc/auditoria/regras.D/Auditoria.regras arquivo (no CentOS 6, use o /etc/auditoria/auditoria.regras arquivo), para que eles sejam carregados na startup.
Existem três tipos de regras de auditoria que você pode definir:
- Regras de controle - Eles permitem a modificação do comportamento do sistema de auditoria e algumas de suas configurações.
- Regras do sistema de arquivos (também referido como relógios de arquivo) - Ative a auditoria de acesso a um determinado arquivo ou um diretório.
- Regras de chamada do sistema - Permite o registro das chamadas do sistema feitas por qualquer programa.
Agora abra o arquivo de configuração principal para edição:
# vi/etc/auditoria/regras.D/Auditoria.regras
Observe que a primeira seção deste arquivo deve conter Regras de controle. Em seguida, adicione suas regras de auditoria (relógios de arquivo e regras de chamada do sistema) na seção intermediária e, finalmente, a última seção contém configurações de imutabilidade, que também são regras de controle.
Exemplos de regras de controle de auditoria
-D #Remove todas as regras anteriores -B 3074 #Define Buffer Tamanho -f 4 #panic na falha -R 120 #Create no máximo 120 mensagens de auditoria por segundo
Exemplos de regras do sistema de arquivos Auditd
Você pode definir relógios de arquivo usando esta sintaxe:
-w/caminho/para/arquivo/ou/diretório -p permissões -k key_name
Onde a opção:
- c - é usado para especificar um arquivo ou diretório para vigiar.
- p - permissões para serem registradas, r - Para acesso de leitura, c - para acesso a gravar, x - para executar acesso e a - Para mudança de atributo de arquivo ou diretor.
- -k - Permite definir uma sequência opcional para identificar qual regra (ou um conjunto de regras) criou uma entrada de log específica.
Essas regras permitem que a auditoria assista a eventos fazendo alterações nesses arquivos críticos do sistema.
-W /etc /passwd -p wa -k passwd_changes -w /etc /group -p wa -k group_changes -w /etc /shadow -p wa -k Shadow_changes -w /etc /sudoers -p wa -k sudoers_changes
Exemplos de regras de chamada do sistema Auditd
Você pode definir uma regra de chamada do sistema usando o formulário abaixo:
-uma ação, filtro -s System_Call -f Campo = Value -k key_name
onde:
- Ação - tem dois valores possíveis: sempre ou nunca.
- filtro - Especifica o filtro de correspondência de regras do kernel (tarefa, saída, usuário e exclusão) é aplicada ao evento.
- Chamada do sistema - Nome da chamada do sistema.
- campo - Especifica opções adicionais, como arquitetura, PID, GID etc para modificar a regra.
Aqui estão algumas regras que você pode definir.
-A sempre, saída -f arch = b64 -s adjtimex -s setTimeofday -k time_change -a sempre, saída -s sethostname -s setdomainname -k system_locale
Por fim, adicione as configurações de imutabilidade no final do arquivo, por exemplo:
-E 1 #Auditorianable -e 2 #Make A configuração imutável -a reinicialização é necessária para alterar as regras de auditoria
Exemplo de arquivo de configuração de regras Auditd
Arquivo de configuração de regras AuditdComo definir regras Auditd usando o utilitário AuditCTL
Como alternativa, envie as opções para Auditd Enquanto estiver em funcionamento, usando o Auditctl Como nos exemplos a seguir. Esses comandos podem substituir as regras no arquivo de configuração.
Para listar todas as regras de auditoria atualmente carregadas, passe o -eu
bandeira:
# auditctl -l
Em seguida, tente adicionar algumas regras:
# auditctl -w /etc /passwd -p wa -k passwd_changes # auditctl -w /etc /group -p wa -k group_changes # auditctl -w /etc /sudoers -p wa -k sudoers_changes # auditctl -lAdicionar regras Auditd usando Auditctl
Entendendo os arquivos de log do Auditd
Todas as mensagens de auditoria são gravadas em /var/log/auditoria/auditoria.registro arquivo por padrão. Para entender o formato de entrada de log, carregaremos uma regra e verificaremos a entrada do log gerada após um evento que corresponde à regra.
Supondo que tenhamos um diretório secreto de backups, esta regra de auditoria registrará qualquer tentativa de acessar ou modificar este diretório:
# auditctl -w/backups/secret_files/-p rwa -k secret_backup
Agora, usando outra conta do sistema, tente entrar no diretório acima e executar o comando LS:
$ cd/backups/secret_files/$ ls
A entrada de log ficará assim.
Verifique os logs de auditoria para alteraçõesO evento acima é composto por três tipos de registros de auditoria. O primeiro é tipo = syscall:
tipo = syscall msg = auditoria (1505784331.849: 444): arch = c000003e syscall = 257 sucesso = sim saída = 3 a0 = ffffffffffffff9c a1 = 8ad5c0 a2 = 90800 a3 = 0 itens = 1 ppid = 2191 PID = 260 AUID = 1000 uid = 1000 GID = 1000 EU suid = 1000 fsuid = 1000 egid = 1000 sgid = 1000 fsgid = 1000 tty = pts1 ses = 3 comm = "ls" exe = "/usr/bin/ls" subj = não confinado_u: não confinado_r: não confinado_t: s0-s0: c0.c1023 key = "secret_backup"
O segundo é TIPO = CWD.
TIPO = CWD MSG = AUDIT (1505784331.849: 444): cwd = "/backups/secret_files"
E o último é tipo = caminho:
TIPO = PATH MSG = AUDIT (1505784331.849: 444): item = 0 nome = "."inode = 261635 dev = 08: 01 modo = 040755 ouid = 0 ogid = 0 rdev = 00: 00 obj = uncfined_u: object_r: default_t: s0 objType = normal
Você pode encontrar uma lista completa de todos os campos de eventos (como MSG, Arch, SES etc ...) e seus significados na referência do sistema de auditoria.
É tudo por agora. No próximo artigo, veremos como usar o AuMearch para consultar arquivos de log de auditoria: explicaremos como pesquisar informações específicas dos logs de auditoria. Se você tiver alguma dúvida, entre em contato conosco através da seção de comentários abaixo.
- « Como consultar logs de auditoria usando a ferramenta 'Ausearch' no CentOS/RHEL
- Impressione seus amigos com este terminal falso de hacker de Hollywood »