Вопрос о привилегиях доступа к процессу

Я получил следующий сценарий:

Процесс A создает процесс B, а затем B пытается получить дескриптор A с помощью OpenProcess(). Я хочу, чтобы B имел права PROCESS_ALL_ACCESS на A.

Как мне этого добиться?

Благодарю.

1 ответ

Вероятно, самый простой способ для родителя - избежать того, чтобы ребенок вообще вызывал OpenProcess. Вместо этого, пусть родитель извлекает дескриптор к себе (который будет автоматически иметь все права доступа), а затем вызывает DuplicateHandle с bInheritHandle = true. Затем, когда он создает процесс B, этот дескриптор (с полным доступом к процессу A) уже будет открыт в дочернем процессе. Процесс A просто должен передать дескриптор процессу B, и процесс B может использовать его.

Другие вопросы по тегам