Voglia di Linux

avventure e soddisfazioni usando software libero

Verificare manomissione MBR e partizione /boot

closeQuesto articolo è stato pubblicato 5 anni 8 mesi 8 giorni giorni fa quindi alcuni contenuti o informazioni presenti in esso potrebbero non essere più validi. Questo sito non è responsabile per eventuali errori causati da questo problema.

Questo è per i paranoici o per chi ha veramente bisogno di essere sicuro che nessuna ha manipolato (per esempio installando un keylogger) la partizione di /boot o il MBR (avendo accesso fisico alla macchina) e ha già tutto il disco criptato. Il primo script crea i due checksum per il MBR e della partizione /boot.

Per sicurezza la partizione /boot non dovrebbe essere anche mai montato all’avvio ma solo quando si aggiorna il kernel.

Ovviamente va eseguito nuovamente dopo ogni aggiornamento dei kernel. Sostituire il nome del utente in entrambi e eseguire il primo da root o con sudo.

##Boot_Integrity_Update.sh

#Controllo filesystem di /boot

umount /boot
e2fsck /dev/sda1

# creazione della directory per gli  shasums 

mkdir -p /home/utente/.boot_integrity

# creazione di immagine del settore boot 

dd if=/dev/sda of=/home/utente/.boot_integrity/bootsectorimage bs=512 count=1

#salva shasum del settore boot in ~/.boot_integrity

shasum /home/utente/.boot_integrity/bootsectorimage > /home/utente/.boot_integrity/bootsector

#pulizia
rm /home/utente/.boot_integrity/bootsectorimage

#salva shasum della partizione boot   in ~/.boot_integrity

shasum /dev/sda1 > /home/utente/.boot_integrity/bootpartition

Il secondo script paragona i valori salvati in precedenza con quelli attuali. Ogni modifica dell’initramd o del kernel o altre modifiche fatte in /boot o nel MBR vengono segnalati con un avviso.

#! /bin/bash

xmessage -c -timeout 2 "Controllo modifiche file di boot.."

# creazione hash   512 B boot sector

mkdir -p /tmp/booted

dd if=/dev/sda of=/tmp/booted/bootsectorimage bs=512 count=1

shasum /tmp/booted/bootsectorimage > /tmp/booted/bootsector

rm /tmp/booted/bootsectorimage

# creazione hash per partizione  /boot 

shasum /dev/sda1 > /tmp/booted/bootpartition

# Imposta variabili per i  hash

SECTORIMAGE=$(head -c 32 /tmp/booted/bootsector)
PARTITION=$(head -c 32 /tmp/booted/bootpartition)

# Imposta variabili per hash "buoni"

KNOWNSECTORIMAGE=$(head -c 32 /home/utente/.boot_integrity/bootsector)

KNOWNPARTITION=$(head -c 32 /home/utente/.boot_integrity/bootpartition)

# Paragona i hash

if test $SECTORIMAGE != $KNOWNSECTORIMAGE ; then

xmessage -c “WARNING-BOOT SECTOR HASH MISMATCH-a password logger may be present in boot loader “

else

xmessage -c -timeout 2 "MBR SECTOR CHECK OK"

fi

if test $PARTITION != $KNOWNPARTITION;

then

xmessage -c "WARNING-BOOT PARTITION HASH MISMATCH-a password logger may be present in bootloader stages, kernel or initramfs"

else

xmessage -c -timeout 2 "PARTZIONE BOOT CHECK OK"

fi

exit 0 

[da qui]

ste

07 aprile 2014



Leave a Reply

Continuando navigare nel sito accetti l'utilizzo dei cookie. maggiori informazioni

Questo sito o gli strumenti terzi da questo utilizzati si avvalgono di cookie necessari al funzionamento ed utili alle finalità illustrate nella pagina sulla privacy. Chiudendo questo banner, scorrendo questa pagina, cliccando su un link o proseguendo la navigazione in altra maniera, acconsenti all’uso dei cookie.

Chiudi