Personal tools
You are here: Home Dicas e Tutoriais Processo de auditoria em AIX
Document Actions

Processo de auditoria em AIX

by Carla Cristina Alonzo Duclos last modified 13-06-2007 02:30 PM

O sistema operacional Unix AIX, dispõe de um sistema de auditoria que pode ser configurado e habilitado pelo administrador de sistemas, que permite registrar todas as ações efetuadas no servidor.

1 - Processo de auditoria

O processo de auditoria consiste num sistema que registra em logs binários as ações realizadas por todos os usuários do sistema operacional, conforme configuração definida.

Antes de iniciar a configuração da auditoria deve-se definir o local onde os logs serão armazenados e criar um filesystem específico para isso. É importante tomar o cuidado de configurar as permissões de acesso a este diretório de modo que apenas os administradores do sistema possam acessá-lo.

Após criado o filesystem, o próximo passo é configurar os arquivos que se encontram no diretório /etc/security/audit. Para configurar a auditoria precisa-se definir o que será auditado, quais usuários serão auditados e de que forma os logs serão armazenados.

2 - O que pode ser monitorado?

A seguir temos a descrição de alguns itens que podem ser utilizados para monitoria:

USER_SU	Utilização do comando su

PASSWORD_Change - Utilização do comando passwd

FILE_Rename     - Alteração de nome de arquivos

FS_Rmdir        - Remoção de diretório

AUD_Bin_Def     - Audit bin configuration

AUD_Lost_Recs   - Notificação caso haja registros perdidos

FILE_Write      - Registra a escrita em arquivos (pode-se especificar quais arquivos sofrerão
                  esta monitoria configurando o arquivo objects, conforme descrito no item 4 
                  deste documento).
.
FILE_Owner      - Alteração de permissão de arquivos: OWNER

FILE_Mode       - Mudança de permissão (chmod)

FILE_Acl        - Alteração de permissão de arquivos: utilizando ACL

FILE_Privilege  - Mudança de características de owner (chown)

AT_JobRemove    - Remoção de um Job da Crontab ou At

CRON_JobRemove  - Lista qual usuário removeu um job da cron e quando ele removeu
 
CRON_JobAdd     - Lista qual usuário adicionou um job da cron e quando ele removeu

LVM_DeletePV    - Remoção de PV (Physical Volume)

LVM_DeleteVGSA  - Remoção da Volume Group Status Area

LVM_DeleteVG    - Remoção de VG (Volume Group)

LVM_DeleteLV    - Remoção de LV (Logical Volume)

LVM_VaryoffVG   - Colocação de VG em status offline

3 - Configurando e habilitando a AUDITORIA:

A auditoria é configurada através da edição de arquivos de configuração que se encontram no diretório /etc/security/audit/.

3.1 - Arquivos de configuração no diretório /etc/security/audit/

No diretório /etc/security/audit encontramos os seguintes arquivos:

# ls -l
total 136
-rw-r-----   1 root     audit         37 Sep 16 2002  bincmds
-rw-rw----   1 root     audit       1092 Nov 16 12:24 config
-rw-rw----   1 root     audit      14208 Oct 09 15:37 events
-rw-r-----   1 root     audit        340 Sep 16 2002  objects
-rw-rw----   1 root     audit       1107 Nov 16 12:23 oconfig
-rw-r-----   1 root     audit         54 Sep 16 2002  streamcmds
#

A função destes arquivos é:

bincmds    - Arquivo onde estão os comandos para monitoração no modo binmode
config     - Arquivo de configuração da auditoria onde são especificadas as 
             características do processo de audit o que será monitorado
events     - Arquivo onde estão definidos os eventos que podem ser monitorados
objects    - Arquivo onde estão definidos os objetos a serem monitorados
streamcmds - Arquivo onde estão os comandos para monitoração no modo 
             streammode

Para habilitar a auditoria no AIX, normalmente configuramos os seguintes arquivos:

- config
- objects
- events

3.1.1 - Configuração do /etc/security/audit/config

Segue no quadro a seguir, um exemplo de configuração do arquivo config, o principal arquivo de configuração, onde definimos “como”, “o que” e “quem” serão auditados.

Neste arquivo definimos:

    O método de geração de logs (bin ou stream)
    O diretório onde os logs serão gerados: /{filesystemcriado}
    Os processos que serão monitorados (descritos no próximo ítem: USER_SU, etc)
    Quais usuários serão monitorados

Segue um modelo do arquivo config:

start:
        binmode = on
        streammode = off

bin:
        trail = /{filesystemcriado}/trail
        bin1 = /{filesystemcriado}/bin1
        bin2 = /{filesystemcriado}/bin2
        binsize = 10240
        cmds = /etc/security/audit/bincmds
        freespace = 65536

stream:
        cmds = /etc/security/audit/streamcmds

classes:
        personalizada = USER_SU,PASSWORD_Change,FILE_Rename,FS_Rmdir,AUD_Bin_Def,AUD_Lost_Recs,FILE_Write,\
                        FILE_Rename,FILE_Owner,FILE_Mode,FILE_Acl,FILE_Privilege,AT_JobAdd,AT_JobRemove,\
                        CRON_JobAdd,CRON_JobRemove,LVM_DeletePV,LVM_DeleteVGSA,LVM_DeleteVG,\
                        LVM_DeleteLV,LVM_VaryoffVG

users:
        usuarioA = personalizada
        usuarioB = personalizada
        usuarioC = personalizada

3.1.2 - Configuração do /etc/security/audit/objects

O arquivo objects permite que personalizemos a relação dos objetos que são monitorados. Podemos incluir os arquivos do /etc, do /home, etc, conforme desejarmos.

Abaixo podemos ver como incluir todos os arquivos abaixo do /etc para serem monitorados.

Basta executar na linha de comando:

# find /etc -type f | awk '{printf("%s:\n\tw = FILE_Write\n\n",$1)}' >> objects

3.1.3 - Configuração do /etc/security/audit/events

O arquivo events contém o que cada ação auditada faz. Podemos personalizar, por exemplo, que a ação FILE_Write registre o nome do arquivo editado adicionado file: %s , conforme mostrado a seguir.

Exemplo:

Original:

FILE_Write = printf "file descriptor = %d"

Modificado:

FILE_Write = printf "file descriptor = %d file: %s"

4 - Automatizando a inclusão de novos usuários no sistema de auditoria.

Uma vez implementado o processo de auditoria, para que os usuários criados já sejam adicionados no sistema de auditoria, deve-se configurar o arquivo: /usr/lib/security/mkuser.default:

#more mkuser.default

user:
        auditclasses = personalizada
        pgrp = staff
        groups = staff
        shell = /usr/bin/ksh
        home = /home/$USER

admin:
        pgrp = system
        groups = system
        shell = /usr/bin/ksh
        home = /home/$USER

5 - Administração do sistema de auditoria

5.1 - Ativação/Desativação do sistema de auditoria

Iniciar o processo de auditoria

# audit start

Parar o processo de auditoria:

# audit shutdown

Daemon do processo de auditoria ativo:

# ps -ef |grep audit
    root  315630       1   0 11:48:16      -  0:00 auditbin
    root 3489980 4378874   1 13:02:52  pts/1  0:00 grep audit
#

Para que a auditoria seja iniciada em caso de boot do servidor, deve-se incluir uma linha no arquivo /etc/inittab:

Exemplo:

audit:2:once:/usr/sbin/audit start > /dev/console 2>&1

5.2 - Leitura dos registros de auditoria

Para ler os registros de auditoria, utilizar o comando auditpr:

auditpr < bin1

auditpr –v < bin1

No diretório definido para os logs de auditoria:

 
# ls -l
total 448
-rw-------   1 root     system            0 Nov 16 11:48 auditb
-rw-rw----   1 root     system         6785 Nov 16 13:09 bin1
-rw-rw----   1 root     system            0 Nov 16 12:23 bin2
drwxr-xr-x   2 root     system          256 Oct 27 11:52 lost+found
-rw-r-----   1 root     system       221005 Nov 16 12:23 trail

6 - Resolução de problemas com AUDIT:

Problema 1:

Caso o audit apresente o seguinte erro ao tentar iniciar o audit:

 
# /usr/sbin/audit start
 
AUDITBIN: ** failed backend command /usr/sbin/auditcat -p -o /{filesystemcriado}/trail -r /{filesystemcriado}/bin1
#

Para resolver, pode-se renomear os arquivos /{filesystemcriado}/trail e /{filesystemcriado}/bin1 e reiniciar o audit.

# /usr/sbin/audit start

# ps -ef |grep audit
    root 2515120       1   0 16:06:28      -  0:00 auditbin
    root 3981322 2478182   0 16:06:35  pts/2  0:00 grep audit
 
# ls -lrt
total 10328
drwxr-xr-x   2 root     system          256 Apr 15 16:27 lost+found
-rw-r-----   1 root     system      5255750 Apr 29 00:25 trail.old
-rw-rw----   1 root     system        10202 Jun 01 16:02 bin1.old
-rw-------   1 root     system            0 Jun 01 16:06 auditb
-rw-r-----   1 root     system         2819 Jun 01 16:06 trail
-rw-rw----   1 root     system            0 Jun 01 16:06 bin2
-rw-rw----   1 root     system         2320 Jun 01 16:06 bin1

A solução foi encontrada neste link:

http://www.aplawrence.com/Security/mdgiac.html

Segue o trecho que descreve o erro e a solução:

Error message:
auditbin: ** failed backend command
/etc/auditcat -p -o /{filesystemcriado}/trail -r /{filesystemcriado}/bin1
This error can be corrected by removing or renaming the BIN files. It is sometimes helpful to run audit shutdown again
and then to retry audit start.

7 - Referência

Audit Command

http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.aix.security/doc/security/auditing.htm

Configurando Auditoria http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.aix.security/doc/security/setting_up_auditing.htm


A autora mantém também os seguintes sites:


Esse tutorial lhe foi útil? Economizou tempo ou dinheiro? Que tal colaborar com o Cybershark? Qualquer dólar ajuda :) MUITO OBRIGADO!

Anúncios
 

Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: