版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
SQL注入的原理及防范梁興建一、SQL注入簡介程序員在編寫代碼的時候,沒有對用戶輸入數(shù)據(jù)的合法性進行判斷,使應(yīng)用程序存在安全隱患。用戶可以提交一段數(shù)據(jù)庫查詢代碼,根據(jù)程序返回的結(jié)果,獲得某些他想得知的數(shù)據(jù),這就是所謂的SQLInjection,即SQL注入。一、SQL注入簡介
SQL注入是從正常的WWW端口訪問,而且表面看起來跟一般的Web頁面訪問沒什么區(qū)別,所以目前市面的防火墻都不會對SQL注入發(fā)出警報,如果管理員沒查看IIS日志的習(xí)慣,可能被入侵很長時間都不會發(fā)覺。這種攻擊的要訣在于將SQL的查詢/行為命令通過‘嵌入’的方式放入合法的HTTP提交請求中從而達(dá)到攻擊者的某種意圖?,F(xiàn)在很多的動態(tài)網(wǎng)頁都會從該網(wǎng)頁使用者的請求中得到某些參數(shù),然后動態(tài)的構(gòu)成SQL請求發(fā)給數(shù)據(jù)庫的。一、SQL注入簡介
但是,SQL注入的手法相當(dāng)靈活,在注入的時候會碰到很多意外的情況。必須根據(jù)具體情況進行分析,構(gòu)造巧妙的SQL語句,從而成功獲取想要的數(shù)據(jù)。二、登錄驗證不足
找到登陸頁面,在其登陸ID與密碼輸入處測試這些缺陷是否存在,首先加入某些特殊的字符標(biāo)記,輸入如:‘、and……之類的SQL標(biāo)記。如果沒有進行檢測,而直接運行SQL語句,說明有機會進行注入。二、登錄驗證不足
當(dāng)確認(rèn)有機會進行注入的時候,可以在輸入框中加入or語句,這樣可能會有意外的收獲。Admin’or3>2or‘,這就是我們需要在文本框中輸入的內(nèi)容,這樣能達(dá)到什么效果呢?下面,通過一個網(wǎng)頁來測試:二、登錄驗證不足
先來看login.asp文件
以下內(nèi)容為程序代碼:……
<formaction="loging.asp"method="post"name="login">
用戶名<inputtype=textname=namevalue=""maxlength="20">
密碼<inputtype=passwordname=pwdvalue=""maxlength="20">
<inputtype=submitname=btvalue="確認(rèn)">
<inputtype=resetname=btvalue="重置">
</form>
……二、登錄驗證不足'關(guān)于身份驗證
sql="select*fromuserwherename='"&name&“'andpwd='"&pwd&“'"我們在用戶名位置輸入【admin'or3>2or'】,在密碼區(qū)輸入【11】。看看sql會變成什么:
以下內(nèi)容為程序代碼:sql=select*fromuserwherename='admin'or3>2or''andpwd='11'我們知道,or是一個邏輯運算符,在判斷多個條件的時候,只要有一個成立,則等式就返回真,后面的and就不再進行判斷了,也就是說我們繞過了密碼驗證,只要我們知道用戶名就可以登陸該系統(tǒng)。二、登錄驗證不足防范方法(2)過濾loging.asp文件本身驗證的邏輯就是錯誤的,應(yīng)該修改為:……
sql="select*fromuserwherename='"&name&"'"
rs.opensql,conn_data,1,1
'身份驗證過程
ifnotrs.eofthen
ifpwd=rs("pwd")then
session("login")="ok"
response.redirect"/default.asp"
else
response.redirect"login.asp"
……三、從網(wǎng)頁傳遞參數(shù)中注入
這是SQL注入中最常見的方法,并且根據(jù)該注入原理有很多SQL注入工具產(chǎn)生。同樣,首先,應(yīng)測試這些缺陷是否存在,首先加入某些特殊的字符標(biāo)記,輸入如:‘、and……之類的SQL標(biāo)記。如果沒有進行檢測,而直接運行SQL語句,說明有機會進行注入。三、從網(wǎng)頁傳遞參數(shù)中注入
從參數(shù)中注入,準(zhǔn)確的測試方法應(yīng)該是:①/showdetail.asp?id=49
②/showdetail.asp?id=49and1=1
③/showdetail.asp?id=49and1=2這就是經(jīng)典的1=1、1=2測試法了,怎么判斷呢?看看上面三個網(wǎng)址返回的結(jié)果就知道了:可以注入的表現(xiàn):①正常顯示(這是必然的,不然程序就有錯)
②正常顯示,內(nèi)容基本與①相同
③提示BOF或EOF(程序沒做任何判斷時)、或提示找不到記錄(判斷了rs.eof時)、或顯示內(nèi)容為空(程序加了onerrorresumenext)不可以注入就比較容易判斷了,①同樣正常顯示,②和③一般都會有程序定義的錯誤提示,或提示類型轉(zhuǎn)換時出錯。三、從網(wǎng)頁傳遞參數(shù)中注入
(1)猜表名:http://www.***.com/show.asp?id=50and
0<>(selectcount(*)fromtablename),這里的tablename就是你猜測的表名。如果頁面顯示正常,則你猜測的表名是正確的。
(2)猜字段名:
http://www.***.com/show.asp?id=50and
0<>(selectcount(fieldname)fromtablename),這里的fieldname是表中某一字段名,如果頁面顯示正常,可以斷定字段名稱正確。
三、從網(wǎng)頁傳遞參數(shù)中注入
(3)在獲得tablename和fieldname以后,就可以更進一步了。
比如是登陸系統(tǒng),tablename是user,fieldname是id,name和pwd,看看能做些什么:
a、http://www.***.com/show.asp?id=50and0<>
(selectcount(*)fromuserwhereid>1000)
粗略判斷用戶數(shù)量
三、從網(wǎng)頁傳遞參數(shù)中注入b、http://www.***.com/show.asp?id=50and1=
(selectcount(*)fromuserwhereid=1andlen(name)=10)
判斷id為1的用戶的用戶名長度是否為10
c、http://www.***.com/show.asp?id=50and1=
(selectcount(*)fromuserwhereid=1andmid(name,n,1)='a')
判斷id為1的用戶的用戶名的第n位是否為a
三、從網(wǎng)頁傳遞參數(shù)中注入另外,如果是SQLServer,我們可以通sysobjects的操作,獲取sa的密碼,一旦得到sa的權(quán)限,就可以執(zhí)行xp_cmdshell了,那么相當(dāng)于可以輕易的取得操作服務(wù)器的權(quán)限。如execmaster..xp_cmdshell“netusernamepasseord/add”execmaster..xp_cmdshell“netlo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 油品儲運調(diào)合工崗前工作質(zhì)量考核試卷含答案
- 物料輸送及煙氣凈化工安全規(guī)程測試考核試卷含答案
- 2025年東遼縣事業(yè)單位聯(lián)考招聘考試歷年真題附答案
- 2024年湖南九嶷職業(yè)技術(shù)學(xué)院馬克思主義基本原理概論期末考試題附答案
- 2024年溫州市工人業(yè)余大學(xué)馬克思主義基本原理概論期末考試題附答案
- 2024年運城市特崗教師招聘考試真題匯編附答案
- 2024年萊蕪市直機關(guān)遴選公務(wù)員考試真題匯編附答案
- 2025年美容美甲行業(yè)操作規(guī)范手冊
- 2024年重慶化工職業(yè)學(xué)院馬克思主義基本原理概論期末考試題附答案
- 2025四川省公務(wù)員考試常識判斷專項練習(xí)題及答案1套
- 2025年及未來5年中國鈉基膨潤土市場深度評估及行業(yè)投資前景咨詢報告
- 康復(fù)醫(yī)學(xué)科進修匯報
- 患者身份識別管理標(biāo)準(zhǔn)WST840-2025學(xué)習(xí)解讀課件
- 東航客服面試題目及答案
- 醫(yī)院醫(yī)療質(zhì)量分析會
- 酒吧廚房小吃承包協(xié)議書
- 項目系統(tǒng)測試報告模板
- 網(wǎng)約車分公司管理制度
- 社區(qū)文藝團隊管理制度
- T/CSTE 0431-2023綠色(低碳)產(chǎn)品評價要求隔聲型節(jié)能鋁合金門窗
- 山東省2024年中考物理試題6套附解析答案
評論
0/150
提交評論