asp特殊字元過濾
A. 怎樣解決*.asp文件的過濾特殊字元
替換, replace(content,"x","*") 'x被替換為*,content為內容
B. ASP特殊字元過濾
Function ChkInvaildWord(Words)
Const InvaildWords=\"select|update|delete|insert|@|--|,\" \'\'需要過濾得字元以「|」隔開,最後結束的字元必須是|
ChkInvaildWord=True
InvaildWord=Split(InvaildWords,\"|\")
inWords=LCase(Trim(Words))
For i=LBound(InvaildWord) To UBound(InvaildWord)
If Instr(inWords,InvaildWord(i))>0 Then
ChkInvaildWord=True
Exit Function
End If
Next
ChkInvaildWord=False
End Function
你所得到的只是一個加ChkInvaildWord事件的代碼
看你怎麼去用了
例如 你現在接受了一個STR的值
那麼就直接 ChkInvaildWord(STR)
如果STR中間有特殊字元 那麼你就得到了FALSE
如果沒有 那麼你就得到TRUE
一般都都會在前面加上IF判斷。。
然後輸出 錯誤
完整的就如1樓的
C. 在asp.net傳遞參數怎麼過濾特殊字元
1.傳遞前先加密 ,KEY是你自己定義的,加密解密函數KEY一致。
public static string Encode(string str, string key)
{
DESCryptoServiceProvider provider = new DESCryptoServiceProvider();
provider.Key = Encoding.ASCII.GetBytes(key.Substring(0, 8));
provider.IV = Encoding.ASCII.GetBytes(key.Substring(0, 8));
byte[] bytes = Encoding.GetEncoding("GB2312").GetBytes(str);
MemoryStream stream = new MemoryStream();
CryptoStream stream2 = new CryptoStream(stream, provider.CreateEncryptor(), CryptoStreamMode.Write);
stream2.Write(bytes, 0, bytes.Length);
stream2.FlushFinalBlock();
StringBuilder builder = new StringBuilder();
foreach (byte num in stream.ToArray())
{
builder.AppendFormat("{0:X2}", num);
}
stream.Close();
return builder.ToString();
}
2.獲取參數後,解密
/// <summary>
/// Des 解密 GB2312
/// </summary>
/// <param name="str">Desc string</param>
/// <param name="key">Key ,必須為8位 </param>
/// <returns></returns>
public static string Decode(string str, string key)
{
try
{
DESCryptoServiceProvider provider = new DESCryptoServiceProvider();
provider.Key = Encoding.ASCII.GetBytes(key.Substring(0, 8));
provider.IV = Encoding.ASCII.GetBytes(key.Substring(0, 8));
byte[] buffer = new byte[str.Length / 2];
for (int i = 0; i < (str.Length / 2); i++)
{
int num2 = Convert.ToInt32(str.Substring(i * 2, 2), 0x10);
buffer[i] = (byte)num2;
}
MemoryStream stream = new MemoryStream();
CryptoStream stream2 = new CryptoStream(stream, provider.CreateDecryptor(), CryptoStreamMode.Write);
stream2.Write(buffer, 0, buffer.Length);
stream2.FlushFinalBlock();
stream.Close();
return Encoding.GetEncoding("GB2312").GetString(stream.ToArray());
}
catch (Exception)
{
return "";
}
}
D. asp在過濾特殊字元情況下如何讓表單允許出現特定符號
如果這個%只是為了顯示,那麼可以把它替換成%
如果你後端用的是ADODB.RecordSet來保存數據的,那麼你可以不必過濾這些符號,直接寫入到資料庫里就行了,這並不會有什麼安全風險,只有在生成SQL語句時,過濾才是必要的.
E. asp特殊字元的處理問題
Ø這個問題,我倒沒碰到過,我這里顯示也是正常的啊,可能是瀏覽器的編碼問題吧
至於",因為在HTML里"常被用來指定值,所以你輸出的時候如果直接顯示",很可能被解釋成為指定值結束。正確的做法是在輸出前將 " 替換成"就可以了
F. asp中如何過濾掉特殊字元
|user=replace(trim(request.form("uName")),"'","''")
password=replace(trim(request.form("Password")),"'","''")
if instr(user,"%") or instr(user,"#") or instr(user,"?") or instr(user,"|") or instr(user,"'") then
response.write "<script language=javascript>alert('您的姓名含有非法字元!');this.location.href='login.asp';</script>"
response.end
end if
if instr(password,"%") or instr(password,"#") or instr(password,"?") or instr(password,"|") then
response.write "<script language=javascript>alert('您的密碼含有非法字元!');this.location.href='login.asp';</script>"
response.end
end if 我自己做的,希望對你有幫助
G. 請問,怎麼樣用ASP過濾掉中文特殊字元
判斷ascii值吧
H. asp網站提交的表單有必要過濾and、select、delete等特殊字元嗎
針對這點,有一種最普遍常用的方法,就是利用Replace的替換功能,將英文字元全部替換為程序不可識別的中文字體,這樣顯示出來的英文依然可被人識別,但卻不能被程序執行。
教你一個最簡單的方法,用智能ABC輸入法,按V鍵,然後按數字3鍵,翻頁找到英文字母,選擇需要的相應英文字母,你看下面:
ABCDEFG
ABCDEFG
下面這行就算寫出SELECT等等,也是不能被程序識別的。
I. ASP特殊字元過濾~~~~~~急!!!!!!!~~~~~~
給你個例子你研究以下吧
過濾函數102.asp的內容
china2008(request.form("userid")) //這里的"userid" ,"password"
china2008(request.form("password"))
// 和提交頁面的name值要一樣,其他的都不改。
login.asp內容
用戶名:<input class=buinput name="userid" size="20" maxlength="10" type="text">
密 碼:<input class=buinput name="password" size="20" maxlength="10" type="password">
//這里加過濾函數102.asp的文件login.asp
// <form method="post" action="login.asp" name="man">
黑客通用如ASP沒有過濾函數用這個就可以跑到你的後台 'or''=''or''or' asp'or'1 'or'='or' 'or''='
下面是102.ASP文件
<%
function china2008(aspdic)
if not isnull(aspdic) then
if instr(aspdic,";")<>0 or instr(aspdic,"&")<>0 or instr(aspdic,">")<>0 or instr(aspdic,",")<>0 or instr(aspdic,"=")<>0 or instr(aspdic,"%")<>0 or instr(aspdic,"'")<>0 then
response.write"所輸入的數據包含非法字元"
response.end
end if
end if
end function
china2008(request.form("userid"))
china2008(request.form("password"))
%>
J. ASP中關於特殊字元的處理
放進去不需要,取出來的時候要