In che modo è possibile monitorare le modifiche relative alla sicurezza apportate al file system sulla mia istanza Linux EC2?

4 minuti di lettura
0

Desidero abilitare il sistema Linux Audit per monitorare le modifiche al file system sulla mia istanza Amazon Elastic Compute Cloud (Amazon EC2).

Breve descrizione

Il sistema Linux Audit tiene traccia dell'accesso ai file importanti e crea un audit trail in caso di danneggiamento dei file o altre modifiche involontarie. Puoi utilizzare il sistema Linux Audit per tenere traccia delle modifiche apportate ai file in Amazon Elastic File System (Amazon EFS) o in qualsiasi altro tipo di file system. Se si configura il sistema di audit per registrare molti tipi di informazioni, ciò potrebbe influire sulle prestazioni del sistema locale. Dopo aver installato il sistema Linux Audit sul tuo sistema, puoi creare regole che monitorino l'attività sul tuo file system.

Per tenere traccia di tutte le modifiche apportate al file system, abilita il sistema Linux Audit su ogni client che monta il tuo file system.

Nota: l'esecuzione del componente auditd potrebbe influire sulle prestazioni del sistema. Per ulteriori informazioni consulta la sezione Is there any system performance penalty to enable auditing? sul sito Web di Red Hat.

Risoluzione

  1. Connettiti alla tua istanza EC2 usando SSH come utente ec2-user/ubuntu/root. Sostituisci ubuntu con il nome utente della tua AMI.

  2. Installa il pacchetto di audit:

    RHEL e CentOS

    # sudo yum install audit

    SUSE Linux

    # sudo zypper install audit

    Ubuntu

    # sudo apt install auditd
  3. Crea regole per il sistema Linux Audit. Per testare inizialmente le regole, usa il comando auditctl al fine di aggiungere o rimuovere immediatamente le regole.

    Nota: gli esempi seguenti mostrano le regole per un file system EFS.

    Utilizza il seguente comando per monitorare tutte le attività relative alla posizione di montaggio del file system:

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

    Di seguito sono riportati alcuni esempi di azioni che il sistema di audit può registrare se opportunamente configurato:

    $ mkdir dir1
    $ touch file1
    $ touch file2
    $ mv file1 file3
    $ rm -f file2
    $ chmod 600 file3
    $ rmdir dir1
    $ rm -f file3
  4. Usa il comando ausearch -k efs_changes per visualizzare il log degli audit. L'esempio seguente mostra il log di audit per il comando mkdir in base alle operazioni esemplificative del passaggio 3:

    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"

    Questo esempio mostra il log di audit non elaborato. Il log di audit contiene una grande quantità di informazioni per ogni operazione.

    Per creare un output più breve nel log di audit, esegui il comando aureport. Questa versione mostra ancora tutte le operazioni:

    $ 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

    Tieni presente che non è necessario registrarle tutte. Ad esempio, puoi creare una regola per registrare solo le azioni correlate all'eliminazione:

    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

    Se si eseguono i comandi di esempio del passaggio 3, nel log vengono visualizzati solo i comandi specificati relativi all'eliminazione:

    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. Per rendere le regole persistenti, configurale nel file /etc/audit/audit.rules. Per ulteriori informazioni, consulta la sezione Defining persistent audit rules and controls in the /etc/audit/audit.rules file sul sito Web di Red Hat.

Informazioni correlate

System auditing sul sito Web di Red Hat

Customized file monitoring with Auditd sul sito Web di Red Hat

AWS UFFICIALE
AWS UFFICIALEAggiornata 7 mesi fa