这是一些代码,我用我的网页上为“一网打尽”为通过查询字符串注入尝试尝试(即通过URL发送数据):
trap = 0
ref = lcase(request.querystring)
if ref <> "" then
badChars = array("OR 1=1", "select", "drop", "shutdown", "--", "insert", "delete", "waitfor", "union", "0x31", "convert", "truncate", "sysobjects")
cn = 0
for i = 0 to uBound(badChars)
if instr(ref,badchars(i)) > 1 then cn=cn+1
next
if cn >=2 then trap = 1
end if
if trap = 1 then .... ban user ip code here
你可以简单地说:“如果陷阱= 1到Response.End则”,这将阻止页面上的任何进一步行动。我宁愿禁止一小时的IP。
这应该也适用于表单输入的request.form。
您可能还需要净化你的变量采取的形式输入。
data=request.form("emailaddress")
data = replace(data,"'","")
data = replace(data,"union","")
等
只需登录将数据库中的查询。然后在一天结束时滚动查看是否有任何奇怪的查询。 –
每天有超过20000个查询和注射液,每 – Alexxx
天没有发生收集日志中的所有查询Luud说,再添加一个更新触发器已被篡改至少一个表,插入时间戳行成一个记录表。这样你就知道要在哪里搜索日志。 – Cyrus