PsExec у доступі заборонено


11

Я використовую psexec.exeдля запуску програм в іншому контексті безпеки. Однак програми запускаються, але, схоже, вони не працюють у визначеному контексті безпеки.

У мінімальній формі:

psexec -u wsadmin -p password cmd

Запускає нове вікно cmd, якщо я набираю це вікно whoami

C:\Windows\system32>whoami
win-k1r7g38nlkt\wsadmin

C:\Windows\system32>net localgroup administrators
Alias name     administrators
Comment        Administrators have complete and unrestricted access to the computer/domain

Members

-------------------------------------------------------------------------------
Administrator
wsadmin
The command completed successfully.

Як ви бачите, я напевно інший користувач. І я можу підтвердити, що цей користувач є членом "групи адміністраторів"

C:\Windows\system32>mkdir test
Access is denied.

Якщо я використовую руни з вказаним користувачем, вона працює як передбачається. Але мені потрібно надати пароль у командному рядку.

Відповіді:


10

У Windows Vista та пізніших версіях, якщо UAC увімкнено, для psexecзапуску з облікового запису адміністратора процес повинен бути встановлений токеном елевації для отримання повних привілеїв. Це можна зробити, передавши -hатрибут у psexecкомандному рядку. Отже, ви змінили б свою команду на:

psexec -h -u wsadmin -p password cmd

Для отримання додаткової інформації запустіть psexec /?:

    -h    If the target system is Vista or higher, has the process
          run with the account's elevated token, if available.

9
На жаль, це дає мені "Не вдалося встановити доступ до служби PSExec, доступ заборонено"
1313

Ви також запускаєте початкову команду з підвищеного командного рядка або ви використовуєте її як локальний запуск?
nhinkle

Оригінальна команда виконує контекст безпеки "користувача". Я не можу використовувати run-as з конкретних причин.
Туїм

1
Використання «команда Підвищеного запрошення» або «Підвищений PowerShell запиту» через «Пуск> Тип" PowerShell "> Клацніть правою кнопкою миші" Windows PowerShell "> Виберіть" Запуск від імені адміністратора " , а потім запустити команду Psexec включаючи -hопцію.
Underverse

@Underverse, Чи можна використовувати psexec від користувача CMD, а не від адміністратора PS? Я хочу використовувати psexec саме для переходу CMD в контекст адміністратора :)
Suncatcher

5

У мене пішло години , щоб знайти робочий шлях до PsExecміж двома ОС Windows 7 комп'ютерів з не-Admin користувач , починаючи PsExec... Відключення контролю облікових записів ( EnableLUA=0, ConsentPromptBehaviorAdmin=0, LocalAccountTokenFilterPolicy=1) не працюють, вимикаючи Брандмауери не робота ...

Тут я знайшов робочий шлях - дякую JelmerS: (Інформація від PSexec не підключається до машини за допомогою наданих імені користувача та пароля )

Це тому, що psexecвсе ще намагається отримати доступ до ADMIN$спільної вашої інформації з місцевими обліковими записами, перш ніж виконувати вашу команду як інший користувач. Відповідно до цього потоку, ви можете кешувати облікові дані перед виконанням psexec:

cmdkey.exe /add:MACHINE_NAME_HERE /user:MACHINE_NAME_HERE\Administrator /pass:PASSWORD_HERE 
psexec.exe \\MACHINE_NAME_HERE -i notepad
cmdkey.exe /delete:MACHINE_NAME_HERE

Примітка. Якщо ви не хочете ввести пароль в історії командного рядка, ви можете просто скористатися паролем без пароля, і ви отримаєте підказку ввести його.
Джо Кодер

1

Я знайшов рішення:

Виявляється, коли увімкнено UAC, psexec не працює як слід.
Щоразу, коли HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUAвстановлено 0psexec, працює як очікувалося.


4
Інший спосіб цього не потребує зміни реєстру - просто додати -hпрапор до psexecкоманди. Це підказує йому запустити команду з підвищеним маркером, що еквівалентно запуску процесу "як адміністратор" з контекстного меню.
nhinkle

5
Установка EnableLUAдля 0відключає Admin Approval Mode, який є в основному ядром ОАК. В результаті UAC буде відключений. Джерело .
Властиміл Овчачик

Для мене -h прапор не спрацював, і відключення UAC було тривожним, але я знайшов кращу альтернативу
mTorres

0

Ось що для мене спрацювало, воно не позбавляється від UAC повністю, але вимикає його для адміністраторів

Конфігурація комп'ютера \ Налаштування Windows \ Налаштування безпеки \ Локальна політика \ Параметри безпеки \ Контроль облікових записів користувачів: Запуск усіх адміністраторів у режимі затвердження адміністратора - вимкнено


Що насправді не чудова ідея. Крім того, як це поліпшення порівняно з іншими доступними рішеннями?
Сет
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.