è possibile scansionare una partizione pendrive umida con clamav su linux?

3

quindi, non voglio che altre applicazioni abbiano la possibilità di provare a leggere qualsiasi file sulla partizione pendrive.

da qui , dopo aver provato (senza montare alcuna partizione), vedo che posso estrarre l'MBR per esempio, ma Non lo farò con la mia partizione pendrive di 4 GB ...

quindi mi chiedo se possiamo scansionarlo senza montarlo? come ho fatto con l'MBR ma senza estrarlo neanche.

È possibile? Potrebbe essere un altro scanner antivirus potrebbe essere un'opzione anche se clamav non può, o se posso usare qualche trucco di Linux per lasciarlo scansionare senza montare.

Questa domanda differisce da: link
Ciò richiede che sia montato (ma anche montato non riesco a scansionare né l'MBR né la partizione). Mentre sto provando a scansionare SENZA montare la partizione.

    
posta Aquarius Power 21.03.2017 - 05:07
fonte

1 risposta

3

Bene puoi ... a condizione di imitare il montaggio della partizione!

A un livello basso, montare una partizione non è altro che leggere la partizione raw per scoprire e caricare le sue diverse tabelle di sistema (tabella di allocazione, cartella radice, ecc.). Da quel momento, il sistema è in grado di darti accesso ai singoli file.

Se per qualsiasi motivo non vuoi che il kernel monti la partizione, la tua applicazione deve avere una conoscenza sufficiente sui componenti interni del suo file system per poter:

  • trova e leggi la cartella principale (e qualsiasi altra cartella una volta trovata)
  • identifica tutti i file (e cartelle) attivi all'interno di una cartella
  • carica un file da una cartella

Poiché vuoi semplicemente passare clamav lì, puoi tranquillamente ignorare tutti i file speciali (dispositivi, symlink, unix domain socket) e elaborare solo file e cartelle normali. Inoltre, puoi ignorare qualsiasi attributo di file.

Quindi, cammina ricorsivamente le cartelle, leggi individualmente tutti i file e passa il loro contenuto a clamav

Ma ora la domanda è: qual è il guadagno / perdita della sicurezza rispetto ad una normale montatura della partizione?

Pro:

  • nessun rischio di eseguire accidentalmente qualcosa dalla partizione
  • nessun rischio di errore di sicurezza nel driver del file system (*) (nota che puoi mediare con un FUSE se ce n'è uno, o eseguendo l'analisi su una macchina virtuale)
  • nessun rischio che un processo di terze parti possa accedere a qualsiasi file dalla partizione

Contro:

  • devi implementare in modo sicuro tutte le strutture di basso livello e gli accessi di un file system
  • devi fidarti di più del tuo codice che il kernel (molto testato) e il codice del driver
  • devi assicurarti che il tuo codice segua tutte le possibili evoluzioni del file system
  • devi implementare tutti i file system che vuoi essere in grado di clamax

Detto questo, è esattamente ciò che fa l'utilità fsck : legge una partizione raw e cammina lungo la sua gerarchia per scoprire e correggere gli errori di basso livello. Ma è uno strumento di sistema di basso livello ...

TL / DR: a meno che tu non sia un esperto di file system, non sono sicuro che ne valga la pena. IMHO la seguente procedura dovrebbe essere abbastanza sicura:

  • fsck la partizione - se è supportata da fsck
  • montalo in una sottodirectory di una directory con permessi 700 per assicurarti che nessun processo non root possa accedervi, con noexec , nosymfollow , noatime flags
  • passa su clamav

(*) mount man page termina con

BUGS
It is possible for a corrupted file system to cause a crash.

    
risposta data 21.03.2017 - 10:35
fonte

Leggi altre domande sui tag