WriteProcessMemory к Системному процессу с SeDebugPrivilege включен. (C, Vista)

System.Obsolete один из самых полезных атрибутов в платформе, по-моему. Способность повысить предупреждение о коде, который больше не должен использоваться, очень полезна. Я люблю иметь способ сказать разработчикам, что что-то больше не должно использоваться, а также наличие способа объяснить, почему и указывают на лучший/новый способ сделать что-то.

Conditional attribute довольно удобно также для использования отладки. Это позволяет Вам добавлять методы в своем коде в целях отладки, которые не будут скомпилированы, когда Вы создадите свое решение для выпуска.

Тогда существует много атрибутов, характерных для Веб-элементов управления, которые я нахожу полезными, но те более конкретны и не имеют никакого использования за пределами разработки управления сервером от того, что я нашел.

7
задан Matthew Murdoch 14 December 2009 в 12:26
поделиться

2 ответа

Это связано с изоляцией сеанса в Vista или более поздних версиях Windows. Ознакомьтесь с исходным кодом или дизассемблированием инструментов для сброса паролей, таких как Cain и Abel, которые подразумевают функциональность Vista. По сути, процесс тот же, но вы будете вызывать другую функцию для CreateRemoteThread (извините, я не думаю, что функция экспортируется, вам просто нужно ее найти, поэтому разборка работающего программного обеспечения, вероятно, лучший выбор).

4
ответ дан 7 December 2019 в 05:26
поделиться

Вы можете попробовать использовать RtlCreateUserThread вместо CreateRemoteThread. Этой подпрограмме не важно, в каком сеансе находится целевой процесс. Просто не забудьте, чтобы поток вызывал RtlExitUserThread до его завершения. Эти потоки не очищаются после себя, как это делают CreateThread / CreateRemoteThread.

Код реакции может дать вам хорошее представление о том, что делают эти подпрограммы.

4
ответ дан 7 December 2019 в 05:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: