当前位置:首页 >> 新闻内容
ASP终极防范上传漏洞
来源:本站 | 作者:Shop7z编辑部 | 发布时间:2014/2/25 

    其实无论是组件还是非组件上传,都有这个漏洞,以下代码请需要得朋友仔细阅读,只要读懂代码就能融会贯通。
  
  这里以ASPUPLOAD组件上传为例
  
  以下3个关键函数:
  
  function killext(byval s1) '干掉非法文件后缀
  dim allowext
  allowext=".JPG,.JPEG,.GIF,.BMP,.PNG,.SWF,.RM,.MP3,.WAV,.MID,.MIDI,.RA,.
  AVI,.MPG,.MPEG,.ASF,.ASX,.WMA,.MOV,.RAR,.ZIP,.EXE,.DOC,.XLS,.CHM,.HLP,.PDF"
  s1=ucase(s1)
  if len(s1)=0 then
   killext=""
  else
   if not chk(allowext,s1,",") then
   killext=".shit"
   else
   killext=s1
   end if
  end if
  end function
  
  function chk(byval s1,byval s2,byval fuhao) '检查字符串包含
  dim i,a
  chk=false
  a=split(s1,fuhao)
  for i = 0 to ubound(a)
   if trim(a(i))=trim(s2) then
   chk=true
   exit for
   end if
  next
  end function
  
  function gname(byval n1) '以日期自动产生目录和文件名,参数1生成目录,参数2生成文件名(无后缀)
  dim t,r
  t=now()
  randomize(timer)
  r=int((rnd+1-1)*9999)
  select case n1
  case 1
  gname=year(t)&right("00"&month(t),2)&right("00"&day(t),2)
  case 2
  gname=right("00"&hour(t),2)&right("00"&minute(t),2)&right("00"&second(t),2)&right("0000"&r,4)
  end select
  end function
  
  调用方法:
  
  dim oup,ofile,ext,myfile
  
  Set oup = Server.CreateObject("Persits.Upload")
  oup.SetMaxSize 10000000, True
  call oup.Save() '这里是上传到服务器内存,并没有实际文件产生
  set ofile = oup.files(1)
  ext=killext(ofile.ext)
  
  myfile="/" & ganme(1) & "/" & gname(2) & ext
  
  call ofile.saveas(server.mappath(myfile))
  
  
  
  附加说明:
  
  黑客如果用 nc 上传非法文件,最终得到的文件只是
  
  如 200511051234559103.shit
  
  之类的“狗屎”文件!

 Shop7z网上购物系统
 最新资讯
Shop7z终极版:全站百分百采用纯html5/CSS/CSS3代码开发,代码集简洁与大气于一身,系统集合了Shop7z其他各版本优势于一体,高端大气,适合各行业开店。
Shop7z至尊版:集众家之所长,大气超美观页面于一体,采用宽屏版面设计开发,美观大气、动感时尚!宽屏版购物系统适合各行各业的网上开店需求
Shop7z多用户版:集"网上商城+用户开店"的完美模式!支持商家加盟,强大的店铺功能,独立的商家后台及结算,欢迎亲们测试!
Shop7z旗舰版:Shop7z旗舰版功能强大性能稳定,均支持商品组合套餐+限时抢购秒杀+不同规格不同价格+淘定数据包导入等功能!
 热点咨询
 推荐文章
 联系方式
工作时间: 早上9:00 - 21:00 (全年无休)
在线客服:275084681 81447933 
联系电话:0311-85315152 13102887321
电子邮件:Shop7z@126.com
工作期间推荐QQ联系,第一时间回复信息。
 首 页 | 购物系统 | 查看如何购买?如何建立网站? | 成功案例 | 常见问题/支持 | 网站合作 | 空间、域名 | 版权声明 | 新闻中心 | 关于我们
Shop7z网上购物系统在线客服:    275084681 客服QQ二:  81447933     客服电话:13102887321 0311-85315152
软件著作权证书登记号:2014SR001852 软著登字第0671096号     软件著作权证书登记号:2018SR956050 软著登字第3285145号
服务电话:0311-85315152    手机:131 0288 7321 (节假日不休)
地址:河北省石家庄市中山东路乐汇城A座A-1501#  邮政编码:050051
E-mail:Shop7z@126.com  275084681@qq.com (推荐邮箱)
CopyRight Shop7z.com版权所有 2004-2024 All Rights Reserved.冀ICP备19029961号-4
微信:
友情链接:
5vShop电商系统Shop7z购物系统网趣网上购物系统Asp微信支付中国站长站 源码素材网Admin5源码Asp300源码