这只是个小测试,验证一下自己的想法。
) F+ T; B2 G! M# [$ ]5 J很早的时候,就遇到过服务器不允许POST的情况
8 z' i8 \: ~& |1 z4 X" g7 p当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。& \8 t ?, \0 T: P: ^0 O6 f
这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?! l* P$ Z8 }5 l) b
于是我就寻思着用GET的方式向刚才导出的一句话提交数据。
; O/ y6 j0 v: W& y今晚不是很忙,就写出来测试结果。* F7 d' l- C7 q" s9 `) X5 d7 l
在ASP环境下,一句话木马一般用2个函数执行:eval和execute。1 c) E6 x" b( t F& N+ _5 K
先来写个eval的一句话,然后用GET向他提交数据* t$ V4 C- J1 m- I5 A& K6 N
9 {: ^, o% P, I" ^+ ?8 n/ |3 W E" B8 i1 U- x
! f3 p, S6 q% o+ f2 n3 r$ v2 B. }9 J h
" _$ Z1 [$ E7 [. v- G
) J* @0 q+ W( ?! y; R( o' B( o4 i
: W6 C0 F8 f$ m# B
; U7 T" \3 P/ n+ V& j. G% T: J" S2 t P# [
0 H1 h# e: Q4 y" x0 P% b
4 p8 R4 M% @ F$ `- \# x) w$ ?: G% V8 T- @3 k. Z
+ W6 G6 s7 `/ T% s; L ]: u提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:* ]3 X, E- ]) q' Q+ ]
# g. U2 @+ g+ }1 ]! l
# }" f. N* U- I7 d1 r( Y% t5 Z8 H! u7 e: t4 m/ \' a- r. G
1 @. r/ W1 O4 X 结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:7 j$ z. ^+ V# _5 J2 s3 s5 K: Q; m1 o
" d; D1 F" N' D& q8 ~7 i( X# t' ?
3 }# s1 R( i+ M S, a E* d8 `; J$ f% j. h1 O# b) @
% N, V7 ~1 a0 Q8 b" V
5 C3 {. J; h' }3 x( e9 L) V( a
" u- R( W S" s+ e5 H! E& r K$ Q$ a
看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试0 Y+ R+ z/ H2 \/ i' n6 L- ]
( R1 ]' W0 q4 n, [- E; J7 x* u7 g
$ I# V# N4 h: V% G) t: s, K, V. r4 Q' a
1 J$ v* j/ L( g; k 结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |