Windows 7: использование автоматического повышения прав для повышения уровня моего собственного процесса?

Из статьи Technet за июль 2009 г., озаглавленной Внутри контроля учетных записей пользователей Windows 7, Марк Руссинович описывает, что приложение, работающее от имени обычного пользователя, может автоматически повышать права и получать административные права:

... стороннее программное обеспечение, работающее в учетной записи PA (защищенный администратор) со стандартными правами пользователя, может использовать автоматическое повышение прав для получения прав администратора. Например, программное обеспечение может использовать API WriteProcessMemory для внедрения кода в Explorer и CreateRemoteThread API для выполнения этого кода, метод называется внедрение DLL. Поскольку код выполняется в проводнике, который является исполняемым файлом Windows, он может использовать объекты COM, которые автоматически повышают права, такие как объекты копирования/перемещения/переименования/удаления/ссылки, для изменения ключей системного реестра или каталогов и предоставления администрирования программного обеспечения. права.

Далее он упоминает, что вредоносное ПО никогда этого не сделает, потому что это слишком сложно:

...эти шаги требуют обдуманного намерения, они нетривиальны...

и наконец

... вредоносные программы могут получить административные права, используя те же методы.

Поэтому мне любопытно увидеть реальную реализацию.


я бы подумал, что PROCESS_VM_WRITE будет право, не предоставленное обычным пользователям.

Примечание: я бы никогда не сделал ничего плохого сам, как и любой другой разработчик в мире.


person Ian Boyd    schedule 18.06.2009    source источник
comment
Вредоносное ПО никогда не было чем-то, что могло бы препятствовать тому, чтобы все было слишком сложно :)   -  person bdonlan    schedule 18.06.2009
comment
Я знаю. Я также надеялся на дальнейшее обсуждение здесь по этому вопросу.   -  person Ian Boyd    schedule 18.06.2009
comment
У парней, которые пишут вредоносное ПО, нет дедлайнов, им не нужно беспокоиться о бюджетах и ​​им не нужно писать красиво отформатированный код, который ничего не ломает :). На мой взгляд, если они хотят что-то сделать, они найдут способ сделать это, как бы сложно это ни было.   -  person alex    schedule 19.06.2009
comment
Пожалуйста, не делайте этого. Это только сделает команду Windows очень несчастной, когда им придется выяснять, как поддерживать работу вашего приложения в будущем. Этот метод лучше оставить вредоносным программам — если вашему приложению требуется повышение прав для правильной работы, существуют другие методы, позволяющие избежать запроса на повышение прав, поддерживаемого ARE (например, вы можете изолировать код, требующий повышения прав, в службу и использовать RPC для связи). с обслуживанием).   -  person ReinstateMonica Larry Osterman    schedule 21.06.2009
comment
@Larry: у меня нет никакого намерения использовать эту дыру, чтобы поднять что-либо. Я надеюсь, что, разместив его там, где вредоносное ПО воспользуется им для получения полного контроля над системами, Microsoft решит проблему. (p.s. больше блогов, пожалуйста)   -  person Ian Boyd    schedule 21.06.2009
comment
Поведение не изменится, система работает как задумано. Запрос образца кода не поможет.   -  person ReinstateMonica Larry Osterman    schedule 22.06.2009
comment
Я надеюсь, что с достаточным количеством вредоносных программ, использующих его, это произойдет.   -  person Ian Boyd    schedule 22.06.2009


Ответы (2)


Лонг Чжэн на istartedsomething.com опубликовал несколько сообщений об автоматическом повышении уровня приложения. Он не является автором исходного кода, но он ссылается на человека, который сделал доказательство концепции.

Подробнее об этом можно прочитать здесь.

person alex    schedule 19.06.2009

Вы говорите об использовании инъекций процесса? или повышение привилегий?

Если вы хотите увидеть пример кода внедрения процесса, в этой ветке есть несколько примеров: http://www.rohitab.com/discuss/index.php?showtopic=23539&hl=bypassing+firewall

person wonderer    schedule 10.08.2009
comment
У этих парней интересный способ общения... А что касается обхода UAC: Microsoft назначает награду в размере до 100 000 долларов за работающий эксплойт. Таким образом, вы можете догадаться, что это сложно сделать, и вы хотели бы передать его Microsoft, а не публиковать на хакерском форуме. - person bytecode77; 10.02.2017