这只是个小测试,验证一下自己的想法。+ H H7 [, K. h0 f9 q* |
很早的时候,就遇到过服务器不允许POST的情况4 E k) ^# Y& z+ W6 A! W
当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。, R+ }& `$ m2 r/ s6 n% H
这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?
' A) J) S6 {9 Q! a于是我就寻思着用GET的方式向刚才导出的一句话提交数据。
* ]3 i0 f! M! A- z& P/ c% I `今晚不是很忙,就写出来测试结果。
0 p) `- x- s9 b' w% M$ ?+ v$ s在ASP环境下,一句话木马一般用2个函数执行:eval和execute。4 E, b1 N5 U6 E- v' i
先来写个eval的一句话,然后用GET向他提交数据
# ?/ \8 F, o; q1 z6 _: w( [
. r/ ~6 @9 {4 q- B% } [3 X
$ {% F4 ~. V! ~5 C7 C7 j9 ~$ c
& P3 K% N& |: m+ h) g
5 P6 F& o1 V1 [! W9 e) W/ D
8 s ^6 h3 j9 @( t7 q8 U4 R2 e ^6 k) I7 I" f: D3 f
* m$ Z2 i# g' Y8 j1 t* m+ y F7 u: r4 d. r- E( O
/ j. \5 g L4 f+ Y9 y( ~
) x9 V) y1 w& J& H7 e1 A R- z
5 }8 h; r1 o; W9 m; E
" M4 Z2 [% U) Y, Q+ d4 w
/ ^) f9 O$ E9 \& m2 N提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:1 p& Q. d8 c9 o% l
1 ^3 w0 ^) j. a8 Z3 k, \( e2 g+ U% Z& ~/ d' P. {+ ~# d
6 o* o( V; K; f3 q5 X5 o/ @: t( ?# T" \ {
结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:
0 I7 s. d& z* c. X/ g, G3 ^1 i
1 Y' W% u- f! P/ ?( N$ h$ N' [8 R# K) X( w4 Y* R7 Q
$ R$ G1 t. r% {: A6 v7 j9 H& W
! v+ O4 r2 P7 W; Q F
, \8 U/ v% E. O0 Y8 g
6 ]' B6 n# K5 M1 g) V: v _4 G* R% a
( d) o0 R7 z# W' \看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试4 L/ c4 c' @4 r4 C0 h: u, q
& n. K$ ^$ f: T' T* y& x. _" s' A1 p" e+ [" x
0 Q, f0 H9 |) o5 ?8 _
: n* ?0 i9 q4 T+ U4 I1 }- Y2 l _% J6 C4 `7 g
结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |