ASP防止图片木马上传的代码

来源:asp之家 时间:2011-02-05 11:08:00 

ASP木马防御:

代码如下:


const adTypeBinary=1 

dim jpg(1):jpg(0)=CByte(&HFF):jpg(1)=CByte(&HD8) 
dim bmp(1):bmp(0)=CByte(&H42):bmp(1)=CByte(&H4D) 
dim png(3):png(0)=CByte(&H89):png(1)=CByte(&H50):png(2)=CByte(&H4E):png(3)=CByte(&H47) 
dim gif(5):gif(0)=CByte(&H47):gif(1)=CByte(&H49):gif(2)=CByte(&H46):gif(3)=CByte(&H39):gif(4)=CByte(&H38):gif(5)=CByte(&H61) 
Response.Write CheckFileType(Server.MapPath("2.gif")) 

function CheckFileType(filename) 
on error resume next 
CheckFileType=false 
dim fstream,fileExt,stamp,i 
fileExt=mid(filename,InStrRev(filename,".")+1) 
set fstream=Server.createobject("ADODB.Stream") 
fstream.Open 
fstream.Type=adTypeBinary 
fstream.LoadFromFile filename 
fstream.position=0 
select case fileExt 
case "jpg","jpeg" 
stamp=fstream.read(2) 
for i=0 to 1 
if ascB(MidB(stamp,i+1,1))=jpg(i) then CheckFileType=true else CheckFileType=false 
next 
case "gif" 
stamp=fstream.read(6) 
for i=0 to 5 
if ascB(MidB(stamp,i+1,1))=gif(i) then CheckFileType=true else CheckFileType=false 
next 
case "png" 
stamp=fstream.read(4) 
for i=0 to 3 
if ascB(MidB(stamp,i+1,1))=png(i) then CheckFileType=true else CheckFileType=false 
next 
case "bmp" 
stamp=fstream.read(2) 
for i=0 to 1 
if ascB(MidB(stamp,i+1,1))=bmp(i) then CheckFileType=true else CheckFileType=false 
next 
end select 
fstream.Close 
set fseteam=nothing 
if err.number<>0 then CheckFileType=false 
end function 
%> 

标签:图片,木马,上传
0
投稿

猜你喜欢

  • Javascript——浅析注册事件

    2008-08-19 12:44:00
  • 基于信息排序的信息理解

    2008-05-16 10:37:00
  • 使用正则表达式找出不包含特定字符串的条目

    2010-03-02 22:06:00
  • Dreamweaver制作网页实用七小招

    2009-05-29 18:36:00
  • 兼容主流浏览器,纯CSS下拉菜单

    2010-09-05 20:30:00
  • SQL Server数据体系和应用程序逻辑详解

    2009-04-14 07:23:00
  • jQuery 1.3.3 新功能[译]

    2009-06-04 12:23:00
  • asp脚本延时 自定义的delay函数

    2008-04-07 12:59:00
  • Oracle 数据库操作类

    2009-08-12 12:06:00
  • 利用Google Ajax Library API加速常用js类库的载入

    2008-06-17 17:44:00
  • X/HTML5 v.s. XHTML2(II)

    2008-06-18 13:19:00
  • 用ASP对网页进行限制性的访问

    2008-07-03 13:02:00
  • QQ聊天窗口链接提示效果代码

    2008-12-16 12:59:00
  • 一些sql语句

    2009-04-10 18:36:00
  • DreamWeaver批处理提高篇

    2007-12-03 11:34:00
  • IE7下动态创建Iframe时,去除边框的办法

    2009-01-19 13:56:00
  • Debugging JavaScript:throw与console

    2008-08-29 17:03:00
  • asp判断ip及ip段范围的一组函数小记

    2008-12-09 18:23:00
  • ASP 代码出现80040e14错误的解决方法

    2011-03-29 10:53:00
  • Oracle学习笔记(五)

    2012-01-05 18:52:30
  • asp之家 网络编程 m.aspxhome.com