中国网络渗透测试联盟
标题:
Treetextbox编辑器遍历目录+上传漏洞
[打印本页]
作者:
admin
时间:
2013-1-18 18:22
标题:
Treetextbox编辑器遍历目录+上传漏洞
漏洞文件:ftb.imagegallery.aspx
( ?5 G- A% \4 {: S4 q, G
9 u. E# {+ {) e6 M
漏洞一:目录遍历
; T* Y8 Y) ]. Y) f
ftb.imagegallery.aspx?frame=1&rif=images&cif=../
/ P* U) u7 [& X8 P
不可以,过滤了/
3 i2 |4 K0 |, c7 U/ n8 x' O* r1 ?
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\
* M' I: J9 `* m8 M( e. O" S
可以!!过滤\符号 嘿嘿,能干什么自己知道了呗。
. j2 ^: u1 O5 \) _$ G
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\..
+ m- `0 b: }0 Y, T( W5 J1 w8 i
漏洞二:上传漏洞
) K8 g9 q( ]3 z8 F1 M+ n
没做登陆验证可以直接访问上传木马 FTBv3-3-1 可以直接上传任意格式的文件 Freetextbox 1.6.3 及其他版本可以上传 格式为 1.asp;.jpg 文件 上传后木马地址为http://网站地址/images/1.asp;.jpg
/ Q1 S+ T0 Y* s) d
2 c0 f1 ~; s" K
( g8 p" [ B" R+ j; S" \
漏洞修补方案:
2 W4 D' g6 N+ C1 D' M. N
, H% u) f. {# C% Z( J I
添加代码加登陆验证
3 V3 o% Q2 b/ \) ^
private void Page_Load(object sender, System.EventArgs e) { string isframe = “” + Request["frame"]; Freetextbox上传图片是直接保留原文件名的,这个地方做个修改,上传文件使用时间串做文件名。
5 w$ \3 E: K! z3 w! m
5 D" N. O5 F+ Z7 h6 e8 J2 O
修改方式如下:
- o3 R5 _; L9 X9 v5 I, o! a
: @- g2 z0 G" ^& v
找到 程序代码
9 N0 j# q4 \9 a6 B" a0 E
UploadFileNameUploadFileName = UploadFileName.Substring(UploadFileName.LastIndexOf(“\\”)+1); 在其下面添加以下代码
) E0 h6 e! G$ \8 H
//********************* UploadFileName = DateTime.Now.ToString() + UploadFileName.Remove(0, UploadFileName.LastIndexOf(“.”)); UploadFileName = UploadFileName.Replace(“:”, “”).Replace(“-”, “”).Replace(” “, “”); //by Yation.Team 2009/7/17 上传文件用时间重命名
% K: M# F. o: M) k' @. l( P8 F! @
以前已经有人公布过fb暴路径的方法 http*****.cn/helps/ftb.imagegallery.aspx?frame=1”在地址后面加上&rif=..&cif=..在访问 整个网站的目录就呈现在眼前了,下面还有上传删除等按钮… 修正方式如下: 找到 程序代码 if (cif != “” && rif != “”) {
* Y, m$ ?3 K) E& v( e" H
把RootImagesFolder.Value = rif;
" [2 ^. a' X r# J; C
5 L- d9 C: \$ _$ I3 e. G
替换成
" E) H* Z6 y4 E# t7 n. W0 f$ ^5 [
程序代码 //***************************** RootImagesFolder.Value = DefaultImageFolder; Array srtArray = cif.Split(‘\\’); string str = srtArray.GetValue(0).ToString(); if (str != DefaultImageFolder) { cif = DefaultImageFolder; } cif = cif.Replace(“..\\”, “”).Replace(“../”,”");
& `0 T3 z0 r2 D5 i8 q1 T% y* Y% x
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2