找回密码
 立即注册
查看: 2797|回复: 0
打印 上一主题 下一主题

Treetextbox编辑器遍历目录+上传漏洞

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-18 18:22:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  漏洞文件:ftb.imagegallery.aspx
' ]$ y! D8 W. r5 L# W
$ u2 q# _* o# O$ V6 Y2 l漏洞一:目录遍历
9 l/ {) g* I+ b. e$ oftb.imagegallery.aspx?frame=1&rif=images&cif=../
$ g: x1 a3 D$ l; n不可以,过滤了/# w2 z* f) @4 B. C
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\; q8 O+ ?2 ~& m  ?, y' P
可以!!过滤\符号 嘿嘿,能干什么自己知道了呗。$ t# m, m1 C+ q6 w! }$ e2 S4 k
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\..
# V  v7 _5 i4 [- S- d0 R漏洞二:上传漏洞
3 ~3 Q6 F  {/ l/ y没做登陆验证可以直接访问上传木马 FTBv3-3-1 可以直接上传任意格式的文件 Freetextbox 1.6.3 及其他版本可以上传 格式为 1.asp;.jpg 文件 上传后木马地址为http://网站地址/images/1.asp;.jpg3 u/ N& L% c! U* J; Y6 W: [6 y# R
* E" i) f2 \3 P
8 U/ Z4 v4 g/ ^6 Q2 o4 f
漏洞修补方案:" N" e4 a4 E7 a2 R1 `

3 ?1 m9 q9 R" h- e  q添加代码加登陆验证
0 _( O) ^- n7 N9 Hprivate void Page_Load(object sender, System.EventArgs e) {    string isframe = “” + Request["frame"];   Freetextbox上传图片是直接保留原文件名的,这个地方做个修改,上传文件使用时间串做文件名。
$ ?% d0 A8 S- j
* K+ X3 D7 ^* I- o+ P0 S  {# H修改方式如下:
4 S. O$ n+ v7 X7 b& s
$ @$ m9 j+ m2 t; L8 v% Q; k7 ~找到 程序代码 8 `/ {1 j6 C4 S8 ~
UploadFileNameUploadFileName = UploadFileName.Substring(UploadFileName.LastIndexOf(“\\”)+1);    在其下面添加以下代码
5 e' [% t( |+ G4 _3 u- L! \6 {//********************* UploadFileName = DateTime.Now.ToString() + UploadFileName.Remove(0, UploadFileName.LastIndexOf(“.”)); UploadFileName = UploadFileName.Replace(“:”, “”).Replace(“-”, “”).Replace(” “, “”); //by Yation.Team 2009/7/17 上传文件用时间重命名
6 S& H! w- n+ e# _# N6 _7 [以前已经有人公布过fb暴路径的方法 http*****.cn/helps/ftb.imagegallery.aspx?frame=1”在地址后面加上&rif=..&cif=..在访问 整个网站的目录就呈现在眼前了,下面还有上传删除等按钮… 修正方式如下: 找到 程序代码 if (cif != “” && rif != “”) {! ]7 U6 @( ]1 A9 A
把RootImagesFolder.Value = rif;
, K& T  J" r7 Y. [; }6 O. s) T- [% o( R) X0 Z% N9 H- E
替换成) h* t0 L% p, q- [9 `
程序代码 //***************************** RootImagesFolder.Value = DefaultImageFolder; Array srtArray = cif.Split(‘\\’); string str = srtArray.GetValue(0).ToString(); if (str != DefaultImageFolder) { cif = DefaultImageFolder; } cif = cif.Replace(“..\\”, “”).Replace(“../”,”");
. _( J* Q# ]& o. R( _* n* r! t
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表