这只是个小测试,验证一下自己的想法。5 L% z+ ~9 N) Y9 N
很早的时候,就遇到过服务器不允许POST的情况5 M& ]5 n9 K3 C* o# X* ~% n! Z
当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。! j/ t2 b' @4 L6 w: R; [& w/ X
这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?
/ ]- x3 E* F' t于是我就寻思着用GET的方式向刚才导出的一句话提交数据。
3 r& L; k! @) a1 I7 L今晚不是很忙,就写出来测试结果。
3 l- L8 P, z% j8 j* V5 V# e/ c6 ?: ^在ASP环境下,一句话木马一般用2个函数执行:eval和execute。
6 J i( f4 E+ l8 F" R: G先来写个eval的一句话,然后用GET向他提交数据4 N# w7 k" Y: g5 r/ _: u
9 h* N S- s4 ^1 \0 ^9 u4 @+ Y/ `
+ M2 [$ n; U" j# N4 t- k8 m
2 r; R8 A' V6 H3 Z4 k. n
$ N3 E+ v9 M: ~( l
7 @8 f5 G; l$ m6 {# I3 B
5 |1 W% Z3 ]( [& f& j
3 [* B# e9 n$ D: Y B ]; z
8 U6 M, ?1 D' T, i/ R! W; q! x3 f1 s @, z- G
# `) {" ?& V0 t4 c5 B
( t. n8 u0 n1 J- v" h
. O$ T( K: y; G3 t6 l8 L% e" D/ ?0 M$ Y: d8 W7 S
提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:3 \# o& m1 `$ U
5 a$ A8 D2 z) t* |9 ^: @4 U! L9 U4 @' s, `; P1 Q4 f2 A: q
& `. ^" V4 D1 f3 i' D2 R( }6 v# @9 x8 R7 K6 h* I* O. X6 Y% C+ S+ W, q: S
结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:
+ A m0 P1 Y8 j: H
8 _% R4 T. _& L8 R+ g O
7 @% r0 `1 U$ W6 r9 J% K& H
+ a# @$ {6 Q7 w+ Y2 s- s. ]4 b2 o; F6 d7 F# C3 {/ W! ^
6 Z- Z1 f/ r4 i' E8 Y3 o) c, Z
% \' }; M4 B/ ^( b: `: E# Y / W/ ~+ t5 m% t1 k2 L+ l
看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试4 L3 p& ]% a0 S2 R4 y* q7 C
# M$ O2 [. b/ Q* j& R: k; c- \+ X: @# T: N6 B6 e- g1 ^, b
3 ^, ~2 y4 s4 _3 u
6 M) u! x* I1 o7 O5 h$ p1 m9 G! G
8 A+ O! g3 Z8 _+ p; j$ v 结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |