黑客經(jīng)驗(yàn)談 MSSQL SA權(quán)限入侵的感悟_Mssql數(shù)據(jù)庫(kù)教程

      編輯Tag賺U幣
      教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!

      推薦:SQL Server 2008:表值參數(shù)的創(chuàng)建和使用
      表值參數(shù)(Table-valued parameter)是SQL Server 2008的一個(gè)新特性,在以前的版本中,沒有辦法把表變量當(dāng)作一個(gè)參數(shù)傳遞給存儲(chǔ)過程。微軟在SQL Server2008中引入了表值參數(shù)的特性,可以實(shí)現(xiàn)這項(xiàng)

      想必大家都知道MSSQL中SA權(quán)限是什么,可以說是至高無(wú)上。今天我就它的危害再談點(diǎn)兒,我所講的是配合NBSI上傳功能得到WebShell。在講之前先說幾個(gè)條件,否則得到Shell是有難度的。

      1、存在SQL注入,并且數(shù)據(jù)庫(kù)類型是MSSQL。

      2、連接數(shù)據(jù)庫(kù)的權(quán)限必須是SA。

      3、后臺(tái)必須有文件上傳的程序。

      好了,我們找到一個(gè)網(wǎng)址hxxp://www.6x36x.com/fangchan/listpro.asp?id=53,用NBSI一會(huì)就一目了然了。

      很好,數(shù)據(jù)庫(kù)類型是MSSQL,權(quán)限是SA,再看看第三個(gè)條件滿足不滿足。找到頁(yè)面中的文章(新聞),看看里面的圖片的地址是什么。好!一看就明白了hxxp://www.6x36x.com/admin/uploadpic/2xx5042823082994329.gif,你明白了嗎?特別是2xx5042823082994329.gif 這下我們敢肯定后臺(tái)有上傳文件的功能了。下面做什么呢?暈,找出該網(wǎng)站所在的路徑呀。這個(gè)嘛就得全靠NBSI的NB Commander(NB Tree_List)功能了(在這里我推薦大家用NB Commander,為什么呢?看完文章就知道了),不過找出網(wǎng)站所在的真實(shí)路徑需要花一定的時(shí)間,那就看你有沒有耐心了。我敢說只要有耐心,肯定能找出網(wǎng)站所在的真實(shí)路徑。這里我找到了這個(gè)站點(diǎn)所在的路徑D:\9x3x9,接著就是后臺(tái)了,很快就得到Admin/login.asp,接下來就是賬號(hào)和密碼的猜解了。不過我這次猜解出現(xiàn)了問題。說什么也弄不出他的賬號(hào)和密碼,難道都是空的?我不相信,就試著登錄了一下,結(jié)果失敗了。于是從這開始,NB Commander功能就顯得非常重要了(因?yàn)榇蠹叶贾溃心夸汵B Command和NB Tree_List都能實(shí)現(xiàn)),我找到文件conn.asp,用type D:\9x3x9\admin\logining.asp命令看了看源代碼。

      夠狠吧!讀了讀代碼沒有問題呀!就是用的admin表字段也一樣,不多說了,誰(shuí)能知道其中的原因?請(qǐng)告訴俺一下,也讓俺這只菜鳥走出困惑。進(jìn)不了后臺(tái)怎么上傳圖片呢?這里我用NBSI的上傳功能,我試過了,沒有成功。因?yàn)槲覀魃先ズ螅吹酱a每行都重復(fù)三次,也不知是為什么,就是用臭要飯的Getwebshell也是同樣的結(jié)果。

      我想有了,看看它的Session是怎么驗(yàn)證的,又是一個(gè)type D:\9x3x9\admin\quanxian.asp。通過分析很快就明白了,它給Session(“wsl”)賦了一個(gè)值為1,哈哈!我寫了一個(gè)非常簡(jiǎn)單的程序。用NBSI的上傳功能傳了上去,我想不管重復(fù)幾次都是正確的(這里你又會(huì)想到什么呢?如果密碼是MD5的,我們沒有必要去爆破了,弄個(gè)session就ok了),傳上去保存為1.asp,然后我訪問hxxp://www.6x36x.com/admin/1.asp,接著訪問hxxp://www.6x36x.com/admin/admin_index.asp,就這樣進(jìn)入了后臺(tái),本地測(cè)試。

      小提示:Session變量和cookies是同一類型的。如果某用戶將瀏覽器設(shè)置為不兼容任何cookie,那么該用戶就無(wú)法使用這個(gè)Session變量! 當(dāng)一個(gè)用戶訪問某頁(yè)面時(shí),每個(gè)Session變量的運(yùn)行環(huán)境便自動(dòng)生成,這些Session變量可在用戶離開該頁(yè)面后仍保留20分鐘!(事實(shí)上,這些變量一直可保留至“timeout”。“timeout”的時(shí)間長(zhǎng)短由Web服務(wù)器管理員設(shè)定。一些站點(diǎn)上的變量?jī)H維持了3分鐘,一些則為10分鐘,還有一些則保留至默認(rèn)值20分鐘。)所以,如果在Session中置入了較大的對(duì)象(如ADO recordsets,connections, 等等),那就有麻煩了!隨著站點(diǎn)訪問量的增大,服務(wù)器將會(huì)因此而無(wú)法正常運(yùn)行!

      因?yàn)閯?chuàng)建Session變量有很大的隨意性,可隨時(shí)調(diào)用,不需要開發(fā)者做精確地處理。所以,過度使用session變量將會(huì)導(dǎo)致代碼不可讀而且不好維護(hù)。

      這樣我找到上傳圖片的地方,把a(bǔ)sp木馬改成.gif傳了上去,記住了上傳后的名字,這里是uploadpic\2xx56171430123.gif,那么你會(huì)想到什么呢?哈哈我想起來了,把圖片copy成.asp的,或者重命名成.asp的。

      好了,到這里我們的馬就算是上去了,至于以后的事情就不提了。

      總結(jié):SA的確給我們帶來了很大危害,所以程序員在連接MSSQL數(shù)據(jù)庫(kù)的時(shí)候千萬(wàn)不能用它,否則服務(wù)器成為肉雞的可能性非常非常的大。還有,MSSQL 的擴(kuò)展存儲(chǔ)功能,用不到它就刪除,留著就成了黑客的利器。

      分享:解析SQL Server數(shù)據(jù)應(yīng)用在不同的數(shù)據(jù)庫(kù)中
      在軟件開發(fā)的初始階段,開發(fā)商們總是想把整個(gè)系統(tǒng)的最小的細(xì)節(jié)設(shè)計(jì)好了,然后再去單線程的編寫代碼。這樣軟件開發(fā)完成需要很長(zhǎng)時(shí)間,但開發(fā)商們一直都在這么做。 所以開發(fā)者不得不去縮小他們

      來源:模板無(wú)憂//所屬分類:Mssql數(shù)據(jù)庫(kù)教程/更新時(shí)間:2008-08-22
      相關(guān)Mssql數(shù)據(jù)庫(kù)教程