这只是个小测试,验证一下自己的想法。! O; P& I* y( P, I+ h" `( }* E
很早的时候,就遇到过服务器不允许POST的情况
}$ T& {; p q. o7 N当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。# y/ v) G' F0 t1 X
这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?
6 U9 Q: D# K3 A" |! E( s& R) ^于是我就寻思着用GET的方式向刚才导出的一句话提交数据。4 b" v9 I/ F& t& o( I
今晚不是很忙,就写出来测试结果。5 Y& ]' q8 z+ t z" Q& Y4 K6 P8 p: C
在ASP环境下,一句话木马一般用2个函数执行:eval和execute。
n; V( W) `- {" {; J x1 a$ C先来写个eval的一句话,然后用GET向他提交数据# ^# K* z( u9 a" l c; h
# b+ v7 U+ b" c2 x9 K+ n0 i! G _. Q9 z @6 I" l6 H5 E; f- l
) G3 S5 N+ Z7 @6 ^; R
. n& |8 a& e& Y% l3 K' w
9 g7 j/ s! x9 G" m: g5 b. \1 n
1 Y( G( [6 q3 _: e: r3 \" m5 x8 H) l3 N
+ V% {3 Y. ~, ~* `" B
7 T# {, d7 X, _" D: y
7 @% P7 I) W: N" d) Y- C$ r7 t$ h6 M) r% O* k( U" `3 k; K* @
4 c# a: {( k! ~ k$ f4 b0 U
" ?# r: O) q) g% @$ |
提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:
. H7 i2 e& V2 ~, O5 V
; _/ x* K' i5 H6 j* m- Q+ V3 P- d* s' s8 m- L4 X
- h$ `' @- F7 U) X- v$ C, o) q: X* e* P
结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:
3 R. i7 @4 y. [$ C5 T5 S
{6 A. H/ c; c
4 g6 n( t( g g$ e- K! _) W3 ]( W
8 ]7 D# T1 R7 G W% F# S
- {7 w& j8 E0 p: c* j
3 p% n# q4 E5 j" u
6 V* F4 X9 K: I3 ^3 | H看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试
$ F8 }# M; q# W* T
" r5 C$ q1 `; ?, S7 q5 r! Y0 ]& S [: V4 d8 [
; o9 u8 \5 R. t9 ~& u1 G
) f j" v# P! P+ D/ @
8 a; S. u- d; p$ }' P; m7 b: G 结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |