Хай. Тема уже поднималась много раз. У кого нибудь есть рабочий код востановления SDT. Смотрел по форуму, нашел код в этой веткеhttp://www.wasm.ru/forum/viewtopic.php?id=24061. Но к сожалению он не рабочий. Если у кого есть рабочий вариант, или конкретная мысль как иправить и доработать код из той ветки, будьте любезны поделитесь пожалуйста. Заранее благодарен.
cresta да ты прав. Но хотелось бы видеть код драйвера ( а не USER MODE приложения ), востанавливающий SDT. Поэтому я и прошу, если у когото есть мысль как доработать код из той ветки форума. Буду очень благодарен.
странно, у меня нет. У кого нибудь есть мысли? Ведь у того чела vanilly_cpp из веткиhttp://www.wasm.ru/forum/viewtopic.php?id=24061 он тоже не работал. n0name сам то что думаешь? В чем думаешь дело?
n0name ты в этой ветке написал http://www.wasm.ru/forum/viewtopic.php?id=18861 что для многопроцессорной машины код другой будет. Если не трудно обьясни пожалуйста в чем будут отличия.
Оригинальная SST.ntos таблица, в которой не каждому элементу соответствует экспортируемый сервис, а номер элемента это индекс. Этим легко она ищется. Для воостановления каждого сервиса достаточно инструкции Lock xchg. Вот часть SST: Код (Text): 0040DF60 004ADC3F ntoskrnl.NtAddAtom - сервис #8 0040DF64 0057938B ntoskrnl.0057938B - NtAddBootEntry, сервис #9, не экспортируется 0040DF68 00568783 ntoskrnl.00568783 - NtAdjustGroupsToken, сервис #10, не экспортируется 0040DF6C 004BBB77 ntoskrnl.NtAdjustPrivilegesToken - сервис #11
странно а я щас код проверил на ХП разных модификаций и код удачно сработал везде =( ..может я те дал модификацию не ту .. но другую я не нашел .. а эта у меня работает везде
мне на ум приходят сразу три метода поиска адресов оригинальных функций =) а с восстановлением никогда проблем не было. ток под вистой - но и они решались. код завтра выложу, если найду.