网络编程
位置:首页>> 网络编程>> Asp编程>> ASP下检测图片木马的函数代码

ASP下检测图片木马的函数代码

 来源:asp之家 发布时间:2011-02-05 10:43:00 

标签:ASP,图片木马

木马原理:入侵者使用诸如ASP图片木马生成器之类的工具将一张正常的图片与一个ASP木马文件合并成一个图片文件(即将对网站有害的ASP代码插在图片编码之后,虽然图片仍然可以正常显示,但是文件内容和尺寸已被改变),然后通过网站提供的文件上传功能上传这一张“合'法的”图片,进而实现了上传ASP木马的目的。

' 防范方法:因为这种木马是图片与木马的二合一,所以需要在上传图片前检查文件内容,若文件内容不合法(即包含有恶意代码在里面), 
'则禁止上传,从而堵住了木马攻击的源头,这是木马攻击的第一关,至关重要,必须堵住。 
'*************************************************************************** 

代码如下:


'Begin-------------------------------------------------------------------------------------------------------------------------- 
function CheckFileContent(FileName) 
dim ClientFile,ClientText,ClientContent,DangerString,DSArray,AttackFlag,k 
set ClientFile=Server.CreateObject("Scripting.FileSystemObject") 
set ClientText=ClientFile.OpenTextFile(Server.MapPath(FileName),1) 
ClientContent=LCase(ClientText.ReadAll) 
set ClientText=nothing 
set ClientFile=nothing 
AttackFlag=false 
DangerString=".getfolder|.createfolder|.deletefolder|.createdirectory|.deletedirectory|.saveas|wscript.shell|script.encode|server.|.createobject|execute|activexobject|language=|include|filesystemobject|shell.application" 
DSArray=split(DangerString,"|") 

for k=0 to UBound(DSArray) 

if InStr(ClientContent,DSArray(k))>0 then '判断文件内容中是否包含有危险的操作字符,如有,则必须删除该文件。 
AttackFlag=true 
exit for 
end if 

next 

CheckFileContent=AttackFlag 
end function 
'End---------------------------------------------------------------------------------------------------------------------------- 

0
投稿

猜你喜欢

  • 导语在设计论坛之前的讨论中曾经谈到过“设计师应该抓住这个时代的情感”,这是设计师的设计嗅觉和职业特性的体现,那么在纷纷扰扰中“裂变”的Web
  • 一、节点的定义dom节点树图中可见节点HTML文档中的每个成分都是一个节点:整个文档是一个文档节点每个HTML标签是一个元素节点包含在HTM
  • 图片外框特征参数:  ①dashed:虚线②dotted:点虚线③solid:实线④double:双线⑤groove:沟
  • 下面是滚动条css代码参数介绍:scrollbar-3d-light-color 设置或检索滚动条亮边框颜色 scrollbar-highl
  • CSS样式和JavaScript脚本是应该放在外部文件中呢?还是把它们放在页面本身之内呢?如何处理是关于一些性能规则的思维,就这些问题,我们
  • 我们开发数据库应用时,常常需要用到模糊查询。如果同一个条件需要匹配很多字段怎么办呢?通常,程序员会每个字段都在SQL中“field like
  • 在用HTML(HyperText Markup Language,超文本链接标示语言)语言编写Web页面时,由于所用的Web浏览器对HTML
  • 一、查询条件精确,针对有参数传入情况 二、SQL逻辑执行顺序 FROM-->JOIN-->WHERE-->GROUP--&
  • 为某国税局开发一综合 * ,需要建立一个庞大的国税系统通讯录数据库,从各省、市到每名具体工作人员,项目较多,该如何设计各表呢?数据库的表设计
  • 前不久听到这样一个面试的故事:面试官:你准备在我们公司做些什么事情?(大致这个意思)面试人:我准备在公司做网站重构,把原来是table的页面
  • Inserted 表中的行是触发器表中新行的副本。 语法 返回所有列 INSERT INTO [tableName] ([columnNam
  • 这是来自于Steven D编写的WEB前端开发设计要点的内容。虽然许多设计师已非常熟练的使用了Web标准,让人遗憾的是有很多细节的排版处理仍
  • 清除浮动这个问题的提出,在现在来说应该算是一个非常古老的问题了,很多人对解决办法估计也能烂记于心了,但是我这个落后了不少的前端开发程序员,太
  • 从今天起,我将陆续将 ppk on JavaScript 的读书心得发布到这个blog上。ppk是我所景仰的一位web开发者,原因无它,只是
  • 大家都知道连续的英文或数字能是容器被撑大,不能根据容器的大小自动换行,网页设计初学者可能不知道怎么处理,下面是CSS如何将他们换行的方法!对
  • 方法一:利用Cookies对象 因为Cookies对象把变量的值保存在浏览器客户端,所以可以根据Cookies保存的IsVoted的值来判断
  • <!--#include file="strcheck.asp"--> <% '笔者在写程序的
  • 一次又一次的,我发现,那些有bug的Javascript代码是由于没有真正理解Javascript函数是如何工作而导致的(顺便说一下,许多那
  • 功能:实现网页内容的即时编辑,增加页面的可用性、交互性。方法1:直接通过textarea标签实现,请运行下边代码:<!DOCTYPE
  • 如何制作一个从Access数据库中读取记录的下拉菜单?看看这个例子:<% SQL = "SEL
手机版 网络编程 asp之家 www.aspxhome.com