Доброго времени суток, Уважаемые! Есть драйвер написанный на masm32. По специфике своей работы он в системе хучит некоторые другие драйвера (DriverObject.MajorFunction). Возникла потребность написать такой же драйвер под 64 битную систему. В связи с чем возникло несколько вопросов: 1. Для 64 битных систем требуется цифровая подпись, которую не получишь если творишь "черные" дела, хучить SDT теперь строго настрого запрещено. Распространяется ли это ограничение и на хук драйверов (DriverObject.MajorFunction)? 2. Почитав про архитектуру 86-64, из основных изменений - это новые регистры (размер естественно увеличен), соглашение о передаче параметров, немного измененная адресация. К сожалению толком не нашел примеров драйверов на masm64 (как правило все на fasm). Пишут ли на masm64 драйвера и если да, то где брать inc файлы? Как я понимаю тот же ntddk.inc нужен новый.
1. Всё, что не понравится MS, будет отвергнуто. Сомневаюсь что ей понравится такого рода хук. Советую орбатиться к ним в саппорт (есть спец отделения для таких вещей), может подскажут альтернативу. 2. Не видел ни разу. Но думаю проблем с портированием из fasm'a в masm возникнуть не должно. ntddk.inc это чей? Four-F'a?
n0name Если на masm64 драйвера не пишут, то наверняка не спроста . по поводу inc файлов - да, я имею ввиду KmdKit от Four-F. Я так понимаю в 64 битной архитектуре все структуры также увеличились в два раза в размерности. Не хочется изобретать велосипед, поэтому и спрашиваю кто как пишет драйвера под х64
пишу на Це сразу х32 и х64 хучить на х64 что-то можно, что-то нет я хучил ksecdd.sys - проблем не было nt-hal-sdt - не трогал - патчгард потомучто валидные подписи опять же в серьезных продуктах всегда есть - так что это не проблема при отладке варная винда работает с ядерным виндбг и подписывать дров не надо
есть отладочные символы вобще не ясно зачем юзать асм когда столько боков со структурами это видимо врожденный порок