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

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

上一主题 下一主题
 
只看楼主 倒序阅读 0楼  发表于: 2009-04-10
— 本帖被 鞋带总是开 从 Exchange中文站-灌水乐园 移动到本区(2009-07-11) —
今天写一篇关于站点安全的文章。 *z 2T[n?  
  很多人做网站,直接下源代码,比如动易,动网等等,除了论坛代码本身爆出的漏洞之外,站长本身不对论坛的一些敏感信息进行修改。别人只需要简单的分析一下整站系统的版本,就能知道整站源代码,然后就能知道默认管理员账号和登录连接,还有就是能知道数据库路径等等! Z.-l#gfIO  
  所以我们下好整站系统之后就要相应的修改数据库路径以及管理账号和密码,同时要打好补丁! ~q%nDOf  
  关于自己亲手写的代码,要做好防注入,以下列出两个通用防注入代码: ~_R7M=22r  
<% y;}D!`/  
'''''''''''''''''''''''''''''''''''''''''''''''' B3(4C5r  
'ASP通用防注入代码 DB/(o'g  
'您可以把该代码COPY到头文件中.也可以单独作 c)#?D*.(  
'为一个文件存在,每次调用使用 5(G\ c|c}M  
'''''''''''''''''''''''''''''''''''''''''''''''' q ,V [  
Dim GetFlag Rem(提交方式) _Iw5'Ss  
Dim ErrorSql Rem(非法字符) Ddxzp-y^@  
Dim RequestKey Rem(提交数据) e3)y/  
Dim ForI Rem(循环标记) CiS9*Y#9#  
ErrorSql = "'~;~and~(~)~exec~update~count~*~%~chr~mid~master~truncate~char~declare" Rem(每个敏感字符或者词语请使用半角 "~" 格开) 9t|E9 %5  
ErrorSql = split(ErrorSql,"~") 7pmU "2'  
If Request.ServerVariables("REQUEST_METHOD")="GET" Then ;JL9?_ u5  
GetFlag=True !( i:sFc  
Else YjkQFkv>  
GetFlag=False 8}[%\k t8  
End If X!2m'B  
If GetFlag Then ebP=](f  
For Each RequestKey In Request.QueryString &xlJfq9;  
For ForI=0 To Ubound(ErrorSql) 6:5v#$ HP  
If Instr(LCase(Request.QueryString(RequestKey)),ErrorSql(ForI))<>0 Then fes3?#Ml,^  
response.write "<script>alert(""警告:\n请不要使用敏感字符"");location.href=""index.asp"";</script>" *,>.bG<  
Response.End *K6@7f|  
End If uKq!dfdBv  
Next $!QVt#D6_P  
Next uKHy0SwkK!  
Else Nx Z,4R;l(  
For Each RequestKey In Request.Form Z3[ Onz  
For ForI=0 To Ubound(ErrorSql) /%uT^D  
If Instr(LCase(Request.Form(RequestKey)),ErrorSql(ForI))<>0 Then wXQE6n}?  
response.write "<script>alert(""警告:\n请不要使用敏感字符"");location.href=""index.asp"";</script>" QCG0H!"Y  
Response.End M5L+L*   
End If R?tSLn\}  
Next q-AsXUR8E  
Next uX`O3 hHq  
End If % [`szlY  
%> T*b f&aB  
------------------------------------------------------------------------------------------------------------------- &R dP{+  
ys<KR5Rj=  
第二个: ,.lzH~g  
/6]@?X  
<% 6SRL(s=w!  
'防止注入 |1Vn}p!n  
dim qs,errc,iii m CG!Y#Oi  
qs=lcase(request.servervariables("query_string")) eg?VfC-^Z  
'response.write(qs) zT9^ri.5  
dim deStr(18) o( -1Crw  
deStr(0)="net user" .smD`]7  
deStr(1)="xp_cmdshell" 2`u:$%]3  
deStr(2)="/add" 4;XU.m_?  
deStr(3)="exec%20master.dbo.xp_cmdshell" #9G.e"Fr,  
deStr(4)="net localgroup administrators" *c^o 4mQg  
deStr(5)="select" MP]#nv  
deStr(6)="count" _$8]{+ ]  
deStr(7)="asc" ?'J@w7o  
deStr(8)="char" &=0v L9  
deStr(9)="mid" i QK7,T7  
deStr(10)="'" u@$\, d  
deStr(11)=":" ]@~ )V [  
deStr(12)="""" Hfb y%L  
deStr(13)="insert" $c}s.P  
deStr(14)="delete" v3]7HB +~  
deStr(15)="drop" -*pIX!  
deStr(16)="truncate" z'_F2P+sn  
deStr(17)="from" 4sa [X>o  
deStr(18)="%" j_Ra(.Z  
errc=false epG%_  
for iii= 0 to ubound(deStr) =#kwymc!E  
if instr(qs,deStr(iii))<>0 then 04-Nu9VI.  
errc=true g:*j  
end if /E|:L^;  
next ^ 1),qy  
if errc then %z!i{^%  
Response.Write("对不起,非法URL地址请求!") Bw1_&fR  
response.end >DN~uZP(N  
end if &q3M w  
%> oZ*\r[Ij5  
(/ ,iCz  
  注入漏洞是最常见的漏洞,还有在线编辑漏洞,网上都有相关的防范方法。站点安全尤为重要,对站点的使用者有很大的影响,站点不安全,服务器就存在威胁!
分享到
只看该作者 1楼  发表于: 2009-04-10

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

$6uD%9V.  

 

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