como tornar legível o arquivo de malware com “Nenhuma permissão de leitura no arquivo” no linux ext-4?

6

Existe uma campanha contínua de envio de vírus / trojans em mensagens de e-mail falsificadas como sendo do Banco HSBC, Lloyds TSB, Amazon etc.

O trojan / vírus é enviado em um aplicativo / anexo de zip.

Eu salvei um desses arquivos zip e os descompactei em um diretório de propriedade de mim com permissão 700 em um sistema de arquivos ext4

Para analisá-lo com clamscan , avgscan e avast , salvei o arquivo zip e descompactei seu conteúdo em um diretório "virus":

File: /home/users/miller/virus
Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: 809h/2057d      Inode: 14155801    Links: 2
Access: (0700/drwx------)  Uid: ( 1001/  miller)   Gid: ( 1000/   users)
Access: 2013-10-03 12:57:47.484923866 +0200
Modify: 2013-10-03 12:57:46.684879168 +0200
Change: 2013-10-03 12:57:46.684879168 +0200
Birth: -

Como esperado, posso renomear o arquivo ou excluí-lo. O arquivo tem permissões 600 e é de minha propriedade:

$ stat virus.exe
File: virus.exe
Size: 61440           Blocks: 120        IO Block: 4096   regular file
Device: 809h/2057d      Inode: 14155809    Links: 1
Access: (0600/-rw-------)  Uid: ( 1001/  miller)   Gid: ( 1000/   users)
Access: 2013-10-03 12:46:37.194541504 +0200
Modify: 2013-10-01 22:01:44.000000000 +0200
Change: 2013-10-03 13:19:09.263393591 +0200
Birth: -'

Mas qualquer tentativa de ler o arquivo ou copiá-lo falhará.

$ file virus.exe
virus.exe: writable, regular file, no read permission'

cp virus.exe copy.exe
cp: cannot open virus.exe for reading: Operation not permitted'

lsattr virus.exe 
lsattr: Operation not permitted While reading flags on virus.exe'

Mesmo tentando isso como root falhar.

Então, como é possível tornar um arquivo ilegível, mesmo que ele possua "permissão rw" e como ele pode ser legível para varrê-lo com avgscan , clamscan , avast etc?

* CORRECÇÃO * * (o comentário anterior foi para arquivo zip errado)

Adendo: Executar clamscan no arquivo zip do anexo salvo resulta em nenhum vírus / trojan / malware sendo detectado, provavelmente porque o arquivo executável interno está em um estado "ilegível".

clamscan virus.zip virus.zip: OK

Da mesma forma, avgscan e avast não detectam nenhum malware.

Isso destaca a importância de poder ler o arquivo exe extraído e mostra que clamscan não está conseguindo detectar malware.

O nome original do arquivo zip é ORDER-N:N-1414559-3015133.zip e o nome original do arquivo executável é Order details.exe .

* INFORMAÇÕES ADICIONAIS IMPORTANTES *

Para recapitular, se o arquivo zip é descompactado pelo usuário miller, um arquivo exe é criado:

60 -rw-------   1 miller users 61440 2013-10-01 22:01 Order details.exe

mas isso é ilegível pelo usuário miller ou pelo root.

CONTUDO, se o arquivo zip é descompactado pelo root, o arquivo exe é legível pelo root:

0 -rw-r--r--  1 root root 61440 2013-10-01 22:01 Order details.exe

O comando file mostra o seguinte:

[15:57] koala:{virus/}# file Order\ details.exe 
Order details.exe: PE32 executable (GUI) Intel 80386, for MS Windows

Então, o que está definido que está impedindo o usuário comum e o root de ler o arquivo descompactado pelo usuário?

O arquivo descompactado pela raiz:

$ lsattr Order\ details.exe 
-------------e-- Order details.exe

A página de manual para chattr explica:

The 'e' attribute indicates that the file is using extents for  mapping
the blocks on disk.  It may not be removed using chattr(1).

Assim, nos sistemas de arquivos ext2 / 3/4 existe uma situação catch22 - a falta de legibilidade do arquivo NÃO PODE ser alterada, e a solução é descompactar o arquivo zip como raiz para evite criar o arquivo descompactado com o atributo "e", já que a versão unzip do Linux não possui uma opção de ignorar atributos.

Se o arquivo zip for descompactado em um sistema de arquivos XFS pelo usuário, ele será legível, porque o XFS não suporta o mecanismo de configuração de atributos.

E quando avgscan é executado no arquivo exe:

$ avgscan Order\ details.exe 
AVG command line Anti-Virus scanner
Copyright (c) 2013 AVG Technologies CZ

Virus database version: 3222/6719
Virus database release date: Thu, 03 Oct 2013 06:11:00 +0200

Order details.exe  Found Luhe.Fiha.A

Files scanned     :  1(1)
Infections found  :  1(1)

Assim, a moral desta história é não confiar avgscan , avast ou clamscan em sempre encontrar malware em arquivos zip - sempre a varredura no executável descompactado!

    
por J G Miller 03.10.2013 / 14:54

1 resposta

1

Pelo que eu posso dizer a arma de fumar é este comando:

lsattr virus.exe 
lsattr: Operation not permitted While reading flags on virus.exe

Isso basicamente diz que o sistema de arquivos subjacente não é EXT2 / 3/4. Dado que as permissões normais às vezes podem não ser um fator e os atributos de arquivo também podem não ser suportados.

Exemplo

Eu tenho um compartilhamento montado no NFS da seguinte forma.

$ pwd
/home/sam

Se eu executar lsattr :

$ lsattr /home/sam/ 2>&1 | head -3
lsattr: Inappropriate ioctl for device While reading flags on /home/sam/dead.letter
lsattr: Inappropriate ioctl for device While reading flags on /home/sam/bashrc
lsattr: Inappropriate ioctl for device While reading flags on /home/sam/phillip_phillips_home.mp3

Meu palpite é que o sistema de arquivos é o que está lhe impedindo o acesso a ele.

    
por 03.10.2013 / 15:23