多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 數據庫 > Sqlserver > 實例代碼:可以有效防止sql注入

實例代碼:可以有效防止sql注入

來源:程序員人生   發布時間:2014-05-08 13:35:17 閱讀次數:4278次

  網教程:我們先來看一段代碼:

  /// <summary>
/// 移除字符串中的可能引起危險Sql字符
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
public static string RemoveSqlUnsafeString(string str)
{
string p = @"[-|;|,|/|(|)|[|]|}|{|%|@|*|!|']";
return Regex.Replace(str, p, "");
}
/// <summary>
/// 檢測是否有Sql危險字符
/// </summary>
/// <param name="str">要判斷字符串</param>
/// <returns>判斷結果</returns>
public static bool IsSafeSqlString(string str)
{

return !Regex.IsMatch(str, @"[-|;|,|/|(|)|[|]|}|{|%|@|*|!|']");
}

/// <summary>
/// 替換sql語句中的有問題符號
/// </summary>
public static string ChkSQL(string str)
{
string str2;

if (str == null)
{
str2 = "";
}
else
{
str = str.Replace("'", "''");
str2 = str;
}
return str2;
}
#region 過濾攻擊性字符
/// <summary>
/// 過濾攻擊性字符
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
public static string ReplaceBadChar(string str)
{
if (!string.IsNullOrEmpty(str))
{
str = Regex.Replace(str, @"(?s)/*.*?*/", "", RegexOptions.IgnoreCase); //刪除注釋:/* */
str = Regex.Replace(str, @"(?s)<script.*?>.*?</script>", "", RegexOptions.IgnoreCase); //刪除腳本
str = Regex.Replace(str, @"(?s)<style.*?>.*?</style>", "", RegexOptions.IgnoreCase);
//需要把用戶自己添加的樣式都刪除
//<link href="/scripts/PopBox/stylesheets/Styles.css" rel="stylesheet" type="text/css" />
str = Regex.Replace(str, @"(?s)<link[^>]+href+([^>]+?)>", "", RegexOptions.IgnoreCase);

//替換一些比較特殊的字符
// str = str.Replace("&nbsp;", " "); //將&nbsp;替換為一個空格
str = str.Replace("&mdash;", "-");//將&mdash;替換為-
str = str.Replace("&rdquo;", "”");
str = str.Replace("&ldquo;", "“");
str = str.Replace("&le;", "<=");
str = str.Replace("&ne;", "!=");
str = str.Replace("&ge;", ">=");

//<img src="" onerror="" /> <([^>|^<]+?on)([w]+[^=]+?)=([^>]+?)>
str = Regex.Replace(str, @"<([^>|^<]+?on)([a-z|A-Z]+[^=]+?)=([^>]+?)>",
"<$1_$2=$3>", RegexOptions.IgnoreCase);//過濾可能的XSS攻擊,腳本事件

//javascript:
str = str.Replace("javascript:", "javascript:");//過濾<img src="javascript:alert(/xss/)" />

str = str.Replace("vbscrript:", "vbscript:");//過濾vbscript

str = str.Replace("script", "script");//過濾所有可能的腳本 liehuo.net

//style="XSS:expression(alert(/xss/))"
str = str.Replace("expression", "Expression");//過濾所有可能的腳本
//str=Regex.Replace(str,@"(style(.*))=(.*)(expression)","$1=$3",
RegexOptions.IgnoreCase); //過濾樣式中,可能帶有的腳本事件
//<iframe src=


str = Regex.Replace(str, "(?s)<iframe.*?>.*?</iframe>", "",
RegexOptions.IgnoreCase);//過濾Ifrmae;網

//防止轉碼XSS攻擊:<img src="&#106&#97&#118&#97&#115&#99&#114&#105&#112&#116&#58&#97
&#108&#101&#114&#116&#40&#39&#88&#83&#83&#39&#41&#59">
str = str.Replace("#", "#");//過濾#
// str = str.Replace("&", "&");//過濾&
str = str.Replace("%", "%");//過濾%

//<img STYLE="background-image: 75726c286a61766173
63726970743a616c6572742827585353272929">
str = str.Replace("", "/");//過濾 防止連接16進制的攻擊

if (str.IndexOf("<script") >= 0)
str = str.Replace("<", "&lt;--script");

if (str.IndexOf("'") > 0)
str = str.Replace("'", "’");

//str = str.Replace("<", "&lt;");
//str = str.Replace(">", "&gt;");

}
return str;
}
#endregion

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: www.欧美com| 免费大片在线观看www | 国产真人毛片一级视频 | 欧美成人一区二区三区不卡视频 | 国内久久久久久久久久 | tom影院亚洲国产日本一区 | 欧美毛片网站 | 久久综合九色综合亚洲 | 国产呦精品一区二区三区网站 | 欧美艳星性videose精品 | 日本护士xxxxx高清免费 | 清纯唯美亚洲综合五月天 | 国产三级精品三级在线专区1 | 亚洲一区二区欧美日韩 | 免费视频网站在线看视频 | 亚洲视频在线观看网站 | 国产成人免费视频精品一区二区 | 国产精品无码专区在线观看 | 国产日产欧美精品一区二区三区 | 亚洲福利一区福利三区 | 九九精| www在线播放 | 欧美激情观看一区二区久久 | 日本免费新一区二区三区 | 亚洲手机在线 | 国产一二三区精品 | 亚洲三级小视频 | 精品国产亚洲一区二区在线3d | 国产片免费看 | 波多野结衣与老人公gvg在线 | 国产成人综合久久精品亚洲 | 免费看www网站入口 免费看w片的网站在线看 | 精品国产日韩亚洲一区91 | 亚洲色图视频在线 | 成人a毛片一级 | 亚洲第一网站 | 亚洲女视频 | 亚洲三级网址 | 久久久www成人免费精品 | 亚洲第一网址 | 日韩欧美亚洲一区二区综合 |