作者:瘋吇ぺx[BHST]
BLOG:http://hi.baidu.com/hacker_fengzi
一.寫在最前
其實(shí)此次成功入侵這臺印度data服務(wù)器靠的并不是SA,而是利用也不知道是誰留下的shift后門,
挑戰(zhàn)印度變態(tài)SA網(wǎng)站安全
?赡艽蠹铱匆姸紩,那你寫出來干什么幾秒鐘搞定的事。確實(shí)是這樣如果知道有這么個(gè)后門任誰幾秒鐘的時(shí)間都搞定了。之所以寫出來是因?yàn)樾〔宋腋杏X這個(gè)SA很BT,如果沒有那個(gè)shift后門小菜我無論如何也進(jìn)不去。所以這也算是個(gè)提問的文章,如果是大家遇到這個(gè)情況該怎么辦。如果誰有好的辦法和思路一定要告訴我哦,也讓小菜我多學(xué)學(xué)東西。二.起因
話說某天偶正在游戲中砍怪,只見QQ狂閃,打開一看,我暈!一大堆sa。這年頭也不知道這小子在哪掃來這么多。朋友跟我說都N變態(tài)。心想不是SA嗎!再變態(tài)能變態(tài)到哪去,那么多存儲過程可以利用,還拿下不你了。于是游戲一關(guān)馬上進(jìn)入戰(zhàn)場。
三.山窮水復(fù)疑無路
既然是SA什么也不說了直接 SQL TOOLS 連接上,隨便執(zhí)行個(gè)命令。如圖1.
這是什么原因?找不到sp_OACreate,如果是找不到也應(yīng)該是找不到xp_cmdshell!怎么還找上sp_OACreate了。于是SQL查詢分析器連接上,先來查看一下相應(yīng)的存儲過程是否存在。
執(zhí)行 Select count(*) from master.dbo.sysobjects where xtype='X' and name='xp_cmdshell' 如圖2.
執(zhí)行成功看來并沒有刪除。繼續(xù)執(zhí)行
exec master..xp_cmdshell 'net user fengzi 123456 /add' 如圖3.
還是一樣的結(jié)果,難道問題出在xplog70.dll上?那來恢復(fù)一下看看
執(zhí)行EXEC master.dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll'
返回如圖4.
恢復(fù)不了問題出在sp_addextendedproc上,那現(xiàn)在想上傳恢復(fù)也不行了。甚至想自己添加個(gè)xplake2.dll直接執(zhí)行命令的思路也斷了。既然xp_cmdshell沒辦法利用了,我們再試試其他的存儲過程。大家都知道SQL SERVER 提供了一些函數(shù)訪問OLE對象的,有sp_OACREATE和sp_OAMETHOD,那我們現(xiàn)在就可以利用他們來調(diào)用OLE控件。使用sp_OACREATE來調(diào)用wscript.shell和shell.Application或者scripting.filesystemobject賦給變量@shell,然后再使用sp_OAMETHOD調(diào)用@shelll的屬性run來執(zhí)行命令。前提條件就是sp_OACREATE調(diào)用的對象必須存在。
我們在SQL分析器里執(zhí)行
DECLARE @shell INT EXEC SP_OAcreate 'wscript.shell',@shell OUTPUT EXEC SP_OAMETHOD @shell,'run',null,'C:\WINDOWS\system32\cmd.exe /c net user fengzi 123456 /add'
返回如圖5.
看來SP_OAcreate和SP_OAMETHOD都被刪除了,意料之中。剛才根據(jù)圖一的返回結(jié)果就猜測無法成功。既然不行那我們來試試JOB,也就是利用SQL代理。前提是SQLSERVERAGENT必須開啟,這里我們可以利用xp_servicecontrol來開啟SQLSERVERAGENT服務(wù)。
執(zhí)行 exec master.dbo.xp_servicecontrol 'start','SQLSERVERAGENT'
如圖6.
成功開啟SQLSERVERAGENT服務(wù),下面分別執(zhí)行如下語句
use msdb exec sp_delete_job unll,'fengzi' //進(jìn)入MSDB數(shù)據(jù)庫,刪除名為fengzi的作業(yè),防止出錯(cuò)
exec sp_add_job 'fengzi' //建立一個(gè)名為fengzi的作業(yè)
exec sp_add_jobstep Null,'fengzi',Null,'1','CMDEXEC','cmd /c net user fengzi !@#$1234qwer /add & net localgroup administrators fengzi /add' //添加一個(gè)操作到名為fengzi的作業(yè)中
exec sp_add_jobserver Null,'fengzi',@@servername exec sp_start_job 'fengzi' //啟動這個(gè)名為fengzi的作業(yè),
電腦資料
《挑戰(zhàn)印度變態(tài)SA網(wǎng)站安全》(http://www.ishadingyu.com)。 如圖7.
OK 我們成功啟動了fengzi這個(gè)作業(yè)并且加入了管理員組。剩下的就是登陸3389?墒怯魫灥氖虑槌鰜砹,用戶沒有添加成功。如圖8
用戶沒有加進(jìn)去。按照常理應(yīng)該是沒有問題的啊!那問題無非就是出現(xiàn)在CMD和net方面。這里先放一放,我們來看看SandBoxMode怎么樣,也順便驗(yàn)證一下我們的疑問。默認(rèn)情況下JET數(shù)據(jù)引擎是不支持
select shell ("net user fengzi !@#$1234qwer /add") 這樣的語句的。但是開啟了JET引擎的沙盒模式就可以執(zhí)行命令了。前提是xp_regwrite必須存在。說完了原理我們來執(zhí)行
EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SoftWare\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',0
如圖9.
如圖13
返回出錯(cuò),沒傳上去?郁悶!明知道是CMD或net做了限制也沒辦法,傳不上去東西。(command.com和net1也都試過,沒成功)轉(zhuǎn)了半天在查詢分析器上發(fā)現(xiàn)tsilweb的庫于是
執(zhí)行select * from sysobjects where xtype = 'U'
如圖14.
返回了tsilweb庫中的所有表。site_users 應(yīng)該存儲著用戶的信息呵呵 看來希望就在這里
繼續(xù)提交 select * from site_users返回如圖15.
我暈 連個(gè)字段都沒有。其他的幾個(gè)表也都查看了一番,都沒找到有用的東東。再來看看admin庫里有什么返回如圖16.
發(fā)現(xiàn)一個(gè)users的表進(jìn)去后發(fā)現(xiàn)好幾個(gè)用戶和密碼,如圖17.
嘗試著去3389和主站登陸,(直接訪問這個(gè)IP得到登陸界面,這是干什么用的誰知道告訴我下)如圖18.
都登陸不了。于是又試這用 users_new 表的用戶和密碼登陸也都沒有成功。服務(wù)器上沒有其他站點(diǎn),主站又沒辦法入手,到這里小菜我是黔驢技窮了。如果哪位牛牛還有什么思路請告知小弟。
四.柳暗花明又一村
現(xiàn)在只能是同網(wǎng)段進(jìn)行嗅探了,話都說到這了馬上抄起hscan開掃,看看同網(wǎng)段還有沒有什么弱口令(僥幸心里)。突然一個(gè)問題出現(xiàn)在我腦海里,服務(wù)器設(shè)置的這么變態(tài),那管理員為什么還要設(shè)置sa空口令呢?難道是想讓全世界的 來挑戰(zhàn)他的變態(tài)服務(wù)器嗎?我想除了如來佛主誰都不會這么做。那答案就只有一個(gè),是被前人日進(jìn)去了后把漏洞封掉了,(日進(jìn)去的小子倒是精明,直接在cmd和net上做手腳,贊一個(gè))那他會不會留下后門呢?比如。。。。。。。
嘿嘿 有思路就要試試看 馬上連接3389 5下shift 如圖19。
呵呵 這下爽歪歪了.馬上運(yùn)行CMD 如圖20
看來是CMD動了手腳 無法創(chuàng)建CMD進(jìn)程,那再來看看command.com 倒是可以執(zhí)行但是什么命令都執(zhí)行不了。如圖21.
不讓在命令行下加用戶我手工總可以吧!運(yùn)行l(wèi)usrmgr.msc 本地用戶組管理,如圖22.
日又被禁用了,看來管理(或前者)真是煞費(fèi)苦心!那就直接explorer.exe 呵呵 這下日進(jìn)去了
如圖23。
本來想做進(jìn)一步滲透的,但是3389很卡,而且每次不到半分鐘就馬上斷開,想一想還是算了,目的已經(jīng)達(dá)到了。
五.總結(jié)
雖說最后成功的得到的系統(tǒng)的權(quán)限,但是我感覺并不完美。大家試想一下著,如果沒有那個(gè)shitf還有辦法得到系統(tǒng)權(quán)限嗎?或許某位牛牛可以,但是小菜我只能進(jìn)行到這里。還是那句話,之所以寫出來,是希望如果哪位牛牛有幸能看到這篇文章有思路突破的時(shí)候麻煩告知小弟,感激不盡。