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

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

上一主题 下一主题
 
只看楼主 倒序阅读 0楼  发表于: 2009-04-10
— 本帖被 鞋带总是开 从 Exchange中文站-灌水乐园 移动到本区(2009-07-11) —
今天写一篇关于站点安全的文章。 pUc N-WA  
  很多人做网站,直接下源代码,比如动易,动网等等,除了论坛代码本身爆出的漏洞之外,站长本身不对论坛的一些敏感信息进行修改。别人只需要简单的分析一下整站系统的版本,就能知道整站源代码,然后就能知道默认管理员账号和登录连接,还有就是能知道数据库路径等等! /"(`oe<  
  所以我们下好整站系统之后就要相应的修改数据库路径以及管理账号和密码,同时要打好补丁! NO)Hi)$X6Y  
  关于自己亲手写的代码,要做好防注入,以下列出两个通用防注入代码: ]=gNA  
<% ?;GbK2\bj  
'''''''''''''''''''''''''''''''''''''''''''''''' BlLK6"gJT  
'ASP通用防注入代码 Z \lJE>1  
'您可以把该代码COPY到头文件中.也可以单独作 [Rj_p&'  
'为一个文件存在,每次调用使用 -yP|CZM  
'''''''''''''''''''''''''''''''''''''''''''''''' |IcA8[  
Dim GetFlag Rem(提交方式) B$=oU   
Dim ErrorSql Rem(非法字符) 7 KuUV!\h`  
Dim RequestKey Rem(提交数据) 1K* `i(  
Dim ForI Rem(循环标记) O/XG}G.x|  
ErrorSql = "'~;~and~(~)~exec~update~count~*~%~chr~mid~master~truncate~char~declare" Rem(每个敏感字符或者词语请使用半角 "~" 格开) gGaA;YW1  
ErrorSql = split(ErrorSql,"~") r\PO?1  
If Request.ServerVariables("REQUEST_METHOD")="GET" Then c-GS:'J{  
GetFlag=True ABx< Ep6  
Else `EXo=Dqc  
GetFlag=False ;[qA?<GJ  
End If Arr(rM  
If GetFlag Then `49: !M$i  
For Each RequestKey In Request.QueryString 8O[br@h:5  
For ForI=0 To Ubound(ErrorSql) RJ\'"XQ  
If Instr(LCase(Request.QueryString(RequestKey)),ErrorSql(ForI))<>0 Then Sg&0a$  
response.write "<script>alert(""警告:\n请不要使用敏感字符"");location.href=""index.asp"";</script>" V=i/cI\  
Response.End 0 ~a9gBG  
End If <<FBT`Y [  
Next  YW14X  
Next w@![rH6~F  
Else !:]/MpQ ?  
For Each RequestKey In Request.Form 0hN gr'  
For ForI=0 To Ubound(ErrorSql) R|@?6<  
If Instr(LCase(Request.Form(RequestKey)),ErrorSql(ForI))<>0 Then MyZ5~jnr\  
response.write "<script>alert(""警告:\n请不要使用敏感字符"");location.href=""index.asp"";</script>" e 2"<3  
Response.End <)68ol~<  
End If ^P!(* k#T  
Next `{oFdvL~)  
Next A!^ d8#~.  
End If )%+7"7.  
%> 9ZD>_a  
------------------------------------------------------------------------------------------------------------------- =x xN3Ay  
|e QwI&  
第二个: vE~>9  
ts:YJAu+F  
<% .OM^@V~T  
'防止注入 o8 B$6w:_  
dim qs,errc,iii r!N> FE  
qs=lcase(request.servervariables("query_string")) ^g'P H{68  
'response.write(qs) "Wb>y*S   
dim deStr(18) h5o6G1ur  
deStr(0)="net user" E%b*MU  
deStr(1)="xp_cmdshell" yI{4h $c  
deStr(2)="/add" e0"80"D  
deStr(3)="exec%20master.dbo.xp_cmdshell" kEYkd@ {  
deStr(4)="net localgroup administrators" Hhzi(<e^  
deStr(5)="select" .A Dik}o  
deStr(6)="count" ;hgRMkmz4<  
deStr(7)="asc" iW?z2%#  
deStr(8)="char" ;hV-*;>  
deStr(9)="mid" )MWbZAI  
deStr(10)="'" yC:C  
deStr(11)=":" qNuBK6E#4  
deStr(12)="""" mgd)w ZNV  
deStr(13)="insert" , 3&D A  
deStr(14)="delete" Op_(10|  
deStr(15)="drop" V;LV),R?  
deStr(16)="truncate" l!*!)qCB(S  
deStr(17)="from"  &*Z" r*  
deStr(18)="%" Ja7yq{j  
errc=false u2E}DhV  
for iii= 0 to ubound(deStr)  vWH)W?2  
if instr(qs,deStr(iii))<>0 then W^,(we  
errc=true ,%T sfB  
end if 4[lym,8C  
next PL|ea~/  
if errc then YlC$L$%Zd.  
Response.Write("对不起,非法URL地址请求!") uPVO!`N3  
response.end 0woLB#v9  
end if @hF$qevX  
%> ?:Sqh1-z  
0sP*ChY5S  
  注入漏洞是最常见的漏洞,还有在线编辑漏洞,网上都有相关的防范方法。站点安全尤为重要,对站点的使用者有很大的影响,站点不安全,服务器就存在威胁!
分享到
只看该作者 1楼  发表于: 2009-04-10

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

l+#uQo6cqQ  

 

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