今天写一篇关于站点安全的文章。 F<Y>
很多人做网站,直接下源代码,比如动易,动网等等,除了论坛代码本身爆出的漏洞之外,站长本身不对论坛的一些敏感信息进行修改。别人只需要简单的分析一下整站系统的版本,就能知道整站源代码,然后就能知道默认管理员账号和登录连接,还有就是能知道数据库路径等等! }|-Yd"$
所以我们下好整站系统之后就要相应的修改数据库路径以及管理账号和密码,同时要打好补丁! 9C"d7--
关于自己亲手写的代码,要做好防注入,以下列出两个通用防注入代码: R]xXG0
<% 2+'4 m#@)
'''''''''''''''''''''''''''''''''''''''''''''''' -udKGrT+
'ASP通用防注入代码 %I^y@2A4`
'您可以把该代码COPY到头文件中.也可以单独作 VUbg{Rb)
'为一个文件存在,每次调用使用 9`|
^cL*6
'''''''''''''''''''''''''''''''''''''''''''''''' 6<`tb)_2~
Dim GetFlag Rem(提交方式) wQR0R~|M
Dim ErrorSql Rem(非法字符) wF.S ,|
Dim RequestKey Rem(提交数据) Z{p62|+Ck@
Dim ForI Rem(循环标记) })TXX7[h
ErrorSql = "'~;~and~(~)~exec~update~count~*~%~chr~mid~master~truncate~char~declare" Rem(每个敏感字符或者词语请使用半角 "~" 格开) ,^m;[Dl7
ErrorSql = split(ErrorSql,"~") :OC(93d)0
If Request.ServerVariables("REQUEST_METHOD")="GET" Then >VE!3' /'
GetFlag=True E
!6 Nf[
Else B.ar!*X
GetFlag=False .8~zgpK
End If QZO9CLX 8k
If GetFlag Then e"u89acp
For Each RequestKey In Request.QueryString ^1jZwP;5eW
For ForI=0 To Ubound(ErrorSql) '>aj5tZ>R
If Instr(LCase(Request.QueryString(RequestKey)),ErrorSql(ForI))<>0 Then :h!&.FB
response.write "<script>alert(""警告:\n请不要使用敏感字符"");location.href=""index.asp"";</script>" 47
|&(,{
Response.End O@)D%*;v
End If 7eP3pg#
Next [Fo"MeH?R
Next 4/+P7.}ea-
Else c%O8h
For Each RequestKey In Request.Form l6y*SW5+
For ForI=0 To Ubound(ErrorSql)
24L
=v
If Instr(LCase(Request.Form(RequestKey)),ErrorSql(ForI))<>0 Then .0ExHcr
response.write "<script>alert(""警告:\n请不要使用敏感字符"");location.href=""index.asp"";</script>" `ZLA=oD
Response.End o8h1
End If ](tv`1A,Wd
Next w.9'TR
Next ]*\m@lWu
End If /t;Kn m
%> {T(z@0Xu
------------------------------------------------------------------------------------------------------------------- iL\eMa
#
ZcFxB6)
第二个: Z^l!#"\4m
n| [RXpAp3
<% Ip&Q'"HYj
'防止注入 cd-;?/
dim qs,errc,iii F
=Zc_
qs=lcase(request.servervariables("query_string")) w}:&+B:
'response.write(qs) \66j4?H#
dim deStr(18) NkYU3[m$v
deStr(0)="net user" <7X6ULQ
deStr(1)="xp_cmdshell" TQiDbgFo
deStr(2)="/add" #CcWsI>+w>
deStr(3)="exec%20master.dbo.xp_cmdshell" 1XD|H_JG<j
deStr(4)="net localgroup administrators" ?T\_"G
deStr(5)="select" Tu9[byfrI
deStr(6)="count" |j>fsk~
deStr(7)="asc" QmR
E<i
deStr(8)="char" c.JMeh
deStr(9)="mid" ]$xN`O4W{
deStr(10)="'"
U%zZw)
deStr(11)=":" zSM;N^X 8?
deStr(12)="""" r_?i l]l
deStr(13)="insert" RLL2'8"A
deStr(14)="delete" \Bg?QhA_D
deStr(15)="drop" =0gfGwD{
deStr(16)="truncate" ztG!NZL
deStr(17)="from" u''~nSR3&
deStr(18)="%" Q4!6|%n8v
errc=false 7$/%c{o
for iii= 0 to ubound(deStr) P{
{U
if instr(qs,deStr(iii))<>0 then $
Eh8s(
errc=true *j/[5J0'M
end if q7-.-k<dQ
next {I"`(
if errc then aa10vV
Response.Write("对不起,非法URL地址请求!") Q?7:XbN
response.end .C7;T'>!
end if 6d%'>^`(o-
%> %yJ
$R2%*y
jn/
J-X=
注入漏洞是最常见的漏洞,还有在线编辑漏洞,网上都有相关的防范方法。站点安全尤为重要,对站点的使用者有很大的影响,站点不安全,服务器就存在威胁!