/ bin / ls não encontrado, mesmo que exista!

9

Este é um servidor que executa o servidor do Ubuntu 8.04, alguma idéia do que está acontecendo?

# ls
-bash: /bin/ls: No such file or directory
# /bin/ls
-bash: /bin/ls: No such file or directory
# stat /bin/ls
  File: '/bin/ls'
  Size: 39696       Blocks: 80         IO Block: 4096   regular file
Device: 803h/2051d  Inode: 1073910881  Links: 1
Access: (0755/-rwxr-xr-x)  Uid: (  122/ UNKNOWN)   Gid: (  114/Debian-exim)
Access: 2008-06-05 15:07:22.491486000 -0700
Modify: 2008-04-03 23:44:23.000000000 -0700
Change: 2009-05-21 07:42:45.715736917 -0700
#:/bin# dd if=/bin/ls of=/dev/null 
77+1 records in
77+1 records out
39696 bytes (40 kB) copied, 0.000157908 s, 251 MB

Eu não tenho ideia de como ele obteve o estranho GID e o UID, nenhum deles existe em / etc / passwd

Recentemente, executei a atualização do NTP do Ubuntu para corrigir uma falha de segurança.

Atualização: Acabei de notar que o / bin / netstat tem o mesmo problema

Atualização: parece que eu me enraizei, rodei o rkhunter e encontrei um kit ...

    
por Andrew Cholakian 21.05.2009 / 19:07

4 respostas

11

Ter ls e netstat quebrados em um sistema soa suspeitamente como algo que um hacker faria para evitar ser detectado. Geralmente eles tentam consertar essas ferramentas para impedir a detecção de ferramentas e backdoors que eles instalaram ou criaram. Você pode querer considerar a reinicialização de um liveecd e, em seguida, verificar o md5sums desses arquivos.

Se o sistema estiver comprometido, consulte estas perguntas para obter alguns conselhos sobre como lidar com a situação.

por 21.05.2009 / 19:35
2

Você pode obter o erro "Nenhum arquivo ou diretório" quando o vinculador dinâmico não puder encontrar os objetos compartilhados apropriados.

Executar:

ldd /bin/ls

e verifique a saída.

Parece suspeito para mim também, a propósito. Eu me preocuparia se seu sistema estivesse comprometido.

    
por 21.05.2009 / 19:37
2

Isso não está especificamente relacionado ao seu problema, mas se um sistema não tiver o /bin/ls instalado (ou seja, alguém o tiver excluído), você poderá usar:

echo *
para obter uma listagem de diretórios. Eu tive que usar isso antes, e é um salva-vidas.     
por 21.05.2009 / 22:27
1

Aqui está a saída do stat / bin / ls no meu servidor Ubuntu 8.04. Tamanho diferente, então eu acho que o arquivo foi corrompido ou substituído.

# stat /bin/ls
  File: '/bin/ls'
  Size: 106176          Blocks: 216        IO Block: 4096   regular file
Device: ca00h/51712d    Inode: 3631        Links: 1
Access: (0755/-rwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2009-05-21 13:31:51.000000000 -0400
Modify: 2008-04-04 02:44:23.000000000 -0400
Change: 2008-05-29 17:14:25.000000000 -0400
    
por 21.05.2009 / 19:35

Tags