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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-18 18:22:31 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
  漏洞文件:ftb.imagegallery.aspx8 q9 J  A9 F* j, J( l/ g9 I
6 [0 Z4 ^$ R- p6 T
漏洞一:目录遍历2 r5 T- l1 K8 a
ftb.imagegallery.aspx?frame=1&rif=images&cif=../
8 M* i- Z1 G  O; L* K$ k不可以,过滤了/
, L$ v# T7 v! I" ~% `; S9 d  hftb.imagegallery.aspx?frame=1&rif=images&cif=..\
8 Q8 B! H, e- j. q& K2 e: N8 @可以!!过滤\符号 嘿嘿,能干什么自己知道了呗。: ^% T* \) b: _
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\../ x1 W& g( A+ T% ~4 x( V
漏洞二:上传漏洞
; K" r% }: ^/ J" K* f没做登陆验证可以直接访问上传木马 FTBv3-3-1 可以直接上传任意格式的文件 Freetextbox 1.6.3 及其他版本可以上传 格式为 1.asp;.jpg 文件 上传后木马地址为http://网站地址/images/1.asp;.jpg2 \5 \( U7 F. \6 T7 O4 g- m

7 T3 d. S/ W% |( j # e, e* \3 e$ k1 X
漏洞修补方案:
* w' {3 Q+ e3 I1 ~8 y9 O: B% n$ H: r! s. p
添加代码加登陆验证$ J( w0 F3 z5 q: D' O" ?
private void Page_Load(object sender, System.EventArgs e) {    string isframe = “” + Request["frame"];   Freetextbox上传图片是直接保留原文件名的,这个地方做个修改,上传文件使用时间串做文件名。
7 M/ r  L) c3 W$ P2 h1 {3 _
" `4 y( w: h  p) w4 h+ _: g2 V$ D% @, ^修改方式如下:" a1 f7 R1 B+ H) L4 p& r, Z! a
2 R  V: }( t8 T3 A% k
找到 程序代码
1 c3 U! s  \1 {3 L( O1 S4 ~$ HUploadFileNameUploadFileName = UploadFileName.Substring(UploadFileName.LastIndexOf(“\\”)+1);    在其下面添加以下代码* G# x) d9 @8 S# t
//********************* UploadFileName = DateTime.Now.ToString() + UploadFileName.Remove(0, UploadFileName.LastIndexOf(“.”)); UploadFileName = UploadFileName.Replace(“:”, “”).Replace(“-”, “”).Replace(” “, “”); //by Yation.Team 2009/7/17 上传文件用时间重命名4 ~7 [3 v0 U7 S0 y* x9 C" P
以前已经有人公布过fb暴路径的方法 http*****.cn/helps/ftb.imagegallery.aspx?frame=1”在地址后面加上&rif=..&cif=..在访问 整个网站的目录就呈现在眼前了,下面还有上传删除等按钮… 修正方式如下: 找到 程序代码 if (cif != “” && rif != “”) {
4 u. E$ G5 a& {$ d$ C& f! ~1 v把RootImagesFolder.Value = rif;
! z  l3 t( N/ U: h* j
2 p- \6 C8 e! j6 B' }- Y6 @替换成
- C% w0 e8 G1 s  {0 F程序代码 //***************************** RootImagesFolder.Value = DefaultImageFolder; Array srtArray = cif.Split(‘\\’); string str = srtArray.GetValue(0).ToString(); if (str != DefaultImageFolder) { cif = DefaultImageFolder; } cif = cif.Replace(“..\\”, “”).Replace(“../”,”");; \) k+ x- L  g: u- }1 k
回复

使用道具 举报

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

本版积分规则

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