这只是个小测试,验证一下自己的想法。' ^6 P* L {; ]2 l v9 d5 k6 A+ M
很早的时候,就遇到过服务器不允许POST的情况+ W2 X* D* }2 ?9 `7 q# r( j i
当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。
, B# H6 Z. M! A l这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?& x y2 n" i% D+ ~
于是我就寻思着用GET的方式向刚才导出的一句话提交数据。
! A/ _% [& V, W0 R3 x* W' i今晚不是很忙,就写出来测试结果。
$ ~; y( F: i+ A% b/ d+ A在ASP环境下,一句话木马一般用2个函数执行:eval和execute。
" o4 P7 h1 F( o5 P, o+ s先来写个eval的一句话,然后用GET向他提交数据
1 [ R/ }: i y- K3 {$ t5 p w
) l" c# F* u# ~" f( S& P+ G7 ?- t; V6 ]$ a& x
) D9 Y1 p$ K9 w9 _# T
: u' ~$ x3 z* @: {3 Y& P" k
% V! P& `7 C4 j3 t0 h3 `) f0 Z* B
. r4 Y: A. F0 ~. R! g3 l0 Q, S5 w9 v v [2 @
8 O4 K+ E' G) {' M# W9 _# {: U
3 i$ ]7 }5 P7 ^, O9 U8 l1 M+ P3 P3 [5 }: r5 s' d% `/ A6 }5 e
' \& a6 a# I. v: w, i
0 }4 E( V% Z6 r; ^提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:
7 F$ D+ u- S( q2 H1 e V0 x% V& S9 k: R8 G
$ d( j3 K' H0 X k
6 a3 `7 t4 `8 `! U3 ^. s! [: z p) f" J' a, M
结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:7 _2 y: o. F& ^" X$ {5 P
) m# o/ {* [) h7 ^- o$ x
* X& P# W+ [2 L% }8 d! g8 Q$ n8 @# q- t h$ {
9 t% v3 m2 R, S' c
. b+ Z2 O J1 V5 o1 \
+ v% h2 _7 H. p. ~: Q& }# u* S
" o2 h7 a2 g# u# p" O' Q' R* }7 c看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试
7 k9 G! s3 u- l: }( Y& y7 g0 A2 T4 {2 J: h9 o
3 Z, k4 `# }) b# m N' u1 ]( H S; j5 k
' w' i2 T4 Z' L6 |* f J
' v( ^: Z1 H, p% h- Y2 J 结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |