找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2243|回复: 0
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-18 18:22:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  漏洞文件:ftb.imagegallery.aspx
3 `5 f2 V$ w% g+ ^/ ^7 \* n; H' Y2 S$ I6 l. G4 Z; {
漏洞一:目录遍历4 m  y+ F* l8 t0 e; G3 s
ftb.imagegallery.aspx?frame=1&rif=images&cif=../
" D9 V% g, m$ p# u不可以,过滤了/
6 n+ `3 [$ N- D& {3 v$ K  b" Pftb.imagegallery.aspx?frame=1&rif=images&cif=..\' L! x7 s3 n7 a# A
可以!!过滤\符号 嘿嘿,能干什么自己知道了呗。
* j- N2 E0 q* O& y, Wftb.imagegallery.aspx?frame=1&rif=images&cif=..\..: q1 ^0 a3 }) M7 W
漏洞二:上传漏洞
* O$ e5 N* t! P6 ~" @没做登陆验证可以直接访问上传木马 FTBv3-3-1 可以直接上传任意格式的文件 Freetextbox 1.6.3 及其他版本可以上传 格式为 1.asp;.jpg 文件 上传后木马地址为http://网站地址/images/1.asp;.jpg
' q5 T: w9 u0 \2 R, e
) N7 c% U9 k5 J
- w$ L6 M! ^+ U- Q漏洞修补方案:/ v4 E, ^! H$ T/ S' W9 c
0 F1 t* i  K0 F+ G- V9 B2 u
添加代码加登陆验证
$ K3 Z* e* ~8 W8 _$ V! Pprivate void Page_Load(object sender, System.EventArgs e) {    string isframe = “” + Request["frame"];   Freetextbox上传图片是直接保留原文件名的,这个地方做个修改,上传文件使用时间串做文件名。" O0 I8 i6 [) z- c# y
7 m% X! ~% A' h2 }+ Y! i2 Y  }0 r
修改方式如下:& W( ?$ w1 V; }% p3 H6 k3 r6 L5 Z
3 T" r- y* N, s. o
找到 程序代码
5 X  u4 F1 A3 B+ `3 _1 TUploadFileNameUploadFileName = UploadFileName.Substring(UploadFileName.LastIndexOf(“\\”)+1);    在其下面添加以下代码
/ G" Q- v% w3 I4 }: q* D  L6 g; C8 f//********************* UploadFileName = DateTime.Now.ToString() + UploadFileName.Remove(0, UploadFileName.LastIndexOf(“.”)); UploadFileName = UploadFileName.Replace(“:”, “”).Replace(“-”, “”).Replace(” “, “”); //by Yation.Team 2009/7/17 上传文件用时间重命名
; @+ d: @: _9 O9 x4 b+ e以前已经有人公布过fb暴路径的方法 http*****.cn/helps/ftb.imagegallery.aspx?frame=1”在地址后面加上&rif=..&cif=..在访问 整个网站的目录就呈现在眼前了,下面还有上传删除等按钮… 修正方式如下: 找到 程序代码 if (cif != “” && rif != “”) {# J. ~  {* l2 h3 k( S+ c
把RootImagesFolder.Value = rif;  L$ U4 h% n+ {* a) |

) I+ O- L# Q$ l2 O# R替换成
2 C" d: K6 c2 x& O6 ]# Q3 J程序代码 //***************************** RootImagesFolder.Value = DefaultImageFolder; Array srtArray = cif.Split(‘\\’); string str = srtArray.GetValue(0).ToString(); if (str != DefaultImageFolder) { cif = DefaultImageFolder; } cif = cif.Replace(“..\\”, “”).Replace(“../”,”");
' k% _& n5 G) t7 t& a1 c! k" U
回复

使用道具 举报

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

本版积分规则

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