The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Организация Honeypot в VMware - основы (vmware security)


<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>
Ключевые слова: vmware, security,  (найти похожие документы)
Автор: VIKT0R (apple) <a@1io.ru> Newsgroups: email Date: Mon, 1 Aug 2005 14:31:37 +0000 (UTC) Subject: Организация Honeypot в VMware - основы Организация Honeypot в VMware - основы Kurt Seifried, <kurt@seifried.org.> Перевод с дополнениями: VIKT0R <a@1io.ru.> Сайт: http://1io.ru/ Установка Honeypot становится обычным делом, поскольку профессионалы защиты пытаются проводить более детальное исследование методов (искусства) нападающих. Honeypots также неоценим для изучения побуждений нападающих, их привычек и образов поведения. К сожалению, установка надлежащего honeypot - нетривиальная задача, и правильное конфигурирование сетевых датчиков для фиксирования всех данных осуществить сложно. Хорошие новости - то, что есть множество инструментальных средств и методов, которые могут делать жизнь намного более легкой для развертывания некоторых honeypot администраторами. Что является VMware? VMware - это система виртуальных машин; программный продукт разработан как для Windows, так и для Linux систем и позволяет эмулировать одновременную работу нескольких операционных систем, даже соединяя их по сети. Также фирма выпускает серверный вариант, адаптированный для одновременной работы нескольких эмулируемых (далее будем пользоваться термином "гостевых" операционных систем). Первый минус в работе VMware - это невозможность эмуляции центрального процессора. Система VMware способна к эмуляции всех версий Windows, Linux, большинство BSD семейства, Solaris для Intel, Novell, Netware, а множество других неподдерживаемых операционных систем может быть адаптировано для работы. Виртуальные диски против физических (реальных) Виртуальные диски, видимые в гостевой операционной системе как реальные накопители, - это на самом деле набор файлов, (хотя есть стандартные способы подключения реальных дисков). Есть несколько преимуществ и недостатков этого. Если ваша цель - быстрое исследование или раннее устройство предупреждения, и Вы не планируете преследовать в судебном порядке взломщика, то использование витруальных дисков приемлемо. В гостевой операционной системе они видны как реальные, соответсвенно, работа с ними будет аналогичка работе с дисками Вашей реальной системы (отныне будем называть ее "хост", супротив виртуальной, которую мы назвали "гостевой"). Однако, если гостевая операционная система достаточно повреждена, Вы не сможете легко получить доступ к файлам на виртуальных дисках. Для глубокого исследования, а тем более, если Вы планируете подать в суд на злоумышленника, лучше в качестве жестких дисков гостевой системы использовать реальные накопители. Я рекомендовал бы использовать физически отдельный HDD от HDD реальной операционной системы, это ослабит как нагрузку на диск, так уменьшит вероятность потенциального перекрестного загрязнения. Использование настоящего накопителя позволит, к примеру, делать реальные слепки дисков. Также желательно поместить данный диск в лоток (Mobile Rack), чтобы успеть оперативно извлечь устройство в случае попытки стереть важные файлы. Имеются в виду не логи системы, обычно хранящиеся на другом компьютере, а сама система. Подготовка к исследованию Вероятно наиболее важная часть подготовки, это разбивка дисков на разделы. В случае выбора использования виртуальных дисков можно задать размер, скажем в 6 ГБ, и это не повлечет к мгновенному появлению файла, размером шесть гигобайт. Напротив, файл сначала будет маленьким и увеличиваться по мере создания файлов в гостевой системе. Также разные виртуальные диски могут быть подключены к разным гостевым системам. Таким образом, можно создать много виртуальных систем на сравнительно маленьком носителе. Стирать данные удобно бесплатно утилитой от IBM: http://www.storage.ibm.com/hdd/support/download.htm Просто распакуйте на гибкий диск, и запускайте командой "wipe x" где x - номер (0-7) устройства. Для UNIX систем просто используют dd, чтобы вытереть диск командой типа: dd bs=1000k if=/dev/zero of=/dev/partitionname Исследование данных в памяти Энергозависимая память - одна из ведущих проблем для исследования. Саморазмножающиеся вирусы типа CodeRed - резидент памяти и не оставляют следов в файловой системе. Одно из главных преимуществ для Honeypot с VMware - способность получить ahold - слепок - данных в памяти и исследовать это. Если рассчитывать на это, необходимо выделить гостевой системе маленький объем оперативной памяти, например, 32 МБ или меньше. Это вынудит использовать файл подкачки оперативной памяти, давая возможность его исследовать. Сам файл подкачки (хоста) расположить на отдельном томе жесткого диска. Это может казаться подозрительным, но может часто находить оправдание в нежелании привести систему к краху из-за ограниченной памяти. Приостановка OS Это - одна из моих любимых особенностей VMware, способность приостановить гостевую операционную систему, внешне. В отличие от реальной системы, которую можно только выключить, VMware приостанавливает выполнение процессов на любой операционной системе и может легко использоваться на компрометированной или тяжело поврежденной системе. Когда работа систему приостанавливаетса (ставится на паузу), создается дополнительный внешний файл определенного формата со снимком памяти. Единственное препятствие - это отсутствие свободного места на реальном HDD. Например, для приостановки работы WindowsXP, на которой не установлено никакого ПО и выделено 232 МБ ОЗУ (почему так много будет сказано чуть позже) требуется около 240 МБ места на диске. Данный файл можно посмотреть как HEX-редактором, так и с помощью команд "strings" и "grep" для быстрого извлечения информации. Другая главная выгода этой способности - то, что Вы можете брать снимок компрометированной системы, копировать ее файлы на другие машины и там просматривать в любое время. Это похоже на просмотр фильма, сохраненного на жестком диске. Можно нажать Play, можно - Pause или начать с начала, чтобы искать нужную информацию. Идентификация VMware системы В большинстве случаев система VMware не будет производить никакого подозрения, если настроить систему очень близко к реальной. Однако остается еще множество способов идентификации операционной системы как виртуальной. Не важно VMware или VirtaulPC и т.п. VMware tools VMware tools - набор утилит, упрощающих взаимодействие с гостевой системой. Может быть элементарно вычислено, напрмер в случае установленной Windows-honeypot, просмотром установленных программ "Applications Add/Remove", каталога Program Files и т.д. Для UNIX есть заплаты Xfree86, чтобы улучшить выполнение, также как законченный Xfree86 сервер, оптимизированный для гостевых операцинных систем VMware, обе из которых могут быть идентифицированы нападающими. Гораздо более очевидные следы также оставлены /etc/rc.d/init.d/dualconf, "Copyright (C) 1998-99, VMware Inc" и /etc/vmware-tools/ директория. Желательно избежать устанавливать VMware tools на VMware honeypots если есть возможность. AMD 1 ГГц с 32 мегабайтами ОЗУ? Одна проблема с VMware - неспособность скрыть тип центрального процессора; проницательный нападающий, вероятно, задастся вопросом, почему сервер с 32 мегабайтами ОЗУ имеет ЦП 1 ГГц AMD. К сожалению это то, что случится, и скрыть этот факт от нападающего трудно. Нападающий может просто посмотреть, например, под Linux cat /proc/cpuinfo Удаление /proc поддерживаеся в Linux, однако существуют другие способы узнать скорость центрального процессора. BIOS компьютера Один способ идентифицировать VMware системы - их BIOS, есть множество свободных утилит как для UNIX-подобных, так и для Windows, которые могут узнать параметры BIOS и даже извлекать копию BIOS VMware системы. Радует то, что в случае использования в качестве гостевой системы Windows NT/2000/XP прямой доступ к аппаратным средствам блокирован. Однако Вы можете сделать запрос BIOS в гостевой операционной системе, которая Вам будут давать следующую информацию: BIOS ID: unknown BIOS Date: 10/16/01 BIOS Signon: unknown BIOS Type: PhoenixBIOS 4.0 Release 6.0 licensed to Intel Super I/O: unknown Chipset: Intel 440BX/ZX rev 1 Также есть множество утилит, чтобы делать копию BIOS, Мастер BIOS доступен бесплатно и может легко делать его копию, полагая, что BIOS VMware является относительно уникальным, становится весьма простым проверить сигнатуру файла BIOS, чтобы видеть, является ли это VMware BIOS. К сожалению нет почти никакого способа скрыть эту информацию от нападающего. Это можно назвать Ахиллесовой пятой для системы VMware honeypot. Обе эти утилиты доступны: http://www.bioscentral.com/misc/downloads.htm Есть утилита для Linux и BSD: http://www.cgsecurity.org/. Программное определение виртуальных машин. Пример приведен для Windows VMware honeypot. Как для VMware, так и для VirtualPC как самых распространенных систем виртуальных машин. program wvvare; {$APPTYPE CONSOLE} uses SysUtils; function IsVMwarePresent(): LongBool; stdcall; begin Result := False; {$IFDEF CPU386} try asm mov eax, 564D5868h mov ebx, 00000000h mov ebx, 00000000h mov ecx, 0000000Ah mov edx, 00005658h in eax, dx cmp ebx, 564D5868h jne @@exit mov Result, True @@exit: end; except Result := False; end; {$ENDIF} end; function running_inside_vpc: boolean; assembler; asm push ebp mov ecx, offset @@exception_handler mov ebp, esp push ebx push ecx push dword ptr fs:[0] mov dword ptr fs:[0], esp mov ebx, 0 mov eax, 1 db 00Fh, 03Fh, 007h, 00Bh mov eax, dword ptr ss:[esp] mov dword ptr fs:[0], eax add esp, 8 test ebx, ebx setz al lea esp, dword ptr ss:[ebp-4] mov ebx, dword ptr ss:[esp] mov ebp, dword ptr ss:[esp+4] add esp, 8 jmp @@ret @@exception_handler: mov ecx, [esp+0Ch] mov dword ptr [ecx+0A4h], -1 add dword ptr [ecx+0B8h], 4 xor eax, eax ret @@ret: end; begin if IsVMwarePresent() then writeln( 'Found VMware!'); begin if running_inside_vpc then writeln( 'Found VirtualPC!'); end; end. Код очень прост и не требует комментариев. Потенциальные юридические ловушки Поскольку хост (реальная операционная система) имеет доступ к гостевой, можно предположить, что возможно заражение гостевой операционной системы посредством реальной. Поэтому защищенность реальной системы особенно критична. Вероятно, адвокат защиты будет спорить, что VMware honeypot был заражен ведущей операционной системой, или возможно непосредственно изменен ведущей операционной системой без следа, среди нескольких возможных проблем. Например, дисковая дефрагментация перестроила файлы виртуального диска, изменяя данные. Обращение к другим гостевым системам также должны регулироваться, если Вы планируете использовать результаты VMware honeypot как доказательство. Хоть маловероятно, что гостевые операционные системы могут находиться в противоречии или изменять друг друга, для адвоката существует потенциал, чтобы Ваши доказательства подвергнуть сомнению. Так что лучше, если на компьютере будет только одна система honeypot. Один главный фактор, который также может использоваться защитой, это наличие любого протокола обмена информацией гостевой системы с хостом, например, SMB (Windows), NFS (UNIX), ftp, http и другие. Также желательно включить как можно больше регистрации и ревизии на хосте, насколько это возможно. Резюме VMware - неоценимый инструмент для исследователей, желающих, развернуть honeypot для наблюдения, ставящий целью предупреждение нападений. Но подобно наиболее сложным инструментальным средствам это может создать много ненужной работы или даже привести к убыткам (как и любой honeypot), если Вы - не осторожны. Например, в случае разрешения исходящего трафика через Вашу машину можно будет производить сканирование и ответственность может лечь на Вас.

<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>

Обсуждение [ RSS ]
  • 1, Tigrisha (?), 15:59, 01/08/2005 [ответить]  
  • +/
    По поводу обнаружения злоумышленником vmware, можно еще вот что добавить. Не надо придумывать сложные способы просто загляните в /var/log/dmesg, поищите символы vmware. И все станет ясно как день.
     
  • 2, Dainichi (?), 03:30, 02/08/2005 [ответить]  
  • +/
    Интересно, насколько хорошо с такой задачей справится bochs?

    Кстати, простенькие приманки можно делать с помощью honeyd

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Спонсоры:
    Слёрм
    Inferno Solutions
    Hosting by Ihor
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2019 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру