Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #32, ИЮЛЬ 2003 г.

LINUX ROOT KIT - HOWTO

[ElviS] (elvis@sgroup.ru)

Спецвыпуск Xakep, номер #032, стр. 032-036-2


БЕРЕМ КОНТРОЛЬ!

Итак, сейчас ты узнаешь, для чего служит и как используется каждая тулза из пакета.

chfn - позволяет юзеру получить права рута. Работает так: запускай chfn, а когда он попросит тебя ввести новое имя, смело вводи пароль к руткиту - взамен получишь рута :).

chsh - эта штуковина работает аналогично chfn, только здесь тебе понадобится ввести вместо имени шелла пароль к руткиту, кстати, по умолчанию он satori и задается в rootkit.h. Выглядит это так:

[test@unk-host test]$ chsh

Changing shell for test.

Password: password_for_user_test (пароль пользователя, НЕ руткита)

New shell [/bin/bash]: lepricon

[root@elvis-net test]#

ПРЯЧЕМСЯ!

ls - позволяет прятать X(икс) файлы. Список файлов, которые надо прятать, задаются в текстовике, который ты указываешь в параметре ROOTKIT_FILES_FILE в rootkit.h, по умолчанию этот файл /dev/ptyr. Также можно сделать так, чтобы эти файлы можно было просматривать со специальным флагом "ls -/". Чтобы разрешить его использование, вместо "#undef SHOWFLAG" в rootkit.h напишите "#define SHOWFLAG" (это надо делать до компиляции и установки). Файл ROOTKIT_FILES_FILE (/dev/ptyr по дефолту) имеет такой вид:

x-file1

bleva.tar.gz

hacked.tar.gz

.hrenya

directory-1

То есть это просто перечень файлов, которые надо прятать. Есть один недостаток: если ты назовешь свой файл passwd, то все файлы passwd, даже /etc/passwd, не будут выводиться на экран по команде ls. Так что выбирай оригинальные имена файлов и дир. Регистр ИМЕЕТ значение, то есть, если ты впишешь в ROOTKIT_FILES_FILE директорию FiLeZ, то диры filez, filEZ, FILEZ и т.д. скрываться не будут, то же самое относится и к файлам. Добавлять и удалять файлы из ROOTKIT_FILES_FILE можно без перекомпиляции руткита.

Пробэкдоренные сервисы типа du find работают аналогично.

netstat - патчится до состояния, в котором он не показывает tcp/udp соединения и открытые порты. То, что надо скрывать, задается в текстовике, который указывается в rootkit.h в параметре ROOTKIT_ADDRESS_FILE, по умолчанию этот параметр равен /dev/ptyq. Есть три типа параметров скрытия, которые ты можешь задать в ROOTKIT_ADDRESS_FILE. Вот они:

тип 0: прячет uid

тип 1: прячет локальный адрес

тип 2: прячет удаленный адрес

Назад на стр. 032-036-1  Содержание  Вперед на стр. 032-036-3