SlideShare a Scribd company logo
1 of 21
Download to read offline
Computer Virus e rilevamento



                  © 2005 Simone Amati & Valerio Bruno
Cos’è un computer virus
Semplicemente un programma che si riproduce!
                                                                                Commettere
  Il frutto dell’opera di uno programmatore                                     atti criminosi


                                                                        Studiare le possbilità
 Information warfare             Studiarli per proteggersi               della vita artificiale
                                  da altri tipi di malware


    Virus polimorfici              Esistono in molte forme:                         Worm



                        Trojan         Boot Virus            Virus stealth


1/10                                                           © 2005 Simone Amati & Valerio Bruno
Come sono fatti
1. Search file



2. Verify file infection and attributes



3. Write virus code in host file



4. Execute host file


2/10                                      © 2005 Simone Amati & Valerio Bruno
Come funzionano
• Incubazione: controllo del
sistema e delle difese


• Infezione: scrittura in altri file



• Attivazione



• Propagazione


3/10                                   © 2005 Simone Amati & Valerio Bruno
Cosa significa rilevare un virus
                            Batterio                                  Computer
                                                                        virus


     Criminale



                                           DNA                 Firma virale
             Impronta digitale
Riconoscere un’alterazione dei file del sistema o il codice virale
attraverso opportune tecniche:
     1. Integrity-checking function: confronto tra checksum
     2. Scanning function: confronto tra firme virali e stringhe di dati
     3. Heuristic scanning: testa i programmi in una “sandbox”

4/10                                                 © 2005 Simone Amati & Valerio Bruno
Tecniche di rilevamento .1
Integrity-checking function:

 1. I file da monitorare vengono dati in pasto a particolari algoritmi digest (tipo
    MD5);
 2. Il risultato della digestione è unico e viene memorizzato in un DB;
 3. L’antivirus confronta i dati del DB con i digest calcolati on-the-fly.


       File 1                      Digest1                     DB
                    Hash
                                             Memorizzazione   digest

                      File 1                     Digest1        =
                                     Hash


                  File 1 infetto                 Digest2        ≠
                                     Hash

5/10                                                       © 2005 Simone Amati & Valerio Bruno
Tecniche di rilevamento .2
Scanning function:

 Ogni file è una sequenza finita di byte;

 Ricerca di una determinata stringa nel file considerato;

 L’antivirus confronta le firme contenute nel DB con i byte del file.

Algoritmi “famosi”:

 Knutt-Morris-Pratt: al più M + N confronti;

 Boyer-Moore: al più M + N ma in media N/M.



6/10                                                  © 2005 Simone Amati & Valerio Bruno
Tecniche di rilevamento .3
Firme dinamiche:
 I virus polimorfici attraverso i loro motori di morfing alterano il codice binario
 inserendo istruzioni no-op o salti tra le varie istruzioni. La firma in questo
 modo non è costante.




Heuristic scanning:

 1. Eurustica statica: controlla le signature dei comportamenti per individuare
    comportamenti sospetti;
 2. Euristica dinamica: esegue il programma in un computer virtuale (sandox)
    e ne analizza il comportamento.


7/10                                                   © 2005 Simone Amati & Valerio Bruno
Problema del rilevamento
È realmente possibile individuare sempre un virus?

 È stato dimostrato che qualunque sia il tipo di CV, nessun programma può,
 contemporaneamente, testare il proprio input alla ricerca del virus ed essere
 sicuro di non diffonderlo.




8/10                                               © 2005 Simone Amati & Valerio Bruno
Come posso fare per difendere il mio pc?
Nessuna soluzione antivirus può proteggerti da te stesso!
• Non eseguire mai programmi che arrivano sotto forma di allegati in
e-mail o da una qualsiasi altra fonte non affidabile!
• Assicurati di effettuare una navigazione web sicura
• Scarica i programmi solo da siti web sicuri e affidabili o dal sito del
produttore
• Dotati di un antivirus e tenerlo sempre aggiornato
• Mantieni sempre aggiornato il Sistema Operativo e tutti i software di
cui disponi



9/10                                             © 2005 Simone Amati & Valerio Bruno
Dalla teoria alla pratica:
installare un sistema antivirus
          OpenSource
   su un desktop con Linux
●   Perché?
     I virus per Linux sono pochi e poco dannosi.
     ●


      Oggi, e domani?

     Vogliamo essere portatori sani di epidemie?
     ●
Caratteristiche del sistema

●   Scanner anti-virus                 Clamav
●   Blocco all'apertura di file infetti              Dazuko
●
    Com oda interfaccia grafica per lo scanning
              Klamav



                                          © 2005 Simone Amati & Valerio 
                                          Bruno
Cos'è Clamav ?
Da www.clamav.net:


A GPL virus scanner featuring:
●  command-line scanner
●  fast, multi-threaded daemon
●  milter interface for sendmail
●  database updater with support for digital signatures
●  virus scanner C library
●  on-access scanning (Linux® and FreeBSD)
●  detection of over 40000 viruses, worms and trojans
●  built-in support for RAR (2.0), Zip, Gzip, Bzip2, Tar, MS OLE2,
   MS Cabinet files, MS CHM (Compressed HTML), MS SZDD
●  built-in support for mbox, Maildir and raw mail files
●  built-in support for Portable Executable files compressed
   with UPX, FSG, and Petite
www.dazuko.org
                      Cos'è Dazuko?

   Un modulo del kernel che:


   1) Intercetta le chiamate alla funzione di apertura dei file.
   2) Esegue del codice per determinare se queste operazioni
     sono autorizzate.
   3) Se non sono autorizzate le blocca.


                                              © 2005 Simone Amati & Valerio 
                                              Bruno
Cos'è Klamav?
●   Un'interfaccia ad i comandi di Clamav.
●   Contiene un motore di ricerca di informazioni sui
    virus.
●   Permette scansioni programmate.
●   Gestisce la quarantena.
●   Gestisce impostazioni di Kmail per la scansione
    della posta.


                                   © 2005 Simone Amati & Valerio 
                                   Bruno
klamav.sourceforge.net




               © 2005 Simone Amati & Valerio 
               Bruno
Installazione dei moduli software
           pacchetti precompilati o codice sorgente?

●   Installazione del software tramite il proprio gestore di
    pacchetti
     –   Più facile e veloce
     –   Versioni non sempre aggiornate
     –   Non sempre possibile
●   Ricompilazione dei sorgenti ed installazione manuale
     –   Operazione non proprio banale
     –   Scelta arbitraria della versione (ultima / ultimissima!)
     –   Operazione fattibile per tutte le distribuzioni
                                              © 2005 Simone Amati & Valerio 
                                              Bruno
Note [dolenti] per l'installazione di Dazuko
●    Richiede Different Security Model feature e
     Default Linux Capability
●   I sorgenti installano il modulo in
      /lib/modules/<<versioneKernel>>/extra




                                         © 2005 Simone Amati & Valerio 
                                         Bruno
Note per l'installazione di Clamav
●   Se eseguite la compilazione “amanuense” vi
    conviene specificare i path:
./configure
         –sbindir=/sbin
         –sysconfdir=/etc
         –enable-clamuko
●   In /etc controllate i file di configurazione
    –   clamd.conf controlla il demone per la
        scansione automatica.
    –   freshclam.conf controlla il programma per
        l'aggiornamento del database dei virus.
                                       © 2005 Simone Amati & Valerio 
                                       Bruno
Note per l'installazione di Klamav
●   Sul sito ci sono installer e sorgenti: la stessa
    cosa!
●   Richiede le librerie Qt e quelle di KDE, sia codice
    della libreria che headers.




                                       © 2005 Simone Amati & Valerio 
                                       Bruno
www.torlug.org

           © 2005 Simone Amati & Valerio Bruno

More Related Content

Viewers also liked

Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...
Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...
Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...Claudio Cardinali
 
Introduzione a Linux: differenze con windows e strumenti per la programmazione
Introduzione a Linux: differenze con windows e strumenti per la programmazioneIntroduzione a Linux: differenze con windows e strumenti per la programmazione
Introduzione a Linux: differenze con windows e strumenti per la programmazioneValerio Bruno
 
Libro windows 7 reti sicurezza tecniche avanzate
Libro windows 7 reti sicurezza tecniche avanzateLibro windows 7 reti sicurezza tecniche avanzate
Libro windows 7 reti sicurezza tecniche avanzateLibro Windows 7
 
guida sommario indice windows 7 reti sicurezza tecniche avanzate
guida sommario indice windows 7 reti sicurezza tecniche avanzateguida sommario indice windows 7 reti sicurezza tecniche avanzate
guida sommario indice windows 7 reti sicurezza tecniche avanzateLibro Windows 7
 
Computer Virus e rilevamento
Computer Virus e rilevamentoComputer Virus e rilevamento
Computer Virus e rilevamentoSimone Amati
 
Pericoli nascosti di internet e tipologie di virus
Pericoli nascosti di internet e tipologie di virusPericoli nascosti di internet e tipologie di virus
Pericoli nascosti di internet e tipologie di virusGiovanni Mennea
 
(Manuale) Hardware Personal Computer
(Manuale) Hardware Personal Computer(Manuale) Hardware Personal Computer
(Manuale) Hardware Personal ComputerVirtualdeejay.net
 
CodingGym - Lezione 3 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 3 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 3 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 3 - Corso Linux, Android e Internet of ThingsMirko Mancin
 
CodingGym - Lezione 2 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 2 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 2 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 2 - Corso Linux, Android e Internet of ThingsMirko Mancin
 
CodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of ThingsMirko Mancin
 
Training in Analytics, R and Social Media Analytics
Training in Analytics, R and Social Media AnalyticsTraining in Analytics, R and Social Media Analytics
Training in Analytics, R and Social Media AnalyticsAjay Ohri
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldabaux singapore
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your BusinessBarry Feldman
 

Viewers also liked (16)

Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...
Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...
Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...
 
Introduzione a Linux: differenze con windows e strumenti per la programmazione
Introduzione a Linux: differenze con windows e strumenti per la programmazioneIntroduzione a Linux: differenze con windows e strumenti per la programmazione
Introduzione a Linux: differenze con windows e strumenti per la programmazione
 
Libro windows 7 reti sicurezza tecniche avanzate
Libro windows 7 reti sicurezza tecniche avanzateLibro windows 7 reti sicurezza tecniche avanzate
Libro windows 7 reti sicurezza tecniche avanzate
 
guida sommario indice windows 7 reti sicurezza tecniche avanzate
guida sommario indice windows 7 reti sicurezza tecniche avanzateguida sommario indice windows 7 reti sicurezza tecniche avanzate
guida sommario indice windows 7 reti sicurezza tecniche avanzate
 
GNU Linux introduction
GNU Linux introductionGNU Linux introduction
GNU Linux introduction
 
Gli antivirus
Gli antivirusGli antivirus
Gli antivirus
 
Computer Virus e rilevamento
Computer Virus e rilevamentoComputer Virus e rilevamento
Computer Virus e rilevamento
 
Pericoli nascosti di internet e tipologie di virus
Pericoli nascosti di internet e tipologie di virusPericoli nascosti di internet e tipologie di virus
Pericoli nascosti di internet e tipologie di virus
 
(Manuale) Hardware Personal Computer
(Manuale) Hardware Personal Computer(Manuale) Hardware Personal Computer
(Manuale) Hardware Personal Computer
 
CodingGym - Lezione 3 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 3 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 3 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 3 - Corso Linux, Android e Internet of Things
 
CodingGym - Lezione 2 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 2 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 2 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 2 - Corso Linux, Android e Internet of Things
 
CodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of ThingsCodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
CodingGym - Lezione 1 - Corso Linux, Android e Internet of Things
 
Training in Analytics, R and Social Media Analytics
Training in Analytics, R and Social Media AnalyticsTraining in Analytics, R and Social Media Analytics
Training in Analytics, R and Social Media Analytics
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
 
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job? Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
 

Similar to LinuxDay 2005: Computer Virus e rilevamento

Backdoor Coding: Analisi di una semplice backdoor e prime applicazioni
Backdoor Coding: Analisi di una semplice backdoor e prime applicazioniBackdoor Coding: Analisi di una semplice backdoor e prime applicazioni
Backdoor Coding: Analisi di una semplice backdoor e prime applicazioniSalvatore Lentini
 
CMS - Analisi Vulnerabilità
CMS - Analisi VulnerabilitàCMS - Analisi Vulnerabilità
CMS - Analisi Vulnerabilitàraffaele_forte
 
Ransomware Attack nel 2019 Dal file system ai database e non solo...
Ransomware Attack nel 2019 Dal file system ai database e non solo...Ransomware Attack nel 2019 Dal file system ai database e non solo...
Ransomware Attack nel 2019 Dal file system ai database e non solo...Massimo Chirivì
 
Presentazione WebRroot @ VMUGIT UserCon 2015
Presentazione WebRroot @ VMUGIT UserCon 2015Presentazione WebRroot @ VMUGIT UserCon 2015
Presentazione WebRroot @ VMUGIT UserCon 2015VMUG IT
 
Difendersi dai cryptolocker con open source
Difendersi dai cryptolocker con open sourceDifendersi dai cryptolocker con open source
Difendersi dai cryptolocker con open sourceGianluca Vaglio
 
Claudio Panerai - Achab
Claudio Panerai - Achab Claudio Panerai - Achab
Claudio Panerai - Achab VMUG IT
 
Menlo Security Isolation Platform
Menlo Security Isolation PlatformMenlo Security Isolation Platform
Menlo Security Isolation PlatformMarco Scala
 
La sicurezza delle reti
La sicurezza delle retiLa sicurezza delle reti
La sicurezza delle retigaiadesantis01
 
Siete sicuri sicurezza ict in azienda- tecnoworkshop- firenze-1-dicembre-2012
Siete sicuri   sicurezza ict in azienda- tecnoworkshop- firenze-1-dicembre-2012Siete sicuri   sicurezza ict in azienda- tecnoworkshop- firenze-1-dicembre-2012
Siete sicuri sicurezza ict in azienda- tecnoworkshop- firenze-1-dicembre-2012Luca Silva
 
Programma il futuro: una scelta open source
Programma il futuro: una scelta open sourceProgramma il futuro: una scelta open source
Programma il futuro: una scelta open sourceMarco Ferrigno
 
Navigazione e acquisti-10 Regole per difendersi dal malware-Silvia Belli-Ques...
Navigazione e acquisti-10 Regole per difendersi dal malware-Silvia Belli-Ques...Navigazione e acquisti-10 Regole per difendersi dal malware-Silvia Belli-Ques...
Navigazione e acquisti-10 Regole per difendersi dal malware-Silvia Belli-Ques...Silvia Belli
 
Navigazione e Acquisti - 10 Regole per difendersi dal malware-Silvia Belli
Navigazione e Acquisti  - 10 Regole per difendersi dal malware-Silvia BelliNavigazione e Acquisti  - 10 Regole per difendersi dal malware-Silvia Belli
Navigazione e Acquisti - 10 Regole per difendersi dal malware-Silvia BelliSilvia Belli
 
Virus di ieri e virus/malware di oggi… quali pericoli per le aziende, gli ent...
Virus di ieri e virus/malware di oggi… quali pericoli per le aziende, gli ent...Virus di ieri e virus/malware di oggi… quali pericoli per le aziende, gli ent...
Virus di ieri e virus/malware di oggi… quali pericoli per le aziende, gli ent...Gianfranco Tonello
 
Mamma, da grande voglio essere un Penetration Tester HackInBo 2016 Winter
Mamma, da grande voglio essere un Penetration Tester HackInBo  2016 WinterMamma, da grande voglio essere un Penetration Tester HackInBo  2016 Winter
Mamma, da grande voglio essere un Penetration Tester HackInBo 2016 WinterSimone Onofri
 
Antivirus, Firewall e un po' di intelligenza: la ricetta per la sicurezza
Antivirus, Firewall e un po' di intelligenza: la ricetta per la sicurezzaAntivirus, Firewall e un po' di intelligenza: la ricetta per la sicurezza
Antivirus, Firewall e un po' di intelligenza: la ricetta per la sicurezzaPiazza Telematica Schio
 
Cosino Enigma: the encrypted GNU/LINUX system has come true!
Cosino Enigma: the encrypted GNU/LINUX system has come true!Cosino Enigma: the encrypted GNU/LINUX system has come true!
Cosino Enigma: the encrypted GNU/LINUX system has come true!festival ICT 2016
 

Similar to LinuxDay 2005: Computer Virus e rilevamento (20)

Backdoor Coding: Analisi di una semplice backdoor e prime applicazioni
Backdoor Coding: Analisi di una semplice backdoor e prime applicazioniBackdoor Coding: Analisi di una semplice backdoor e prime applicazioni
Backdoor Coding: Analisi di una semplice backdoor e prime applicazioni
 
CMS - Analisi Vulnerabilità
CMS - Analisi VulnerabilitàCMS - Analisi Vulnerabilità
CMS - Analisi Vulnerabilità
 
Ransomware Attack nel 2019 Dal file system ai database e non solo...
Ransomware Attack nel 2019 Dal file system ai database e non solo...Ransomware Attack nel 2019 Dal file system ai database e non solo...
Ransomware Attack nel 2019 Dal file system ai database e non solo...
 
Pc piu sicuro
Pc piu sicuroPc piu sicuro
Pc piu sicuro
 
Presentazione WebRroot @ VMUGIT UserCon 2015
Presentazione WebRroot @ VMUGIT UserCon 2015Presentazione WebRroot @ VMUGIT UserCon 2015
Presentazione WebRroot @ VMUGIT UserCon 2015
 
Difendersi dai cryptolocker con open source
Difendersi dai cryptolocker con open sourceDifendersi dai cryptolocker con open source
Difendersi dai cryptolocker con open source
 
Claudio Panerai - Achab
Claudio Panerai - Achab Claudio Panerai - Achab
Claudio Panerai - Achab
 
Menlo Security Isolation Platform
Menlo Security Isolation PlatformMenlo Security Isolation Platform
Menlo Security Isolation Platform
 
La sicurezza delle reti
La sicurezza delle retiLa sicurezza delle reti
La sicurezza delle reti
 
Siete sicuri sicurezza ict in azienda- tecnoworkshop- firenze-1-dicembre-2012
Siete sicuri   sicurezza ict in azienda- tecnoworkshop- firenze-1-dicembre-2012Siete sicuri   sicurezza ict in azienda- tecnoworkshop- firenze-1-dicembre-2012
Siete sicuri sicurezza ict in azienda- tecnoworkshop- firenze-1-dicembre-2012
 
Programma il futuro: una scelta open source
Programma il futuro: una scelta open sourceProgramma il futuro: una scelta open source
Programma il futuro: una scelta open source
 
Navigazione e acquisti-10 Regole per difendersi dal malware-Silvia Belli-Ques...
Navigazione e acquisti-10 Regole per difendersi dal malware-Silvia Belli-Ques...Navigazione e acquisti-10 Regole per difendersi dal malware-Silvia Belli-Ques...
Navigazione e acquisti-10 Regole per difendersi dal malware-Silvia Belli-Ques...
 
Navigazione e Acquisti - 10 Regole per difendersi dal malware-Silvia Belli
Navigazione e Acquisti  - 10 Regole per difendersi dal malware-Silvia BelliNavigazione e Acquisti  - 10 Regole per difendersi dal malware-Silvia Belli
Navigazione e Acquisti - 10 Regole per difendersi dal malware-Silvia Belli
 
Virus di ieri e virus/malware di oggi… quali pericoli per le aziende, gli ent...
Virus di ieri e virus/malware di oggi… quali pericoli per le aziende, gli ent...Virus di ieri e virus/malware di oggi… quali pericoli per le aziende, gli ent...
Virus di ieri e virus/malware di oggi… quali pericoli per le aziende, gli ent...
 
Antivirus & Antivirus Evasion
Antivirus & Antivirus EvasionAntivirus & Antivirus Evasion
Antivirus & Antivirus Evasion
 
Sicurezza - Il Malware
Sicurezza - Il MalwareSicurezza - Il Malware
Sicurezza - Il Malware
 
Automotive Security
Automotive SecurityAutomotive Security
Automotive Security
 
Mamma, da grande voglio essere un Penetration Tester HackInBo 2016 Winter
Mamma, da grande voglio essere un Penetration Tester HackInBo  2016 WinterMamma, da grande voglio essere un Penetration Tester HackInBo  2016 Winter
Mamma, da grande voglio essere un Penetration Tester HackInBo 2016 Winter
 
Antivirus, Firewall e un po' di intelligenza: la ricetta per la sicurezza
Antivirus, Firewall e un po' di intelligenza: la ricetta per la sicurezzaAntivirus, Firewall e un po' di intelligenza: la ricetta per la sicurezza
Antivirus, Firewall e un po' di intelligenza: la ricetta per la sicurezza
 
Cosino Enigma: the encrypted GNU/LINUX system has come true!
Cosino Enigma: the encrypted GNU/LINUX system has come true!Cosino Enigma: the encrypted GNU/LINUX system has come true!
Cosino Enigma: the encrypted GNU/LINUX system has come true!
 

LinuxDay 2005: Computer Virus e rilevamento

  • 1. Computer Virus e rilevamento © 2005 Simone Amati & Valerio Bruno
  • 2. Cos’è un computer virus Semplicemente un programma che si riproduce! Commettere Il frutto dell’opera di uno programmatore atti criminosi Studiare le possbilità Information warfare Studiarli per proteggersi della vita artificiale da altri tipi di malware Virus polimorfici Esistono in molte forme: Worm Trojan Boot Virus Virus stealth 1/10 © 2005 Simone Amati & Valerio Bruno
  • 3. Come sono fatti 1. Search file 2. Verify file infection and attributes 3. Write virus code in host file 4. Execute host file 2/10 © 2005 Simone Amati & Valerio Bruno
  • 4. Come funzionano • Incubazione: controllo del sistema e delle difese • Infezione: scrittura in altri file • Attivazione • Propagazione 3/10 © 2005 Simone Amati & Valerio Bruno
  • 5. Cosa significa rilevare un virus Batterio Computer virus Criminale DNA Firma virale Impronta digitale Riconoscere un’alterazione dei file del sistema o il codice virale attraverso opportune tecniche: 1. Integrity-checking function: confronto tra checksum 2. Scanning function: confronto tra firme virali e stringhe di dati 3. Heuristic scanning: testa i programmi in una “sandbox” 4/10 © 2005 Simone Amati & Valerio Bruno
  • 6. Tecniche di rilevamento .1 Integrity-checking function: 1. I file da monitorare vengono dati in pasto a particolari algoritmi digest (tipo MD5); 2. Il risultato della digestione è unico e viene memorizzato in un DB; 3. L’antivirus confronta i dati del DB con i digest calcolati on-the-fly. File 1 Digest1 DB Hash Memorizzazione digest File 1 Digest1 = Hash File 1 infetto Digest2 ≠ Hash 5/10 © 2005 Simone Amati & Valerio Bruno
  • 7. Tecniche di rilevamento .2 Scanning function: Ogni file è una sequenza finita di byte; Ricerca di una determinata stringa nel file considerato; L’antivirus confronta le firme contenute nel DB con i byte del file. Algoritmi “famosi”: Knutt-Morris-Pratt: al più M + N confronti; Boyer-Moore: al più M + N ma in media N/M. 6/10 © 2005 Simone Amati & Valerio Bruno
  • 8. Tecniche di rilevamento .3 Firme dinamiche: I virus polimorfici attraverso i loro motori di morfing alterano il codice binario inserendo istruzioni no-op o salti tra le varie istruzioni. La firma in questo modo non è costante. Heuristic scanning: 1. Eurustica statica: controlla le signature dei comportamenti per individuare comportamenti sospetti; 2. Euristica dinamica: esegue il programma in un computer virtuale (sandox) e ne analizza il comportamento. 7/10 © 2005 Simone Amati & Valerio Bruno
  • 9. Problema del rilevamento È realmente possibile individuare sempre un virus? È stato dimostrato che qualunque sia il tipo di CV, nessun programma può, contemporaneamente, testare il proprio input alla ricerca del virus ed essere sicuro di non diffonderlo. 8/10 © 2005 Simone Amati & Valerio Bruno
  • 10. Come posso fare per difendere il mio pc? Nessuna soluzione antivirus può proteggerti da te stesso! • Non eseguire mai programmi che arrivano sotto forma di allegati in e-mail o da una qualsiasi altra fonte non affidabile! • Assicurati di effettuare una navigazione web sicura • Scarica i programmi solo da siti web sicuri e affidabili o dal sito del produttore • Dotati di un antivirus e tenerlo sempre aggiornato • Mantieni sempre aggiornato il Sistema Operativo e tutti i software di cui disponi 9/10 © 2005 Simone Amati & Valerio Bruno
  • 11. Dalla teoria alla pratica: installare un sistema antivirus OpenSource su un desktop con Linux ● Perché? I virus per Linux sono pochi e poco dannosi. ● Oggi, e domani? Vogliamo essere portatori sani di epidemie? ●
  • 12. Caratteristiche del sistema ● Scanner anti-virus Clamav ● Blocco all'apertura di file infetti Dazuko ● Com oda interfaccia grafica per lo scanning Klamav © 2005 Simone Amati & Valerio  Bruno
  • 13. Cos'è Clamav ? Da www.clamav.net: A GPL virus scanner featuring: ● command-line scanner ● fast, multi-threaded daemon ● milter interface for sendmail ● database updater with support for digital signatures ● virus scanner C library ● on-access scanning (Linux® and FreeBSD) ● detection of over 40000 viruses, worms and trojans ● built-in support for RAR (2.0), Zip, Gzip, Bzip2, Tar, MS OLE2, MS Cabinet files, MS CHM (Compressed HTML), MS SZDD ● built-in support for mbox, Maildir and raw mail files ● built-in support for Portable Executable files compressed with UPX, FSG, and Petite
  • 14. www.dazuko.org Cos'è Dazuko? Un modulo del kernel che: 1) Intercetta le chiamate alla funzione di apertura dei file. 2) Esegue del codice per determinare se queste operazioni sono autorizzate. 3) Se non sono autorizzate le blocca. © 2005 Simone Amati & Valerio  Bruno
  • 15. Cos'è Klamav? ● Un'interfaccia ad i comandi di Clamav. ● Contiene un motore di ricerca di informazioni sui virus. ● Permette scansioni programmate. ● Gestisce la quarantena. ● Gestisce impostazioni di Kmail per la scansione della posta. © 2005 Simone Amati & Valerio  Bruno
  • 16. klamav.sourceforge.net © 2005 Simone Amati & Valerio  Bruno
  • 17. Installazione dei moduli software pacchetti precompilati o codice sorgente? ● Installazione del software tramite il proprio gestore di pacchetti – Più facile e veloce – Versioni non sempre aggiornate – Non sempre possibile ● Ricompilazione dei sorgenti ed installazione manuale – Operazione non proprio banale – Scelta arbitraria della versione (ultima / ultimissima!) – Operazione fattibile per tutte le distribuzioni © 2005 Simone Amati & Valerio  Bruno
  • 18. Note [dolenti] per l'installazione di Dazuko ● Richiede Different Security Model feature e Default Linux Capability ● I sorgenti installano il modulo in /lib/modules/<<versioneKernel>>/extra © 2005 Simone Amati & Valerio  Bruno
  • 19. Note per l'installazione di Clamav ● Se eseguite la compilazione “amanuense” vi conviene specificare i path: ./configure –sbindir=/sbin –sysconfdir=/etc –enable-clamuko ● In /etc controllate i file di configurazione – clamd.conf controlla il demone per la scansione automatica. – freshclam.conf controlla il programma per l'aggiornamento del database dei virus. © 2005 Simone Amati & Valerio  Bruno
  • 20. Note per l'installazione di Klamav ● Sul sito ci sono installer e sorgenti: la stessa cosa! ● Richiede le librerie Qt e quelle di KDE, sia codice della libreria che headers. © 2005 Simone Amati & Valerio  Bruno
  • 21. www.torlug.org © 2005 Simone Amati & Valerio Bruno