Запускайте як інший користувач без пароля від підвищеного підказки в Windows


13

Є ще кілька утиліт для роботи в якості іншого користувача (наприклад: runas, cpau, psexec) , але всі вони вимагають пароля для відповідного користувача, навіть якщо ви вже працюєте з підвищеними привілеями.

Я хотів би досягти наступного:

  1. У мене вже є підвищений підказки ( Administrator)
  2. Я хотів би виконати команду (наприклад:) calc.exeяк johnбез введення / передачі свого пароля утиліті запуску.

Наприклад, в системі Unix ви могли просто:

root@server:~# su - john

Відповіді:


3

Я цим постійно користуюся. Введення облікового запису потрібно вперше використовувати (і коли пароль змінюється), але все.

runas /user:yourusernamehere /savecred "Your Executable Here"

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

C:\Windows\System32\cmd.exe /c "C:\yourbatfilehere.bat"

3
Дякую за підказку, але на жаль / savecred в моєму випадку не застосовується, оскільки 1) облікові дані користувачів можуть змінюватися І 2) команди, які потрібно виконати, генеруються динамічно (тому мені доведеться вводити пароль для кожної команди). Крім того, це має працювати у фоновому режимі, без будь-якої взаємодії з користувачем.
Разван

@Razvan ви можете загортати свої команди у файл сценарію, доки ім'я буде таким самим, яке ваші команди можуть легко змінити. Що стосується змін облікових даних ... вам потрібно передати свіжі облікові дані нашої кешованої копії. Немає третього варіанту.
Тім Брігхем,

3

Ні, неможливо в Windows. Завжди потрібно вводити пароль хоча б один раз, коли запускаєте програми під іншим обліковим записом користувача. Навіть як адміністратор.

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


Але це технічне обмеження? Я міг би подумати про те, що, можливо, деякі відповідні файли користувачів, необхідні для встановлення нового сеансу, шифруються за допомогою облікових даних користувачів, тому неможливо отримати новий сеанс без надання відповідних облікових даних (це лише здогадка).
Разван

Я не розумію вашого коментаря. Це технічне обмеження в тому сенсі, що Microsoft вирішила планувати Windows таким чином, щоб ви не могли себе представити обліковому запису користувача, не знаючи його пароля. Чому і як це не має значення. Єдиний варіант - ввести пароль або прийняти, що без нього не можна себе представляти жодним обліковим записом.
Даніель

1
@Daniel Ви могли б надати якісь посилання на ваше твердження, що це навмисне стратегічне рішення?
ivan_pozdeev

Чи не існує ACL, щоб це дозволити?
RandomInsano

3

У Windows це можна зробити, лише якщо є поточний сеанс входу користувача, якого ви намагаєтесь представити себе. Це пов’язано з політикою локальної групи "Подання себе за клієнта після автентифікації", що дозволяє членам групи адміністраторів робити саме це (знайдено в розділі "Місцева політика> Призначення прав користувачів").

Я знаю один із інструментів, який дозволяє вам це зробити, це Hacker 2. Запустіть інструмент як локальний адміністратор і знайдіть процес, який працює як користувач, якому ви хочете себе представити. Клацніть на ньому правою кнопкою миші, виберіть Різне> Запустити як цей користувач ..., потім введіть бінарний шлях, який ви хочете запустити як цей користувач, наприклад cmd. Потім CMD відкриється як цей користувач, не запитуючи пароль цього користувача.


-3

Якщо ви помістите .exe в їх папку запуску, можливо, ви зможете запустити його як вони.


3
уточнююча: ти не запускаєш її як вони ... ти змушуєш їх запустити її для тебе.
KevinKTI

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