切换到宽版
  • 14743阅读
  • 1回复

站点安全简单防范 [复制链接]

上一主题 下一主题
 
只看楼主 倒序阅读 0楼  发表于: 2009-04-10
— 本帖被 鞋带总是开 从 Exchange中文站-灌水乐园 移动到本区(2009-07-11) —
今天写一篇关于站点安全的文章。 ]F,v#6qi  
  很多人做网站,直接下源代码,比如动易,动网等等,除了论坛代码本身爆出的漏洞之外,站长本身不对论坛的一些敏感信息进行修改。别人只需要简单的分析一下整站系统的版本,就能知道整站源代码,然后就能知道默认管理员账号和登录连接,还有就是能知道数据库路径等等! qd?k#Gw&  
  所以我们下好整站系统之后就要相应的修改数据库路径以及管理账号和密码,同时要打好补丁! &v_b7h  
  关于自己亲手写的代码,要做好防注入,以下列出两个通用防注入代码: YCB=RT]&`  
<% j'FBt8P'  
'''''''''''''''''''''''''''''''''''''''''''''''' a7l-kG=R;  
'ASP通用防注入代码 ekuRGG  
'您可以把该代码COPY到头文件中.也可以单独作 C8 2lT_7"  
'为一个文件存在,每次调用使用 ZlYb8+rW  
'''''''''''''''''''''''''''''''''''''''''''''''' n15lX,FI  
Dim GetFlag Rem(提交方式) p:^;A/D  
Dim ErrorSql Rem(非法字符) {\-IAuM  
Dim RequestKey Rem(提交数据) ^VB_>|UN4  
Dim ForI Rem(循环标记) &k {1N.  
ErrorSql = "'~;~and~(~)~exec~update~count~*~%~chr~mid~master~truncate~char~declare" Rem(每个敏感字符或者词语请使用半角 "~" 格开) 9=;ETLL "  
ErrorSql = split(ErrorSql,"~") "8`f x  
If Request.ServerVariables("REQUEST_METHOD")="GET" Then -o0~xspF  
GetFlag=True ^2um.`8  
Else zDof e*  
GetFlag=False XAc#ywophi  
End If 3`m n#RM  
If GetFlag Then 7~ok*yGw  
For Each RequestKey In Request.QueryString F!yejn [  
For ForI=0 To Ubound(ErrorSql) ]]bL;vlw  
If Instr(LCase(Request.QueryString(RequestKey)),ErrorSql(ForI))<>0 Then | ;P9S  
response.write "<script>alert(""警告:\n请不要使用敏感字符"");location.href=""index.asp"";</script>" 9#niMv9  
Response.End Nv_"?er+y  
End If D|!^8jHj  
Next \~ h7  
Next gkNvvuQXc  
Else gj Ue{cb5  
For Each RequestKey In Request.Form uCpk1d  
For ForI=0 To Ubound(ErrorSql) _&6&sp<n  
If Instr(LCase(Request.Form(RequestKey)),ErrorSql(ForI))<>0 Then 6 {tW$q  
response.write "<script>alert(""警告:\n请不要使用敏感字符"");location.href=""index.asp"";</script>" p[-bu B]  
Response.End |Xl,~-.  
End If QfB \h[A  
Next ]v@#3,BV  
Next * I`, L/  
End If db:b%1hk:  
%> &}VGC=F;d  
------------------------------------------------------------------------------------------------------------------- `&b 8wF  
xIf,1g@Cq9  
第二个: &4sUi K"  
-7*,}xV  
<% }XWic88!~  
'防止注入 $[}31=0  
dim qs,errc,iii li8l+5d q  
qs=lcase(request.servervariables("query_string")) o8BbSZVu  
'response.write(qs) S3i%7f^C?N  
dim deStr(18) ~ d^+yR-  
deStr(0)="net user" )?joF)  
deStr(1)="xp_cmdshell" 'N)&;ADx-G  
deStr(2)="/add" MQ5#6 vJ  
deStr(3)="exec%20master.dbo.xp_cmdshell" yJc<;Qx  
deStr(4)="net localgroup administrators" {f3)!Pei`J  
deStr(5)="select" FEw51a+V  
deStr(6)="count" NQ !t`  
deStr(7)="asc" EE#4,d`J  
deStr(8)="char" HlBw:D(z:^  
deStr(9)="mid" ! ]&a/$U  
deStr(10)="'" XgP7 !  
deStr(11)=":" n>)CCf@H  
deStr(12)="""" OqtQLqN  
deStr(13)="insert" vUR{!`14  
deStr(14)="delete" !m^;Apuy  
deStr(15)="drop" U")~bU  
deStr(16)="truncate" r5Jy( ~  
deStr(17)="from" mQtGE[  
deStr(18)="%" WmP"u7I4  
errc=false D)8&v` L S  
for iii= 0 to ubound(deStr) )}hp[*C  
if instr(qs,deStr(iii))<>0 then l|^p;z: d  
errc=true 49^;T;'v  
end if v$s3f|Y  
next nV,qC .z  
if errc then 1Wtr_ A  
Response.Write("对不起,非法URL地址请求!") G$}\~dD  
response.end +'2Mj|d@p  
end if m:d P,  
%> [MdVgJ9'  
mS6 #\'Qa  
  注入漏洞是最常见的漏洞,还有在线编辑漏洞,网上都有相关的防范方法。站点安全尤为重要,对站点的使用者有很大的影响,站点不安全,服务器就存在威胁!
分享到
只看该作者 1楼  发表于: 2009-04-10

这里是讨论邮件防病毒与防垃圾邮件的版区。

z4b2t}  

 

快速回复
限60 字节
 
上一个 下一个