![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| simsmann |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 26.11.2006 Репутация: нет Всего: нет |
Как определить CD-ROM физический или виртуальный
|
|||
|
||||
| Virtuals |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 476 Регистрация: 27.11.2006 Репутация: 3 Всего: 11 |
simsmann, Никак!, в виндах все устройства виртуальные
во многих случаях можно попробовать по имени сдрома, но если пользователь захочет то фиг определиш |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
На самом деле можно, не зря у Daemon Tools есть разные режимы эмуляции, однако даже его определяют.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Virtuals |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 476 Регистрация: 27.11.2006 Репутация: 3 Всего: 11 |
Alexeis, на каждый хитрый ..., есть ... с лабиринтом, на каждую... с лабиринтом есть ... с навигатором... на каждый ... с навигатором, есть ... с криптозащитой.!
и так до бесконечности. в конечном итоге проигрывает защита, т.к. в виндах все железо виртуально |
|||
|
||||
| Virtuals |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 476 Регистрация: 27.11.2006 Репутация: 3 Всего: 11 |
вопрос только во времени и цене, старфорс тоже проиграл - вопрос только в целесообразности взлома и времени на это потраченом
|
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Все это не так важно, важно что определить можно это факт, значит вопрос переходит от категории можно-нельзя в категорию "как это сделать?"
Винда же умеет определять физические устройства. Наверное можно посчитать число физических устройств и общее, если они разнятся, то есть виртуальные. Кроме того можно составить базу имен драйверов программ виртуальных приводов. И искать их. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Virtuals |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 476 Регистрация: 27.11.2006 Репутация: 3 Всего: 11 |
система защиты "старфорс" именно призвана защитится от виртуализации сдром, погуглим что есть старфорс, и для себя поймем чего это стоило
|
|||
|
||||
| Riply |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Комодератор Сообщений: 572 Регистрация: 27.3.2007 Где: St. Petersburg Репутация: 3 Всего: 32 |
Как-то мне понадобилось перебрать логические диски (стандартный способ мне не подходил). Попробовала пойти таким путем: Получаем "device information" вызовом: SetupDiGetClassDevsExW(nil, nil, 0, DIGCF_ALLCLASSES or DIGCF_DEVICEINTERFACE or DIGCF_PRESENT, nil, nil, nil); Далее при помощи SetupDiEnumDeviceInfo перебираем устройства системы, отсеивая лишние. Я оставляла только: SysClassGuid_CDROM, SysClassGuid_DiskDrive, SysClassGuid_FloppyDisk (GUID этих классов есть в MSDN (имена мои - по ним не искать)) Для каждого из оставшихся устройств, перебираем его MountPoints при помощи DeviceIoControl (с кодами: IOCTL_DISK_GET_DRIVE_LAYOUT_EX, IOCTL_MOUNTMGR_QUERY_POINTS). Вот, вроде все. Так к чему это я ? Ах да ! Как я не старалась, виртуальные устойства в мой список не попадали. (убирала фильтрацию, меняла параметры запросов и т.д. и т.п). (В результате пришлось писать дополнительну процедуру, находящую и то и другое). Итого: можно получить список "настоящих устройств" способом, описанным выше, и посмотреть есть ли там подопытное устройство P.S. Тогда у меня не было цели определить "виртуальность" чего-то, просто в процессе "научного тыка" случайно натолкнулась Соответственно, данный алгоритм не проходил жесткое тестирование на безошибочность работы именно с этой точки зрения. Добавлено через 11 минут и 44 секунды На всякий случай повторюсь: целью описанного способа не было определение виртуальности. Просто я запомнила свои мучения(безрезультатные) заставить его добавлять и виртуальные Поэтому претензии типа "а вот это он пропускает" не принимаются |
|||
|
||||
| Virtuals |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 476 Регистрация: 27.11.2006 Репутация: 3 Всего: 11 |
Riply, хм странно алкоголевские виртуалки, (примонтированные) обязанны были туда попасть...
ЗЫ вернемся к основам программы из юзермоде, в виндах по определению не работают с аппаратной частью, отсюда любой драйвер покажет все что хочется. а в 0кольце "кто первый влез того и тапки" ЗЫ //старфорс защита ставит целую коллекцию дров (кстати красиво роняющих систему во многих случаях) только с целью добратся до аппаратной части привода, и попытки прочесть хитрые данные с хитрого диска. |
|||
|
||||
| Riply |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Комодератор Сообщений: 572 Регистрация: 27.3.2007 Где: St. Petersburg Репутация: 3 Всего: 32 |
Да я и не спорю ибо не проверяла Я описала с чем столкнулась, только для того чтобы дать информацию к размышлению. Т.е. может попробовать начинать танцевать с "уровня" физических устройств (драйверов или их классов) и уже оттуда спускаться к логическим, попути фильтруя лишнее ? |
|||
|
||||
| BaD_SeCt0R |
|
|||
![]() Lazy Coder ![]() ![]() Профиль Группа: Участник Сообщений: 432 Регистрация: 9.10.2006 Где: Анапа Репутация: 4 Всего: 18 |
Может, каким-нибудь образом прочитать информацию из BIOS'а?
-------------------- Кто владеет информацией - владеет миром. (С) Френсис Бэкон. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |