余志国网站设计工作室是专业从事义乌网站建设、义乌外贸网站建设、义乌网站制作、义乌网站设计的专业义乌网站建设工作室,是义乌外贸网站建设专家!

Fckeditor 2.6.3 ASP版增加检测上传文件是否为木马功能

分类:程序开发 Tags: fckeditor asp 检测 网页编辑器 评论:0 浏览:3825 最近更新时间:2010/11/4 16:51:58

Fckeditor 2.6.3 已经对上传文件的类型进行严格的限定,可以防止大部分的木马的上传。但是在使用中偶发现有些图片木马仍能够上传。所以本文的目的是进一步增强Fckeditor 对木马的检测。
和添加上传达小限制相同,主要是对fckeditor\editor\filemanager\connectors\asp文件下的config.asp和commands.asp的修改。

1,config.asp的修改

在config.asp 文嘉最后面添加下面的函数,对于木马的检测主要是通过这个函数实现的
 
  1. Function CheckFileSafe(sFilePath)
  2. '使用文本方式打开文件,检测文本中有无危险代码
  3. Dim CheckFso,ObjReadFile,sFileTextAll,IsFileSafe,sNotSafe,NotSafeList,ListLoop
  4. '危险字符串
  5. sNotSafe=".getfolder|.createfolder|.deletefolder|.createdirectory|.deletedirectory|.saveas|wscript.shell|script.encode|server.|.createobject|execute|activexobject|language="
  6. NotSafeList=Split(sNotSafe,"|")
  7. IsFileSafe=True
  8. Set CheckFso=Server.CreateObject( "Scripting.FileSystemObject" )
  9. '判断文件是否存在
  10. If CheckFso.FileExists(sFilePath) then
  11. '以文本方式读取文件,并转换为小写
  12. Set ObjReadFile = CheckFso.OpenTextFile(sFilePath, 1)
  13. sFileTextAll=Lcase(ObjReadFile.ReadAll)
  14. ObjReadFile.Close
  15. '校验文本中是否存在危险字符
  16. For ListLoop=0 to Ubound(NotSafeList)
  17. If Instr(sFileTextAll,NotSafeList(ListLoop))>0 then
  18. IsFileSafe=False
  19. Exit For
  20. End If
  21. Next 
  22. End If
  23. Set CheckFso=Nothing
  24. CheckFileSafe=IsFileSafe
  25. End Function
函数有一个字符串型参数sFilePath,用来传递文件真实地址,如d:\webroot\xx.jpg

函数将上传的文件以文本方式打开,判断是否含有ASP木马常用的字符串,若含有则函数返回False,否则返回True

2,commands.asp的修改

对commands.asp的修改主要是调用CheckFileSafe函数,检验上传的文件是否为木马,若为木马则将上传的文件删除。修改如下:

在下列语句
 
  1. oUploader.SaveAs "NewFile", sFilePath
  2. If oUploader.ErrNum > 0 Then sErrorNumber = "202" 
之后添加
 
  1. if Not CheckFileSafe(sFilePath) then 
  2. sErrorNumber = "205"
  3. oFSO.DeleteFile sFilePath 
  4. End If 
这里定义了一个错误代码205,提示用户上传的文件为木马,禁止上传。

3,添加错误代码205的提示信息

这里以上传类型为图片为例说明

修改fckeditor\editor\dialog\fck_image文件下的fck_image.js

在switch ( errorNumber )中添加下列语句。
 
  1. case 205:
  2. alert( '上传文件可能为木马,不允许上传!' ) ;
  3. return ;
修改完成,可以尝试建立一个文本文件,添加几个危险代码试试看。嘿嘿。另外,可以对上传木马的客户端IP进行记录,保存到文本文件或者数据库中。

本文地址:/491/
  • 相关文章
  • 推荐文章
  • 最新文章
发表评论





您的IP:18.97.14.91,来自:

留言

 


免费咨询
建站咨询热线
15967985565
QQ: 358758308 Skype: yuzhiguo Facebook: yuzhiguo Email