PDA

Просмотр полной версии : VM WARE BackDoor и палево ?


jsncrp
09.02.2008, 12:09
Известно по меньшей мере три пути обнаружения VM-Ware, которые используют многие программы(webmoney) и вири (которые отказываются работать под виртуалкой)

Во-первых, по оборудованию.
Виртуальные машины несут на своем борту довольно волшебный набор железа, практически не встречающийся в "живой природе":
а) видеокарта VMware Inc [VMware SVGA II] PCI Display Adapter;
б) сетевая карта: Advanced Micro Devices [AMD] 79c970 [PCnet 32 LANCE] (rev 10);
в) жесткие диски: VMware Virtual IDE Hard Drive и VMware SCSI Controller.
Опросив конфигурацию оборудования, вирь или прога сразу поймет где он.

Во-вторых,
виртуальные сетевые карты имеют довольно предсказуемый диапазон MAC-адресов,
а именно: 00-05-69-xx-xx-xx, 00-0C-29-xx-xx-xx и 00-50-56-xx-xx-xx.


В-третьих, VM-Ware имеет коварный backdoor,
оставленный разработчиками для служебных целей и управляемый через порт 5658h,
при этом в регистре EAX должно содержатся "магическое" число 564D5868h.
Следующие инструкции используются для вызова функций управления:

MOV EAX, 564D5868h ; Magic Number
MOV EBX, COMMAND_SPECIFIC_PARAMETER
MOV ECX, BACKDOOR_COMMAND_NUMBER
MOV DX, 5658h ; Port Number

IN EAX, DX
Вначале в регистр EAX помещается “магическое” число, которое используется для аутентификации команд. В регистре EBX хранятся параметры команд. Сами команды загружаются в ECX. В следующей таблице дан краткий обзор некоторых команд:
Номер
команды Описание
00h..03h ?
04h Получить текущее положение курсора
05h Установить текущее положение курсора
06h Получить объем данных в буфере обмена хоста
07h Прочитать данные из буфера обмена хоста
08h Установить объем данных, отсылаемый в буфер обмена хоста
09h Отправить данные в буфер обмена хоста
0Ah Получить версию VMware
0Bh Получить информацию об устройстве


Всего поддерживается как минимум 15 команд. В регистре DX содержится номер порта ввода/вывода и с помощью инструкции IN команда исполняется. Ясно, что с помощью VMware I/O backdoor можно вмешиваться в работу запущенного VMware.

(взято из статей 1 (http://www.securitylab.ru/analytics/216392.php), 2 (http://www.hackzona.ru/hz.php?name=News&file=print&sid=7381)
)
Народ у кого есть патч ?
кто может скомпелить http://honeynet.rstack.org/tools/vmpatch.c

LynXzp
09.02.2008, 18:58
Сразу подумал что статьи стырены. : ) Пока не прочел дату и автора...
Патч требует библиотеку unistd.h - нашел сдесь:
http://linux.die.net/include/unistd.h она требует FEATURES.H
та в свою очередь LETYPES.H
далее такая строчка
#include "unicode/utypes.h"
Это значит
файл "utypes.h" в кодировке unicode?
А.. в директории.. пока работаю над компиляцией...
А вида поддерживает POSIX ?

LynXzp
09.02.2008, 20:08
Это чего значит?
...
#include "utypes.h"
U_NAMESPACE_BEGIN
/** ....
Компилятор ругается на вторую строкуDeclaration syntax error

Если закомметнтировать то точно также ругается на
class U_COMMON_API UMemory { имеенно на U_COMMON_API

Помогите плиз - самому тоже было бы неплохо иметь скомпиленый этот патч..
Может нужен и компилятор который поддерживает POSIX? GCC? А то я пробовал под borland turbo c : ) (не спрашивайте зачем он мне нужен : )