/ bin / ls не найден, даже если он существует!

10

Это сервер под управлением Ubuntu 8.04, есть идеи, что происходит?

# 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

Я понятия не имею, как он получил странные GID и UID, ни один не существует в / etc / passwd

Я недавно выполнил обновление Ubuntu NTP, чтобы исправить дыру в безопасности.

Обновление: я только что заметил / bin / netstat имеет ту же проблему

Обновление: похоже, что я получил root, запустил rkhunter и нашел набор ...

Андрей Чолакян
источник
Если вы запускаете «chown root: root / bin / ls», это поможет решить проблему?
gharper
Уже сделал, не повезло, я тоже запускал chkrootkit, никаких положительных результатов.
Андрей Чолакян
Когда вы запустили chown root: root ... Изменились ли параметры, чтобы владелец и группа были root?
Кайл Брандт
У меня точно такой же размер файла. В чем проблема у вас была?
Брайан Хаак

Ответы:

12

Взлом ls и netstat в системе звучит подозрительно, как то, что хакер сделал бы, чтобы избежать обнаружения. Обычно они пытаются исправить эти инструменты, чтобы предотвратить обнаружение инструментов и бэкдоров, которые они установили или создали. Возможно, вы захотите перезагрузить livecd, а затем проверить md5sums этих файлов.

Если система взломана, пожалуйста, проверьте эти вопросы, чтобы узнать, как справиться с ситуацией.

Zoredache
источник
2

Вы можете получить ошибку «Нет такого файла или каталога», когда динамический компоновщик не может найти соответствующие общие объекты.

Запустить:

ldd /bin/ls

и проверьте вывод.

Кстати, мне это тоже кажется подозрительным. Я бы беспокоился о том, что ваша система была взломана.

MikeyB
источник
1
ls - это обычно встроенная оболочка. Вы должны убедиться, что ваша оболочка, а не / bin / ls, была изменена.
Дейв Чейни
1
@Dave Cheney: Я не думаю, что bash (оболочка по умолчанию в Ubuntu) имеет встроенную функцию ls.
Кристиан Чиупиту
2

Это конкретно не связанно с вашей проблемой, но если система не была /bin/lsустановлена (т.е., кто - то удалили его), вы можете использовать:

echo *
чтобы получить список каталогов. Я должен был использовать это раньше, и это спасатель.

Гэвин Мактаггарт
источник
1

Вот вывод stat / bin / ls на моем сервере Ubuntu 8.04. Разного размера, поэтому я думаю, файл поврежден или заменен.

# 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
Бен Уильямс
источник
0

Иногда, когда вы переходите к папке, ее окружение не использует bash, поэтому вы получаете этот массаж.

Чтобы получить команды ls , ll, вам нужно выполнить команду:

bash

Тогда вы можете использовать ls и ll

RefaelJan
источник