《ASP NET開發(fā)與應(yīng)用實(shí)踐》課件第8章第4第5節(jié)_第1頁(yè)
《ASP NET開發(fā)與應(yīng)用實(shí)踐》課件第8章第4第5節(jié)_第2頁(yè)
《ASP NET開發(fā)與應(yīng)用實(shí)踐》課件第8章第4第5節(jié)_第3頁(yè)
《ASP NET開發(fā)與應(yīng)用實(shí)踐》課件第8章第4第5節(jié)_第4頁(yè)
《ASP NET開發(fā)與應(yīng)用實(shí)踐》課件第8章第4第5節(jié)_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第8章網(wǎng)站頁(yè)面結(jié)構(gòu)設(shè)計(jì)8.4頁(yè)面安全訪問(wèn)技術(shù)8.5SQL注入

8.4頁(yè)面安全訪問(wèn)技術(shù)8.4頁(yè)面安全訪問(wèn)技術(shù)如圖所示,攻擊者已知要攻擊的頁(yè)面地址,繞過(guò)登錄頁(yè)面,直接訪問(wèn)沒(méi)有授權(quán)的頁(yè)面,采用角色管理技術(shù),是無(wú)法阻止的。8.4頁(yè)面安全訪問(wèn)技術(shù)系統(tǒng)登錄時(shí),將合法用戶的用戶名和密碼存入在user頁(yè)面加載時(shí),驗(yàn)證Session中的用戶名和密碼的程序如下:protectedvoidPage_Load(objectsender,EventArgse){if(Session["name"]==null||Session["number"]==null){Response.Redirect("Default.aspx");}}頁(yè)面加載,觸發(fā)頁(yè)面加載事件,如果Session為空,說(shuō)明頁(yè)面沒(méi)有經(jīng)過(guò)登錄頁(yè)面,程序自動(dòng)轉(zhuǎn)向首頁(yè)Defatlt.aspx讓用戶登錄。這是一段模擬程序,實(shí)際使用時(shí),應(yīng)該打開數(shù)據(jù)庫(kù)進(jìn)行用戶的驗(yàn)證。8.5SQL注入

SQL注入攻擊SQL注入式攻擊,就是攻擊者把SQL命令插入到Web表單的輸入域或頁(yè)面請(qǐng)求的查詢字符串,欺騙服務(wù)器執(zhí)行惡意的SQL命令。在某些表單中,用戶輸入的內(nèi)容直接用來(lái)構(gòu)造(或者影響)動(dòng)態(tài)SQL命令,或作為存儲(chǔ)過(guò)程的輸入?yún)?shù),這類表單特別容易受到SQL注入式攻擊。常見的SQL注入式攻擊過(guò)程類如:⑴某個(gè)ASP.NETWeb應(yīng)用有一個(gè)登錄頁(yè)面,這個(gè)登錄頁(yè)面控制著用戶是否有權(quán)訪問(wèn)應(yīng)用,它要求用戶輸入一個(gè)名稱和密碼。8.5SQL注入

⑶攻擊者在用戶名字和密碼輸入框中輸入"'或'1'='1"之類的內(nèi)容。⑷用戶輸入的內(nèi)容提交給服務(wù)器之后,服務(wù)器運(yùn)行上面的ASP.NET代碼構(gòu)造出查詢用戶的SQL命令,但由于攻擊者輸入的內(nèi)容非常特殊,所以最后得到的SQL命令變成:SELECT*fromUsersWHERElogin=''or'1'='1'ANDpassword=''or'1'='1'。8.5SQL注入

SQL注入攻擊8.5SQL注入

SQL注入攻擊8.5SQL注入

stringconstr=@"DataSource=.\sqlexpress;InitialCatalog=Student;IntegratedSecurity=True";SqlConnectioncon=newSqlConnection(constr);con.Open();SqlCommandcom=newSqlCommand();com.Connection=con;com.CommandType=CommandType.Text;com.CommandText="select*fromTable1wherename='"+TextBox1.Text+"'andno='"+TextBox2.Text+"'";

if(com.ExecuteScalar()==null){Label3.Text="錯(cuò)誤";}else{Label3.Text="正確";SqlDataReaderreader=com.ExecuteReader();GridView1.DataSource=reader;GridView1.DataBind();8.5SQL注入

2.進(jìn)行SQL注入攻擊在密碼框中輸入如下字符串a(chǎn)'or'1'='1屏幕顯示如下:8.5SQL注入

SQL注入攻擊8.5SQL注入

SQL注入攻擊的原理?8.5SQL注入

3.改進(jìn)措施(1)限制長(zhǎng)度(2)關(guān)鍵詞過(guò)濾(3)參數(shù)法

stringconstr=@"DataSource=.\sqlexpress;InitialCatalog=Student;IntegratedSecurity=True";SqlConnectioncon=newSqlConnection(constr);con.Open();SqlCommandcom=newSqlCommand();com.Connection=con;com.CommandType=CommandType.Text;com.CommandText="select*fromTable1wherename=@naandno=@id";

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論