人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動(dòng)態(tài)

黑客技巧:利用Log備份獲取Webshell

發(fā)布日期:2021-12-17 10:38 | 文章來源:源碼之家
dbowner通過注射得到一個(gè)shell應(yīng)該不是什么難事情了,比較麻煩的是就算利用增量備份,仍然有很多不確定的因素,如果之前別人有過什么錯(cuò)誤的寫入信息,可能備份出來得到的還是一些不能用的500錯(cuò)誤,如何能夠提高成功率及重用性呢?如果單從調(diào)整增量備份的方式來看,盡管能夠達(dá)到一些效果,但是方法比較復(fù)雜而且效果不明顯。加上關(guān)于重用性的考慮,例如多次備份的成功率,backup database的方法并不太適用。這里將要講述的是另外一個(gè)備份的方法,導(dǎo)出日志文件到web目錄來獲得shell。

  飯要一口一口的吃,技術(shù)問題也要一個(gè)一個(gè)的解決,得到webshell首先要知道物理路徑,然后才能說其他的。關(guān)于物理路徑的暴露有很多方法,注入也可以得到,這點(diǎn)nbsi2已經(jīng)做到了,就不再多說。值得注意的是,如果數(shù)據(jù)庫和web分離,這樣肯定得不到webshell,備份出來的東西可以覆蓋任何文件,一些關(guān)于開始菜單的想法還是有效的,只要注意擴(kuò)展名就好。扯遠(yuǎn)了,反正如果數(shù)據(jù)庫和web在一塊的,你就有機(jī)會(huì),反之還是想其他的辦法吧。

  然后你要得到當(dāng)前的權(quán)限和數(shù)據(jù)庫名。如果是sysadmin當(dāng)然沒有必要做很復(fù)雜的事情,dbowner足矣,public則不行。當(dāng)前打開的庫名用一個(gè)db_name()就可以得到,同樣很簡單。

  默認(rèn)的情況是,一般選擇的數(shù)據(jù)庫故障還原類型都是簡單,這時(shí)候不能夠?qū)θ罩疚募M(jìn)行備份。然而我們都是dbowner了,還有什么不能做的呢,只要修改一下屬性就可以。由于不能去企業(yè)管理器中修改,只有用一段SQL語句,很簡單的,這樣就可以:

  alter database XXXX set RECOVERY FULL

  其中XXXX是你得到的數(shù)據(jù)庫的名字,執(zhí)行過后就可以備份日志了。這種修改是破壞性的,因?yàn)槟悴恢酪郧暗墓收线€原模式是什么,細(xì)心的管理員看到異樣,可能就要開始起疑心。如果之前你能得到數(shù)據(jù)庫的狀態(tài),最好還是在備份完以后把這個(gè)數(shù)據(jù)庫的屬性改回來。

  剩下的事情就是怎樣讓數(shù)據(jù)庫用最原始的方式記錄下你的數(shù)據(jù)了。這一點(diǎn)和backup database中設(shè)定表名為image的問題相對應(yīng),如果你只是建立一個(gè)之類的表,日志里面的記錄還是以松散的格式記錄的,也就是< % % >,沒有任何效果。通過實(shí)際的測試,發(fā)現(xiàn)還是可以通過與backup database類似的方式記錄進(jìn)去,如下:

  create table cmd (a image)

  insert into cmd (a) values (’’)

  backup log XXXX to disk = ’c:\xxx\2.asp’

  這樣你已經(jīng)得到一個(gè)webshell了。

  到這里就完了么?沒有,呵呵,我們繼續(xù)。

   到這里有兩個(gè)分支方向,第一個(gè),讓注入的時(shí)候不出現(xiàn)單引號,太簡單了,我都懶得寫;第二個(gè),減小這個(gè)webshell的長度以及提高成功率。下面的方法就是討論第二個(gè)分支問題的,同樣適用于backup database的減小。

  首先是初始化這個(gè)日志。

  backup log XXXX to disk = ’c:\caonima’ with init

  這樣有點(diǎn)類似于增量備份的第一步,不過有點(diǎn)不同的是,你做了這個(gè)以后,你備份出來的可用的shell是固定的。這一點(diǎn)比較重要,因?yàn)橛辛诉@一步,不管管理員在數(shù)據(jù)庫里面做了什么擾亂你back database的手腳,或者你之前有多少混蛋(你肯定會(huì)這么想的)弄了些你不喜歡的東西,都沒有關(guān)系,甚至你做過以后,別人在后面再按照你的方法來一次,還是會(huì)成功,這對于偶爾出現(xiàn)的反復(fù),比如對方機(jī)器重裝但是數(shù)據(jù)庫和代碼沒變,有不小的幫助。

  然后是調(diào)整一下backup中各個(gè)語句的順序。通過第一點(diǎn),大概的步驟已經(jīng)確定下來了,那就是:

  alter database XXXX set RECOVERY FULL

  backup log XXXX to disk = ’c:\Sammy’ with init

  create table cmd (a image)

  insert into cmd (a) values (’’)

  backup log XXXX to disk = ’c:\xxx\2.asp’

  這樣不好,感覺上多了一條沒用的東西。

  create table cmd (a image)

  確實(shí)有點(diǎn)討厭,不過這句是必要的,只好調(diào)整一下位置,弄到其他地方去。

調(diào)換一下順序似乎還可以小一點(diǎn),對于backup database中的增量情況同樣是可以的,backup database甚至可以僅僅在update后馬上備份,不過由于涉及到了數(shù)據(jù)的存儲(chǔ)格式,情況很復(fù)雜,這里不討論。調(diào)整后的是:

  alter database XXXX set RECOVERY FULL

  create table cmd (a image)

  backup log XXXX to disk = ’c:\Sammy’ with init

  insert into cmd (a) values (’’)

  backup log XXXX to disk = ’c:\xxx\2.asp’

  成功的話,備份出來的shell(上面的2.asp)有78.5k,文件長度固定的是80,384字節(jié)。很挑剔的朋友也可以接受了吧,當(dāng)然用這個(gè)來生成一個(gè)干凈的木馬也可以——這本來就是頂端cs木馬的s端,很通用的。


版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開通

自選配置、實(shí)時(shí)開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部