Security

Windows 7:通過 GPO 更新 system32 文件夾中的文件

  • May 21, 2013

我需要更新 system32 文件夾中的一個 Windows 文件,我已經編寫了一個腳本來執行此任務。當我在系統上本地執行它時(從具有提升權限的提示)它工作正常。

我創建了一個 GPO,該腳本在電腦策略 > Windows 設置 > 腳本 > 啟動下設置(我記得這將在啟動時使用具有所有需要權限的 SYSTEM 帳戶執行腳本)

腳本執行,但文件未更新。我知道這是因為 UAC 阻止了這一點。

有沒有辦法實現這一點(不關閉 UAC)?

您需要每次執行腳本來更新文件還是只需要在本地執行一次?如果是後者,解決方案將是使用一個非常狡猾的基於控制台的應用程序PSexec。請注意,您必須是執行腳本的機器上的管理員。

然後在本地/映射驅動器上創建一個文件夾,其中包含:

  1. 您將執行的主批處理文件
  2. PSexec 應用程序本身
  3. 將在遠端電腦上執行的“有效負載”——例如您需要更新的文件和 PSexec 將執行的本地批處理文件。

我正常的 PSexec 有效載荷是:

  1. 在遠端電腦上創建臨時文件/文件夾
  2. 執行指向臨時位置的 PSexec
  3. 刪除所有創建的文件

一個範例啟動器如下所示:

@echo off    
CLS

set /p PCName=Type the Domain Name or IP address of PC:
echo.

COPY local_payload.cmd \\%PCName%\c$\Temp
psexec \\%PCName% C:\Temp\local_payload.cmd

REM after the payload has been launched you can view the output
REM edit: if it does not want to work, try adding an -s switch that will make it run as a system account.

pause

REM here you delete everything after you are finished
DEL \\%PCName%\c$\Temp\SMS_LOCAL.cmd

pause

:eof

引用自:https://serverfault.com/questions/509556