você está aqui: Home  → Arquivo de Mensagens

Apagar arquivos maliciosos de pastas compartilhadas pelo Samba periodicamente.

Colaboração: Mário Jorge Limeira dos Santos

Data de Publicação: 13 de dezembro de 2012

Esse script é usado para apagar arquivos maliciosos de pastas compartilhadas pelo samba, mas pode ser usado para apagar arquivos de determinadas extensões em qualquer pasta. Foram utilizadas apenas algumas extensões conhecidas de arquivos maliciosos. Com esse código o script está apagando os arquivos a cada 4 segundos. Logado como usuário root, basta colar o código num arquivo texto, e nomeá-lo como desejar, por exemplo: apagavirus.sh.

Código

  #!/bin/bash
  
  while true
  do
  sleep 4
  
  cd /home/publico/
   rm -f autorun.inf
   rm -f AUTORUN.INF
   rm -f *.exe
  
   rm -f *.cmd
   rm -f *.pif
   rm -f *.EXE
   rm -rf RECYCLER/
   rm -rf RECYCLER32
  
   cd /home/userShares/Professores/
   rm -f autorun.inf
   rm -f AUTORUN.INF
   rm -f *.exe
   rm -f *.EXE
   rm -f *.pif
   rm -f *.cmd
   rm -rf RECYCLER/
   rm -rf RECYCLER32/
  done

Dê permissão de execução ao arquivo:

  # chmod +x apagavirus.sh

Pode-se colocar o script para executar em segundo plano com o comando:

  # sh apagavirus.sh &

Se desejar que o script execute em um determinado período de tempo automaticamente, pode-se usar o serviço cron. Copie o arquivo para a pasta equivalente ao período de tempo que se deseja que o script execute novamente. Se deseja-se que o script execute semanalmente, por exemplo, basta copiar o arquivo para pasta /etc/cron.weekly com o comando:

  # cp apagavirus.sh /etc/cron.weekly

Fique atento para não deixar várias instâncias do script executando ao mesmo tempo na mesma máquina, pois, como se trata de um loop infinito, várias instâncias podem acabar consumindo muitos recursos de memória e processamento da máquina.

Mário Jorge é Analista de Tecnologia da Informação do Instituto Federal de Educação, Ciência e Tecnologia do Ceará - IFCE, Mestre em Ciência da Computação pela Universidade Federal Rural do SemiÁrido - UFERSA, usuário e apoiador do Linux e do Sofware Livre há 8 anos.


 

 

Veja a relação completa dos artigos de Mário Jorge Limeira dos Santos

Opinião dos Leitores

Mário Jorge
18 Jan 2013, 11:13
Olá pessoal. Obrigado pelos comentários!
Tibério, a opção vetofiles não impediria de colocar arquivos .exe válidos dentro de subdiretórios da pasta /home/publico ?
Tibério Augusto
14 Dez 2012, 10:05
É possível bloquear a gravação destes arquivos inserindo a opção 'veto files' no seu smb.conf.

veto files = /*.exe/*.cmd/*.com/*.inf/*.ini/*.pif/*.src/*.vbs
Claudio Junior
13 Dez 2012, 15:16
Colocar o script no /etc/cron.weekly não é uma boa ideia. Primeiro que vai rodar uma vez por semana e segundo... vai ficar rodando até alguem matar ele ou a quantidade de instancias colocarem o servidor em down ;-). O ideal é rodar ele no /etc/rc.local para inicializar junto com o sistema operacional.
Ricardo Olonca
13 Dez 2012, 10:18
Dá prá encurtar o script

#!/bin/bash
while true
do
sleep 4
for i in /home/publico /home/userShares/Professores/
do
cd $i
rm -f [aA][uU][tT][oO][rR][uU][nN].inf
rm -f *.[eE][xX][eE]
rm -f *.cmd
rm -f *.pif
rm -rf RECYCLER/
rm -rf RECYCLER32
done
done
Robson
13 Dez 2012, 07:35
Para excluir os arquivos somente do diretório /home/publico/ pode ser usado esse comando, o restante é só adaptar, nível de busca, extensões, etc.

find /home/publico/ maxdepth 1 -regextype posix-egrep -iregex '.*\.(cmd|pif|exe)' -exec rm -f {} \;
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script