ASP.NET防止SQL注入的方法示例
本文實(shí)例講述了ASP.NET防止SQL注入的方法。分享給大家供大家參考,具體如下:
最近接手別人一個(gè)項(xiàng)目,發(fā)現(xiàn)存在SQL注入漏洞,因?yàn)椴幌敫奶啻a,所以那種參數(shù)法防注入呢我就用不著了。只能用傳統(tǒng)的笨一點(diǎn)的辦法了。
1、新建Global.asax文件。
2、加入如下代碼:
void Application_BeginRequest(object sender, EventArgs e) { bool result = false; if (Request.RequestType.ToUpper() == "POST") { //post方式的我就不寫了。 } else { result = ValidUrlGetData(); } if (result) { Response.Write("您提交的數(shù)據(jù)有惡意字符!"); Response.End(); } } /// <summary> /// 獲取QueryString中的數(shù)據(jù) /// </summary> public static bool ValidUrlGetData() { bool result = false; for (int i = 0; i < HttpContext.Current.Request.QueryString.Count; i++) { result = Validate(HttpContext.Current.Request.QueryString[i].ToString()); if (result) { break; }//如果檢測(cè)存在漏洞 } return result; } public static string []strs = new string[] {"select","drop","exists","exec","insert","delete","update","and","or","user" };//此處我隨便加了幾個(gè),大家可以多加點(diǎn)哈。 public static bool Validate(string str) { for (int i = 0; i < strs.Length; i++) { if (str.IndexOf(strs[i]) != -1) { return true; break; } } return false; }
更多關(guān)于asp.net相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《asp.net優(yōu)化技巧總結(jié)》、《asp.net字符串操作技巧匯總》、《asp.net操作XML技巧總結(jié)》、《asp.net文件操作技巧匯總》、《asp.net ajax技巧總結(jié)專題》及《asp.net緩存操作技巧總結(jié)》。
希望本文所述對(duì)大家asp.net程序設(shè)計(jì)有所幫助。
相關(guān)文章
.NET Framework中定時(shí)器timer的單線程與多線程使用講解
這篇文章主要介紹了.NET Framework中定時(shí)器timer的單線程與多線程使用講解,單線程定時(shí)器在性能方面不如多線程,但是可以做到線程安全,需要的朋友可以參考下2016-04-04asp.net 仿微信端菜單設(shè)置實(shí)例代碼詳解
本文通過實(shí)例代碼給大家介紹了asp.net 仿微信端菜單設(shè)置方法,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2018-11-11ASP.NET實(shí)現(xiàn)圖書管理系統(tǒng)的步驟詳解
這篇文章主要介紹了ASP.NET圖書管理系統(tǒng)簡(jiǎn)單實(shí)現(xiàn)步驟,本文通過實(shí)例截圖展示的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-12-12ASP.NET MVC @Helper輔助方法和@functons自定義函數(shù)的使用方法
本文主要介紹ASP.NET MVC中使用@Helper和@functons自定義一些代碼片段,方便視圖調(diào)用,從而達(dá)到減少重復(fù)代碼,快速開發(fā)的目的,希望對(duì)大家有所幫助。2016-04-04asp.net下出現(xiàn)其中的組件“訪問被拒絕”的解決方法
asp.net下出現(xiàn)其中的組件“訪問被拒絕”的解決方法...2007-04-04動(dòng)態(tài)加載用戶控件至DataList并為用戶控件賦值實(shí)例演示
本文借用使用通用的新聞例子演示動(dòng)態(tài)加載用戶控件至DataList并為用戶控件賦值,感興趣的朋友可以了解下2013-01-01AspNet Core上實(shí)現(xiàn)web定時(shí)任務(wù)實(shí)例
在本篇文章里小編給大家分享了關(guān)于AspNet Core上實(shí)現(xiàn)web定時(shí)任務(wù)的實(shí)例內(nèi)容,有興趣的朋友們學(xué)習(xí)參考下。2019-02-02.Net Core 使用NLog記錄日志到文件和數(shù)據(jù)庫(kù)的操作方法
這篇文章主要介紹了.Net Core 使用NLog記錄日志到文件和數(shù)據(jù)庫(kù)的操作方法,本文分步驟通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-07-07