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

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

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

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

Salvei um desses arquivos zip e descompactei-o em um diretório de minha propriedade com permissão 700 em um sistema de arquivos ext4

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

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 era de se esperar, 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 porque o root falha.

Então, como é possível tornar um arquivo ilegível mesmo que ele tenha "permissão rw" e como ele pode ser tornado legível para digitalizá-lo com avgscan, clamscan, avastetc?


* CORREÇÃO** (o comentário anterior era sobre arquivo zip errado)

Adendo: A execução clamscanno arquivo zip do anexo salvo resulta na detecção de nenhum vírus/trojan/malware, provavelmente porque o arquivo executável interno está em um estado "ilegível".

vírus clamscan.zip vírus.zip: OK

Da mesma forma avgscane avastnão consegue detectar nenhum malware.

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

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


*INFORMAÇÕES ADICIONAIS IMPORTANTES*

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

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

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

NO ENTANTO, se o arquivo zip for descompactado pelo root, o arquivo exe poderá ser lido 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á configurado para impedir que o usuário comum e o root leiam o arquivo descompactado pelo usuário?

O arquivo descompactado pelo root:

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

A página de manual chattrexplica:

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 arquivoNÃO PODEser alterado, e a solução é descompactar o arquivo zip como root para evitar a criação do arquivo descompactado com o atributo "e", já que a versão de descompactação do Linux não possui uma opção para 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)

Então a moral desta história énão confie avgscan, avastou clamscansempre encontrar malware em arquivos zip - sempre faça a verificação no executável descompactado!

Responder1

Pelo que posso dizer, a prova definitiva é este comando:

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

Basicamente, isso significa 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 do arquivo também podem não ser suportados.

Exemplo

Eu tenho um compartilhamento montado em NFS da seguinte maneira.

$ pwd
/home/sam

Se eu correr lsattrcontra isso:

$ 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á negando acesso a ele.

informação relacionada