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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-18 18:22:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  漏洞文件:ftb.imagegallery.aspx/ H: _2 I2 G6 P/ x4 H
  x0 ?8 _2 P. l  f1 ]* x  K5 Z
漏洞一:目录遍历: O- ?/ g9 P1 I% z0 h! C: G4 ^9 X! f
ftb.imagegallery.aspx?frame=1&rif=images&cif=../5 T( A* H) R0 d/ k& G& I7 ]& ^% m
不可以,过滤了/* k; H  D( f; T7 k6 w2 I# A" h5 o, e
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\
& o& r! p( v- H; e$ o9 c% [5 n' k可以!!过滤\符号 嘿嘿,能干什么自己知道了呗。. ~) |2 e5 D0 [1 x5 [/ c. g% y1 b; I
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\..
1 Y% E4 ?, E- V7 M漏洞二:上传漏洞
4 E' d8 x' K' t: q4 N( P没做登陆验证可以直接访问上传木马 FTBv3-3-1 可以直接上传任意格式的文件 Freetextbox 1.6.3 及其他版本可以上传 格式为 1.asp;.jpg 文件 上传后木马地址为http://网站地址/images/1.asp;.jpg
) u' j; p" s7 e) ? : Y! \/ C* M; b8 r+ O1 N& J

' {: H5 n1 Y8 S4 s! z漏洞修补方案:- Y. k5 v- l1 ]! h6 _- O8 f
1 v9 Z! o( c5 h& O* \/ K/ z
添加代码加登陆验证
- d9 @3 i3 Z! ~private void Page_Load(object sender, System.EventArgs e) {    string isframe = “” + Request["frame"];   Freetextbox上传图片是直接保留原文件名的,这个地方做个修改,上传文件使用时间串做文件名。
8 \# o3 E) ^4 y0 H9 z
; \* R- c. H, t- s% |) Y修改方式如下:
( m/ G1 w$ m" p8 A4 H# c
2 n; {$ A5 F1 m找到 程序代码
- i, }# Z) [/ H6 sUploadFileNameUploadFileName = UploadFileName.Substring(UploadFileName.LastIndexOf(“\\”)+1);    在其下面添加以下代码
" J- U( [% \  G8 W! B( i//********************* UploadFileName = DateTime.Now.ToString() + UploadFileName.Remove(0, UploadFileName.LastIndexOf(“.”)); UploadFileName = UploadFileName.Replace(“:”, “”).Replace(“-”, “”).Replace(” “, “”); //by Yation.Team 2009/7/17 上传文件用时间重命名4 @' o4 b) F- l) N6 I  h$ s# l; A
以前已经有人公布过fb暴路径的方法 http*****.cn/helps/ftb.imagegallery.aspx?frame=1”在地址后面加上&rif=..&cif=..在访问 整个网站的目录就呈现在眼前了,下面还有上传删除等按钮… 修正方式如下: 找到 程序代码 if (cif != “” && rif != “”) {
4 i, {8 F* ?! ]1 M7 j- a8 i把RootImagesFolder.Value = rif;
2 T* `. {; ~7 U6 b8 N: }) D8 ?  \* Y, ]
替换成
; g# E& ~9 f9 M; V, V程序代码 //***************************** RootImagesFolder.Value = DefaultImageFolder; Array srtArray = cif.Split(‘\\’); string str = srtArray.GetValue(0).ToString(); if (str != DefaultImageFolder) { cif = DefaultImageFolder; } cif = cif.Replace(“..\\”, “”).Replace(“../”,”");. r: `4 }1 k5 K5 g& E$ F
回复

使用道具 举报

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

本版积分规则

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