1. 程式人生 > >讓XP HOME使用組策略、本地使用者和組、安全策略以及檔案訪問許可權的修改

讓XP HOME使用組策略、本地使用者和組、安全策略以及檔案訪問許可權的修改

朋友中有很多用的是筆記本,大多是預裝的XP home版,home版平時使用尚可,但功能卻遠不如XP pro

曾經就幫很多朋友維護系統,發現System Volume Information這個資料夾可以迅速的將系統磁碟塞滿,對於筆記本硬碟,甚至是我這樣給系統區劃了30G的人,都受不了這種BT的玩意
關閉系統還原後,系統並不會自動清理這個東西,手工刪除是最討厭的,因為需要管理員使用者對資料夾有全部許可權,更討厭的是,Home版沒有使用者許可權機制,這是我遇到最多的,也最常見的Home的不足 組裝機我可以讓他換pro,畢竟D版氾濫,製作精良,可是本子使用者我就很迷茫...有穩定正版的不用,幹嘛要冒那個風險...

現在可好了,終於找到了將Pro版功能用在Home身上的方法了...

不過還只是有"策略"部分可以移植...(組策略,安全策略,使用者和組)

本地使用者組要改檔案

分析lusrmgr.msc
發現其本地使用者和組(本地)的clsid是{5D6179C8-17EC-11D1-9AA9-00C04FD8FE93}




然後找到對應的dll檔案:localsec.dll
用反彙編軟體開啟,找到相應程式碼:
一共有兩處:
1.

:728A9A67 E805020100 call 728B9C71
;呼叫GetVersionEx()檢測作業系統版本
:728A9A6C 8BF0 mov esi, eax
:728A9A6E 85F6 test esi, esi
:728A9A70 0F8CFE000000 jl 728A9B74
:728A9A76 F645ED02 test [ebp-13], 02
;檢測是否XP HOME
:728A9A7A 0F84F4000000 je 728A9B74
;判斷跳轉
:728A9A80 33F6 xor esi, esi
:728A9A82 46 inc esi

將:728A9A7A 0F84F4000000-> 0F85F4000000(檔案offset 8e7bh處改為85h)

2.
同樣是一個差不多的檢測
:728ADF33 E839BD0000 call 728B9C71
;呼叫GetVersionEx()檢測作業系統版本
:728ADF38 8BF8 mov edi, eax
:728ADF3A 3BFE cmp edi, esi
:728ADF3C 0F8CC1010000 jl 728AE103
:728ADF42 F645ED02 test [ebp-13], 02
;檢測是否XP HOME
:728ADF46 741D je 728ADF65
:728ADF48 56 push esi
將:728ADF46 741D 改為751D (檔案offset d346h處改為75h)


儲存,然後寫了一個cmd去替換系統檔案
copy localsec.dll c:/windows/system32
copy localsec.dll c:/windows/system32/dllcache

出現系統檔案保護警告,取消之

執行lusrmgr.msc,OK,一切正常
如圖:



組策略:
從xp pro裡複製出以下檔案:
fde.dll
gpedit.dll
gptext.dll

並用regsvr32.exe對其進行註冊(例:regsvr32 fde.dll)
註冊成功後執行gpedit.msc(也需要從pro版裡複製)即可使用,但管理模板很少,只能管理少部分功能
這時將pro版裡c:windowsinf下的如下檔案拷到home版的相同位置:
conf.adm
inetcorp.adm
inetres.adm
inetset.adm
system.adm
然後用gpedit.msc裡的管理模板->右鍵->新增刪除模組,新增這些檔案,關閉,管理功能就會多出很多啦!
這樣就成功啦!如圖:


安全策略:
從xp pro裡複製出wsecedit.dll
然後用regsvr32.exe對其進行註冊
然後就可以正常使用安全策略了(需從pro版複製出secpol.msc)

自動修改補丁包 點選下載 (system分類下MMCC.exe檔案)
(預設系統目錄為C:/Windows,如有不同,請使用WinRAR開啟 自行更改其中的mmc_crack.cmd指令碼)

補充一下Home版的檔案許可權設定方法:

1.使用cacls命令:

命令幫助:
顯示或者修改檔案的訪問控制表(ACL)

CACLS filename [/T] [/E] [/C] [/G user:perm] [/R user [...]] [/P user:perm [...]] [/D user [...]]
   filename      顯示 ACL。
   /T            更改當前目錄及其所有子目錄中
                 指定檔案的 ACL。
   /E            編輯 ACL 而不替換。
   /C            在出現拒絕訪問錯誤時繼續。
   /G user:perm  賦予指定使用者訪問許可權。
                 Perm 可以是: R  讀取
                              W  寫入
                              C  更改(寫入)
                              F  完全控制
   /R user       撤銷指定使用者的訪問許可權(僅在與 /E 一起使用時合法)。
   /P user:perm  替換指定使用者的訪問許可權。
                 Perm 可以是: N  無
                              R  讀取
                              W  寫入
                              C  更改(寫入)
                              F  完全控制
   /D user       拒絕指定使用者的訪問。
在命令中可以使用萬用字元指定多個檔案。
也可以在命令中指定多個使用者。

縮寫:
   CI - 容器繼承。
        ACE 會由目錄繼承。
   OI - 物件繼承。
        ACE 會由檔案繼承。
   IO - 只繼承。
        ACE 不適用於當前檔案/目錄。

例如:

設定使用者訪問許可權:要賦予本機使用者FireYDC對E:/123目錄及其所有子目錄中的檔案有完全控制權限。在命令提示符對話方塊中輸入“Cacls E:/123 /t /e /c /g FireYDC:f ”命令即可。

替換使用者訪問許可權:將本機使用者FireYDC的完全控制權限替換為只讀許可權。在命令提示符對話方塊中輸入“ Cacls E:/123 /t /e /c /p FireYDC:r ”命令即可。

撤銷使用者訪問許可權:要想撤銷本機使用者FireYDC對E:/123目錄的完全控制權限也很容易,在命令提示符中執行“Cacls E:/123 /t /e /c /r FireYDC”即可。

拒絕使用者訪問:要想拒絕使用者FireYDC訪問E:/123目錄及其所有子目錄中的檔案,執行“Cacls E:/123 /t /e /c /d FireYDC”即可。

2.將xp home切換到安全模式下面,只要你的硬碟分割槽是NTFS檔案系統,你同樣可以看到安全選項卡,設定同XP PRO

來源:http://www.fireydc.com/blog/article.asp?id=46