¿Cómo superviso los cambios relacionados con la seguridad realizados en el sistema de archivos de mi instancia de EC2 de Linux?

4 minutos de lectura
1

Quiero habilitar el sistema de auditoría de Linux para supervisar los cambios en el sistema de archivos de mi instancia de Amazon Elastic Compute Cloud (Amazon EC2). ¿Cómo puedo hacerlo?

Breve descripción

El sistema de auditoría de Linux rastrea el acceso a los archivos importantes y crea un registro de auditoría en caso de daños en los archivos u otros cambios no deseados. Puede utilizar el sistema de auditoría de Linux para realizar un seguimiento de los cambios en los archivos de Amazon Elastic File System (Amazon EFS) o de cualquier otro tipo de sistema de archivos. Tenga en cuenta que configurar el sistema de auditoría para registrar muchos tipos de información puede afectar al rendimiento del sistema local. Tras instalar el sistema de auditoría de Linux en su sistema, puede crear reglas que supervisen la actividad en su sistema de archivos.

Importante: Para realizar un seguimiento de todos los cambios en el sistema de archivos, habilite el sistema de auditoría de Linux en todos los clientes que monten su sistema de archivos.

Resolución

1.    Conéctese a su instancia de EC2 mediante SSH como usuario ec2-user/ubuntu/root user. Sustituya ubuntu con el nombre de usuario de su AMI.

2.    Ejecute el siguiente comando para instalar el paquete de auditoría:

RHEL y CentOS:

# sudo yum install audit

SUSE Linux:

# sudo zypper install audit

Ubuntu:

# sudo apt install auditd

3.    Cree reglas para el sistema de auditoría de Linux. Para probar las reglas inicialmente, utilice el comando auditctl para añadir o eliminar reglas inmediatamente.

Nota: En los siguientes ejemplos se muestran las reglas de un sistema de archivos EFS.

Utilice el siguiente comando para supervisar toda la actividad en la que está montado su sistema de archivos:

$ auditctl -w /home/ec2-user/efs -k efs_changes

Los siguientes son ejemplos de acciones que puede configurar para que registre el sistema de auditoría:

$ mkdir dir1
$ touch file1
$ touch file2
$ mv file1 file3
$ rm -f file2
$ chmod 600 file3
$ rmdir dir1
$ rm -f file3

4.    A continuación, utilice el comando ausearch -k efs_changes para ver el registro de auditoría. El siguiente ejemplo muestra el registro de auditoría del comando mkdir que se muestra en las operaciones del ejemplo anterior:

time->Thu Jan  9 21:30:59 2020
type=PROCTITLE msg=audit(1578605459.080:127433): proctitle=6D6B6469720064697231
type=PATH msg=audit(1578605459.080:127433): item=1 name="dir1" inode=4989235361872937641 dev=00:16 mode=040755 ouid=0 ogid=0 rdev=00:00 nametype=CREATE cap_fp=0000000000000000 cap_fi=0000000000000000 cap_fe=0 cap_fver=0
type=PATH msg=audit(1578605459.080:127433): item=0 name="/home/ec2-user/efs/audit" inode=12759736523397539955 dev=00:16
    mode=040755 ouid=0 ogid=0 rdev=00:00 nametype=PARENT cap_fp=0000000000000000 cap_fi=0000000000000000 cap_fe=0 cap_fver=0
type=CWD msg=audit(1578605459.080:127433): cwd="/home/ec2-user/efs/audit"
type=SYSCALL msg=audit(1578605459.080:127433): arch=c000003e syscall=83 success=yes exit=0 a0=7fffe6aca6e1 a1=1ff a2=1ff a3=7fffe6ac7720 items=2 ppid=18661 pid=2948 auid=500 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts1 ses=18369 comm="mkdir" exe="/bin/mkdir"     key="efs_changes"

El ejemplo anterior muestra el registro de auditoría sin procesar. El registro de auditoría contiene una gran cantidad de información para cada operación.

Utilice el comando aureport para crear una salida menos detallada en el registro de auditoría, pero aun así mostrar todas las operaciones:

$ ausearch -k efs_changes | aureport -f -i

10118. 01/09/2020 21:36:29 file1 open yes /bin/touch ec2-user 127450
10119. 01/09/2020 21:36:29 dir1 mkdir yes /bin/mkdir ec2-user 127449
10120. 01/09/2020 21:36:29 file2 open yes /bin/touch ec2-user 127451
10121. 01/09/2020 21:36:29 file3 rename yes /bin/mv ec2-user 127452
10122. 01/09/2020 21:36:29 file2 unlinkat yes /bin/rm ec2-user 127453
10123. 01/09/2020 21:36:29 file3 fchmodat yes /bin/chmod ec2-user 127454
10124. 01/09/2020 21:36:29 dir1 rmdir yes /bin/rmdir ec2-user 127455
10125. 01/09/2020 21:36:35 file3 unlinkat yes /bin/rm ec2-user 127456

Tenga en cuenta que no tiene que registrar todas las operaciones. Por ejemplo, puede crear una regla para registrar únicamente las acciones relacionadas con la eliminación:

auditctl -a always,exit -F arch=b64 -F dir=/home/ec2-user/efs -S unlink -S unlinkat -S rename -S renameat  -S rmdir -k efs_changes

Si un usuario ejecuta los mismos comandos que se muestran en el conjunto de operaciones del ejemplo original, solo aparecerán en el registro los comandos especificados relacionados con la eliminación:

10126. 01/09/2020 22:17:08 file3 rename yes /bin/mv ec2-user 127519
10127. 01/09/2020 22:17:08 file2 unlinkat yes /bin/rm ec2-user 127520
10128. 01/09/2020 22:17:08 dir1 rmdir yes /bin/rmdir ec2-user 127521
10129. 01/09/2020 22:17:09 file3 unlinkat yes /bin/rm ec2-user 127522

5.    Para que las reglas sean persistentes, configúrelas en el archivo /etc/audit/audit.rules. Para obtener más información, consulte Definir reglas y controles de auditoría persistentes en el /etc/audit/audit.rules file del Portal de clientes de Red Hat.


Información relacionada

Auditoría del sistema

Supervisión personalizada de archivos con Auditd (tutorial)

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 3 años