30 de septiembre de 2011

2da version de script para desinfectar maquinas con Windows desde Linux

En el post anterior "Script para desinfectar un equipo Windows contagiado" les compartí un script en bash que hice para esta labor... Y apoyándonos de ClamAV (necesario tenerlo instalado).

Al script se le pasaba la particion a montar y éste se encargaba de montarla con los permisos necesarios y comenzar el análisis.

He modificado un poco el script para que ahora pida qué se desea hacer, si pasar una particion para montarla y escanearla o bien pasar una ruta en especifico. Ésta puede ser la particion ya montada (Disco duro, pendrive, etc...) o bien alguna carpeta en específico.

Ah por cierto, para ir revisando el log que se crea pueden abrir otra terminal y escribir "tail -f /tmp/virus/virus.log"

Sin más palabras, aquí está el script y espero que les sea de utilidad :P


#!/bin/bash


# Script para desinfectar equipos usando ClamAV
# @Tello Bautista
# tellobautista.blogspot.com


CVIRUS="/tmp/virus"
LOGVIRUS="/tmp/virus/virus.log"
OPCION=3


function bienvenida {
clear
tput cup 1 18 ; echo -n "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
tput cup 2 18 ; echo -n " Desinfectando tu equipo con ClamAV ;)"
tput cup 3 18 ; echo -n "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
}
function pedir_datos {
bienvenida
echo -e "\n"
echo -e "Selecciona una opcion:"
echo -e "     1.- Ingresar particion (Debe estar desmontada)"
echo -e "     2.- Ingresar ruta especifica"
echo -e "     0.- Salir"
read -p "Ingresa tu opcion [0|1|2]: " OPCION
}
function opciones {
if [ $OPCION = "1" ] ; then
echo -e "\n"
read -p "Ruta de la particion (/dev/sdXy): " RUTA
elif [ $OPCION = "2" ] ; then
echo -e "\n"
read -p "Ruta a desinfectar: " RUTA
CTARGET="$RUTA"
elif [ $OPCION = "0" ] ; then
echo -e "Bye!"
exit 0
else
echo -e "Opcion no valida... Bye!"
exit 0
fi
}
function crear_carpetas
{
if [ $OPCION = "1" ]; then
CTARGET="/tmp/particion"
if [ ! -d $CTARGET ]; then
mkdir $CTARGET
fi
#montando la particion con permisos de escritura. IMPORTANTE para poder mover los archivos
mount -t ntfs $RUTA $CTARGET -O users,gid=users,fmask=133,dmask=022,umask=0,locale=es_ES.UTF-8
echo -e "Particion montada..."
fi


if [ ! -d $CVIRUS ]; then
mkdir $CVIRUS
fi
}
function escanear {
echo -e "En un momento comenzara el escaneo..."
set -o verbose
clamscan -v -r --bell --move $CVIRUS --log $LOGVIRUS $CTARGET
set +o verbose
}


#Antes de cualquier cosa hay que comprobar que se este ejecutando el script
#como super usuario y se hace mediante el id del root que es 0
#de no ser asi se sale del programa
if [ "`id -u`" != 0 ] ; then
echo -e "\n"
echo -e "Solo el superusuario puede hacer uso de este scrpit... Adios >.<"
exit 1
fi


pedir_datos
opciones
crear_carpetas
escanear
#fin del script

No hay comentarios:

Publicar un comentario