Прочитать образ драйвера
От: Аноним  
Дата: 09.07.14 15:02
Оценка:
Есть драйвер, который грузится в boot time, нужно прочитать его образ.
Возникает проблема при нахождении полного пути к файлу(C:\Windows\System32\drivers).
\SystemRoot на этом этапе указывает на ArcName\multi(0)disk(0)rdisk(0)partition(1), которая еще не создана.
Попробовал резолвить ссылку Global??\C: и прилепить оставшийся путь из SharedUserData->NtSystemRoot — работает только на XP, в 7-ке к этому моменту нет ссылки \Global??\C:
Подскажите как в windows 7 решить эту проблему? Желательно способом, который будет работать и в xp.
Спасибо.
Re: Прочитать образ драйвера
От: ononim  
Дата: 10.07.14 11:35
Оценка:
А>Есть драйвер, который грузится в boot time, нужно прочитать его образ.
А>Возникает проблема при нахождении полного пути к файлу(C:\Windows\System32\drivers).
А>\SystemRoot на этом этапе указывает на ArcName\multi(0)disk(0)rdisk(0)partition(1), которая еще не создана.
А>Попробовал резолвить ссылку Global??\C: и прилепить оставшийся путь из SharedUserData->NtSystemRoot — работает только на XP, в 7-ке к этому моменту нет ссылки \Global??\C:
А>Подскажите как в windows 7 решить эту проблему? Желательно способом, который будет работать и в xp.
А>Спасибо.
Забудьте про C:, D: etc в ядре. Вспоминайте про них лишь в случае крайней необходимости.
Скармливайте в NtCreateFile именно путь в виде "\\SystemRoot\\System32\\Drivers\\YOURDRIVER.SYS".
Запрашивайте права тока на чтение.
Как много веселых ребят, и все делают велосипед...
Re[2]: Прочитать образ драйвера
От: Аноним  
Дата: 10.07.14 12:33
Оценка:
Здравствуйте, ononim, Вы писали:

O>Забудьте про C:, D: etc в ядре. Вспоминайте про них лишь в случае крайней необходимости.

O>Скармливайте в NtCreateFile именно путь в виде "\\SystemRoot\\System32\\Drivers\\YOURDRIVER.SYS".
O>Запрашивайте права тока на чтение.

Я же говорю \SystemRoot указывает на ArcName\multi(0)disk(0)rdisk(0)partition(1), в этот момент еще нет никаких multi(0)disk(0)rdisk(0)partition(1)
Более того в win7 нету даже \Device\HarddiskVolume1 и т.д. Кто бы мне сказал, как при таком раскладе достучаться до моего драйвера.
Re: Прочитать образ драйвера
От: x64 Россия http://x64blog.name
Дата: 10.07.14 17:09
Оценка:
А>Подскажите как в windows 7 решить эту проблему?

Именно из файла надо? А то есть поля DriverStart и DriverSize в объекте.
JID: x64j@jabber.ru
Re[2]: Прочитать образ драйвера
От: Аноним  
Дата: 11.07.14 06:53
Оценка:
Здравствуйте, x64, Вы писали:

x64>Именно из файла надо? А то есть поля DriverStart и DriverSize в объекте.

Боюсь, что не подойдет. Мне нужен весь файл драйвера
Re: Прочитать образ драйвера
От: Andrew.W Worobow https://github.com/Worobow
Дата: 11.07.14 10:01
Оценка: +1
Здравствуйте, Аноним, Вы писали:

А>Спасибо.


С трудом понял, что тебе надо найти СВОЙ файл, СВОЕГО драйвера, в СВОЕМ коде момент его загрузки в 'boot'.

Самый простой способо, ИМХА это — В точке входа, читать свою память куда тебя загрузили. Там весь твой файл и есть. Точнее та часть которая подлежит загрузке бутовым загрузчиком. Он просто мэпирует файл на память. Немного не так как это делаеться в мемори-мэппед, но по сути разницы там не много.

Если нужны какие-то особые ресурсы из файла или там кусок твоего вируса, то ИМХА тебе лучше дождаться не бут времени и уже читать там что тебе надо.
Не все кто уехал, предал Россию.
Re[2]: Прочитать образ драйвера
От: Аноним  
Дата: 11.07.14 10:26
Оценка:
Здравствуйте, Andrew.W Worobow, Вы писали:

AWW>С трудом понял, что тебе надо найти СВОЙ файл, СВОЕГО драйвера, в СВОЕМ коде момент его загрузки в 'boot'.

прошу прощения, в следующий раз постараюсь расписать всю картину подробнее

AWW>Самый простой способо, ИМХА это — В точке входа, читать свою память куда тебя загрузили. Там весь твой файл и есть. Точнее та часть которая подлежит загрузке бутовым загрузчиком. Он просто мэпирует файл на память.

так стало быть не весь

AWW>Если нужны какие-то особые ресурсы из файла или там кусок твоего вируса, то ИМХА тебе лучше дождаться не бут времени и уже читать там что тебе надо.

Так есть шанс в boot time прочитать файл с диска или нет?
Re[3]: Прочитать образ драйвера
От: Andrew.W Worobow https://github.com/Worobow
Дата: 11.07.14 10:41
Оценка:
Здравствуйте, Аноним, Вы писали:

А>так стало быть не весь


Скажем так — в общем случае весь.

AWW>>Если нужны какие-то особые ресурсы из файла или там кусок твоего вируса, то ИМХА тебе лучше дождаться не бут времени и уже читать там что тебе надо.

А>Так есть шанс в boot time прочитать файл с диска или нет?

Можно. Но трудно, в смысле длинно, да и с версионностью придеться много возиться. Мелких подробностей уже не очень хорошо помню — но там отдельный код для всего этого. И он не доступен, вот так "на раз-два".
Не все кто уехал, предал Россию.
Re[3]: Прочитать образ драйвера
От: MShura  
Дата: 15.07.14 07:57
Оценка:
AWW>>Если нужны какие-то особые ресурсы из файла или там кусок твоего вируса, то ИМХА тебе лучше дождаться не бут времени и уже читать там что тебе надо.
А>Так есть шанс в boot time прочитать файл с диска или нет?

Можно подумать над инвариантом — распарсить файловую систему самостоятельно.
Можно даже какую-нибудь подсказку в реестр записать заранее (если он доступен в этом месте)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.