Eliminar virus con clamav en Ubuntu 18.04

Eliminar%2Bvirus%2Bcon%2Bclamav%2Ben%2BUbuntu%2B18.04

Introducción

La seguridad informática no es algo que podamos dejar olvidada, hoy en día no solo los hackers son capases de vulnerar nuestros sistemas incluso en linux, si en linux, todos los sistemas operativos son vulnerables (unos mas que otros). Olvídate de la idea de que en Linux no existen virus o que es imposible que nos infecten, porque no es así. Ademas no cuesta mucho tener un antivirus en Linux (ni dinero ni recursos) y en esta ocasión vamos a instalar y proba clamav un antivirus opensource compatible en windows y linux, en este caso en particular vamos a hacer pruebas en Ubuntu 18.04.

Paso 1: Instalación y actualizacion de bd de virus

Actualizamos nuestro Ubuntu asi:

sudo apt-get update && sudo apt-get upgrade -y

Es recomendable instalar también un demonio que este constantemente analizando nuestro SO asi:

sudo apt-get install clamav clamav-daemon -y

Y para terminar actualizamos la bd de virus asi:

sudo freshclam

02.- Búsqueda de virus

Hay que tomar en cuenta que entre mas mas archivos se escaneen mas va a tardar el escaneo en este caso vamos a escanear esta carpeta

sudo clamscan -r --bell -i /home/eugenio/Descargas/

Aquí, el comando clamscan es utilizado con las siguientes opciones:

  • -r: Escanea de forma recursiva todos los directorios.
  • --bell: Emite un sonido de campana cuando se encuentra un archivo infectado.
  • -i: Muestra solo los archivos infectados en los resultados del escaneo.
  • /: Indica que el escaneo debe comenzar en la raíz del sistema de archivos.

Ten en cuenta que este proceso puede llevar bastante tiempo, dependiendo de la cantidad de archivos en tu sistema.

A lo que obtuvimos este resultado

/home/eugenio/Descargas/.bash_history: OK
/home/eugenio/Descargas/.bashrc: OK
/home/eugenio/Descargas/archivo.txt: OK
/home/eugenio/Descargas/.cache/motd.legal-displayed: Empty file
/home/eugenio/Descargas/.bash_logout: OK
/home/eugenio/Descargas/.profile: OK
/home/eugenio/Descargas/LEEME.txt: OK

----------- SCAN SUMMARY -----------
Known viruses: 3739593
Engine version: 0.98.6
Scanned directories: 2
Scanned files: 6
Infected files: 0
Data scanned: 0.00 MB
Data read: 0.00 MB (ratio 0.00:1)
Time: 7.047 sec (0 m 7 s)

Si se dieron cuenta no se encontró ningún archivo infectado, asi que para ver que ocurre cuando encuentra un archivo infectado, para eso vamos a descargar un archivo infectado desde esta pagina con este comando:

wget http://www.eicar.org/download/eicar_com.zip

Ahora que ya tenemos un archivo infectado en “/home/eugenio/Descargas/” escaneamos de nuevo esa carpeta con este comando:

sudo clamscan -r /home/eugenio/Descargas/

A lo que nos da este resultado:

/home/eugenio/Descargas/.bash_history: OK
/home/eugenio/Descargas/.bashrc: OK
/home/eugenio/Descargas/archivo.txt: OK
/home/eugenio/Descargas/.cache/motd.legal-displayed: Empty file
/home/eugenio/Descargas/.bash_logout: OK
/home/eugenio/Descargas/.profile: OK
/home/eugenio/Descargas/LEEME.txt: OK
/home/eugenio/Descargas/eicar_com.zip: Eicar-Test-Signature FOUND

----------- SCAN SUMMARY -----------
Known viruses: 3739593
Engine version: 0.98.6
Scanned directories: 2
Scanned files: 7
Infected files: 1
Data scanned: 0.00 MB
Data read: 0.00 MB (ratio 0.00:1)
Time: 8.265 sec (0 m 8 s)

Si nos percatamos ahora nos marca que el archivo “/home/eugenio/Descargas/eicar_com.zip” esta infectado.

3.- Borrar archivos infectados.

Para escaner y eliminar archivos infectados debemos ejecutar este comando:

sudo clamscan --infected --remove --recursive /home/eugenio/Descargas/

A lo nos dara este resultado:

/home/eugenio/Descargas/eicar_com.zip: Eicar-Test-Signature FOUND
/home/eugenio/Descargas/eicar_com.zip: Removed.

----------- SCAN SUMMARY -----------
Known viruses: 3739593
Engine version: 0.98.6
Scanned directories: 2
Scanned files: 7
Infected files: 1
Data scanned: 0.00 MB
Data read: 0.00 MB (ratio 0.00:1)
Time: 9.651 sec (0 m 9 s)

4.- Dejar clamav trabajando cuando reinicie el servidor

Para que nuestro servidor este protegido constantemente debemos ejecutar este comando para activar el escaneo de archivos:

sudo /etc/init.d/clamav-daemon start
sudo /etc/init.d/clamav-freshclam start

5.- Otros comandos de clamav
Podemos experimentar con otros comandos de clamav y para conocelor podemos ejecutar:

clamscan --help

A lo que nos da este resultado:

                       Clam AntiVirus: Scanner 0.100.2
           By The ClamAV Team: https://www.clamav.net/about.html#credits
           (C) 2007-2018 Cisco Systems, Inc.

    clamscan [options] [file/directory/-]

    --help                -h             Show this help
    --version             -V             Print version number
    --verbose             -v             Be verbose
    --archive-verbose     -a             Show filenames inside scanned archives
    --debug                              Enable libclamav's debug messages
    --quiet                              Only output error messages
    --stdout                             Write to stdout instead of stderr
    --no-summary                         Disable summary at end of scanning
    --infected            -i             Only print infected files
    --suppress-ok-results -o             Skip printing OK files
    --bell                               Sound bell on virus detection

    --tempdir=DIRECTORY                  Create temporary files in DIRECTORY
    --leave-temps[=yes/no(*)]            Do not remove temporary files
    --gen-json[=yes/no(*)]               Generate JSON description of scanned file(s). JSON will be printed and also-
                                         dropped to the temp directory if --leave-temps is enabled.
    --database=FILE/DIR   -d FILE/DIR    Load virus database from FILE or load all supported db files from DIR
    --official-db-only[=yes/no(*)]       Only load official signatures
    --log=FILE            -l FILE        Save scan report to FILE
    --recursive[=yes/no(*)]  -r          Scan subdirectories recursively
    --allmatch[=yes/no(*)]   -z          Continue scanning within file after finding a match
    --cross-fs[=yes(*)/no]               Scan files and directories on other filesystems
    --follow-dir-symlinks[=0/1(*)/2]     Follow directory symlinks (0 = never, 1 = direct, 2 = always)
    --follow-file-symlinks[=0/1(*)/2]    Follow file symlinks (0 = never, 1 = direct, 2 = always)
    --file-list=FILE      -f FILE        Scan files from FILE
    --remove[=yes/no(*)]                 Remove infected files. Be careful!
    --move=DIRECTORY                     Move infected files into DIRECTORY
    --copy=DIRECTORY                     Copy infected files into DIRECTORY
    --exclude=REGEX                      Don't scan file names matching REGEX
    --exclude-dir=REGEX                  Don't scan directories matching REGEX
    --include=REGEX                      Only scan file names matching REGEX
    --include-dir=REGEX                  Only scan directories matching REGEX

    --bytecode[=yes(*)/no]               Load bytecode from the database
    --bytecode-unsigned[=yes/no(*)]      Load unsigned bytecode
    --bytecode-timeout=N                 Set bytecode timeout (in milliseconds)
    --statistics[=none(*)/bytecode/pcre] Collect and print execution statistics
    --detect-pua[=yes/no(*)]             Detect Possibly Unwanted Applications
    --exclude-pua=CAT                    Skip PUA sigs of category CAT
    --include-pua=CAT                    Load PUA sigs of category CAT
    --detect-structured[=yes/no(*)]      Detect structured data (SSN, Credit Card)
    --structured-ssn-format=X            SSN format (0=normal,1=stripped,2=both)
    --structured-ssn-count=N             Min SSN count to generate a detect
    --structured-cc-count=N              Min CC count to generate a detect
    --scan-mail[=yes(*)/no]              Scan mail files
    --phishing-sigs[=yes(*)/no]          Signature-based phishing detection
    --phishing-scan-urls[=yes(*)/no]     URL-based phishing detection
    --heuristic-scan-precedence[=yes/no(*)] Stop scanning as soon as a heuristic match is found
    --phishing-ssl[=yes/no(*)]           Always block (flag) SSL mismatches in URLs (phishing module)
    --phishing-cloak[=yes/no(*)]         Always block (flag) cloaked URLs (phishing module)
    --partition-intersection[=yes/no(*)] Detect partition intersections in raw disk images using heuristics
    --algorithmic-detection[=yes(*)/no]  Algorithmic detection
    --normalize[=yes(*)/no]              Normalize html, script, and text files. Use normalize=no for yara compatibility
    --scan-pe[=yes(*)/no]                Scan PE files
    --scan-elf[=yes(*)/no]               Scan ELF files
    --scan-ole2[=yes(*)/no]              Scan OLE2 containers
    --scan-pdf[=yes(*)/no]               Scan PDF files
    --scan-swf[=yes(*)/no]               Scan SWF files
    --scan-html[=yes(*)/no]              Scan HTML files
    --scan-xmldocs[=yes(*)/no]           Scan xml-based document files
    --scan-hwp3[=yes(*)/no]              Scan HWP3 files
    --scan-archive[=yes(*)/no]           Scan archive files (supported by libclamav)
    --detect-broken[=yes/no(*)]          Try to detect broken executable files
    --block-encrypted[=yes/no(*)]        Block (flag) encrypted archives
    --block-macros[=yes/no(*)]           Block (flag) OLE2 files with VBA macros
    --block-max[=yes/no(*)]              Block (flag) files that exceed max file size, max scan size, or max recursion limit
    --nocerts                            Disable authenticode certificate chain verification in PE files
    --dumpcerts                          Dump authenticode certificate chain in PE files

    --max-filesize=#n                    Files larger than this will be skipped and assumed clean
    --max-scansize=#n                    The maximum amount of data to scan for each container file (**)
    --max-files=#n                       The maximum number of files to scan for each container file (**)
    --max-recursion=#n                   Maximum archive recursion level for container file (**)
    --max-dir-recursion=#n               Maximum directory recursion level
    --max-embeddedpe=#n                  Maximum size file to check for embedded PE
    --max-htmlnormalize=#n               Maximum size of HTML file to normalize
    --max-htmlnotags=#n                  Maximum size of normalized HTML file to scan
    --max-scriptnormalize=#n             Maximum size of script file to normalize
    --max-ziptypercg=#n                  Maximum size zip to type reanalyze
    --max-partitions=#n                  Maximum number of partitions in disk image to be scanned
    --max-iconspe=#n                     Maximum number of icons in PE file to be scanned
    --max-rechwp3=#n                     Maximum recursive calls to HWP3 parsing function
    --pcre-match-limit=#n                Maximum calls to the PCRE match function.
    --pcre-recmatch-limit=#n             Maximum recursive calls to the PCRE match function.
    --pcre-max-filesize=#n               Maximum size file to perform PCRE subsig matching.
    --disable-cache                      Disable caching and cache checks for hash sums of scanned files.

5.- Instalar entorno visual clamtk

Si quieres ver analizar tus archivos de forma visual podemos instalar clamtk asi:
sudo apt-get install clamtk
Nos va a mostrar un programa asi:
Selecci%25C3%25B3n 180

Obviamente esto solo funciona si tienes instalado un escritorio en tu servidor si quiere instalar un entorno grafico en tu servidor puedes ver este tutorial

Una respuesta a “Eliminar virus con clamav en Ubuntu 18.04”

  1. Diego Andres dice:

    Buenos Días un saludo desde Colombia resulta que escanie todo el disco duro pero no se donde esta la ubicación del virus como se hace en ese caso

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *