<!--#include file="SqlIn_Config.asp"-->
<!--#include file="SqlIn_Conn.asp"-->
<%
'--------定义部份------------------
Dim Fy_Post,Fy_Get,Fy_In,Fy_Inf,Fy_Xh,Fy_db,Fy_dbstr,Kill_IP,WriteSql
'自定义需要过滤的字串,用 "|" 分隔
Fy_In = "'|;|and|(|)|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare"
Kill_IP=True
WriteSql=True			
'----------------------------------
Dim Fy_ScriptName,Fy_SqlOutUrl,Fy_SqlIn
Fy_ScriptName=Lcase(request.ServerVariables("PATH_INFO"))
Fy_SqlOutUrl=Lcase(SqlInoutUrl&","&AdminDir)
Fy_SqlIn=True
for Fy_i = 0 to ubound(split(Fy_SqlOutUrl,","))
   If Fy_SqlIn=True then
       if instr(Fy_ScriptName,split(Fy_SqlOutUrl,",")(Fy_i))<>0 then Fy_SqlIn=False
   End if
next

Fy_Inf = split(Fy_In,"|")
'--------POST部份------------------
If Request.Form<>"" and Fy_SqlIn=True Then
	For Each Fy_Post In Request.Form
		For Fy_Xh=0 To Ubound(Fy_Inf)
			If Instr(LCase(Request.Form(Fy_Post)),Fy_Inf(Fy_Xh))<>0 Then
				If WriteSql=True Then
					killSqlconn.Execute("insert into SqlIn(Sqlin_IP,SqlIn_Web,SqlIn_FS,SqlIn_CS,SqlIn_SJ) values('"&Request.ServerVariables("REMOTE_ADDR")&"','"&Request.ServerVariables("URL")&"','POST','"&Fy_Post&"','"&replace(Request.Form(Fy_Post),"'","''")&"')")
					killSqlconn.close
					Set killSqlconn = Nothing
				End If
				Response.Write "<Script Language=JavaScript>alert('"&SqlInSystem&"提示你↓\n\n请不要在参数中包含非法字符尝试注入！');</Script>"
				Response.Write "非法操作！系统做了如下记录,对于恶意攻击者，我们将通过法律手段维护我们的权益！<br>"
				Response.Write "操作ＩＰ："&Request.ServerVariables("REMOTE_ADDR")&"<br>"
				Response.end
			End If
		Next
	Next
End If
'----------------------------------

'--------GET部份-------------------
If Request.QueryString<>"" and Fy_SqlIn=True Then
	For Each Fy_Get In Request.QueryString
		For Fy_Xh=0 To Ubound(Fy_Inf)
			If Instr(LCase(Request.QueryString(Fy_Get)),Fy_Inf(Fy_Xh))<>0 Then
				If WriteSql=True Then
					killSqlconn.Execute("insert into SqlIn(Sqlin_IP,SqlIn_Web,SqlIn_FS,SqlIn_CS,SqlIn_SJ) values('"&Request.ServerVariables("REMOTE_ADDR")&"','"&Request.ServerVariables("URL")&"','GET','"&Fy_Get&"','"&replace(Request.QueryString(Fy_Get),"'","''")&"')")
				killSqlconn.close
				Set killSqlconn = Nothing
				End If
				Response.Write "<Script Language=JavaScript>alert('"&SqlInSystem&"提示你↓\n\n请不要在参数中包含非法字符尝试注入!');</Script>"
				Response.Write "非法操作！系统做了如下记录,对于恶意攻击者，我们将通过法律手段维护我们的权益！<br>"
				Response.Write "操作ＩＰ："&Request.ServerVariables("REMOTE_ADDR")&"<br>"
				Response.End
			End If
		Next
	Next
End If

If Kill_IP=True Then
	Dim Sqlin_IP,rsKill_IP,Kill_IPsql
	Sqlin_IP=Request.ServerVariables("REMOTE_ADDR")
	Kill_IPsql="select Sqlin_IP from SqlIn where Sqlin_IP='"&Sqlin_IP&"' and kill_ip=true"
	Set rsKill_IP=killSqlconn.execute(Kill_IPsql)
	If Not(rsKill_IP.eof or rsKill_IP.bof) Then
		Response.write "<Script Language=JavaScript>alert('"&SqlInSystem&"提示你↓\n\n你的Ip已经被本系统自动锁定！');</Script>"
	Response.End
	End If
	rsKill_IP.close
	
End If
%>