这只是个小测试,验证一下自己的想法。
% T8 q* U o4 I$ s: |很早的时候,就遇到过服务器不允许POST的情况& M8 c6 ]3 s0 \0 p# C. c
当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。
* V2 d$ G+ ~* l0 t0 k7 h5 ` _这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?0 _( N+ z' `. F2 A4 b/ x4 s3 @
于是我就寻思着用GET的方式向刚才导出的一句话提交数据。
8 H4 f* _ H5 V9 a9 B今晚不是很忙,就写出来测试结果。
' ^! b' K' |' ~+ X5 Q* a% M9 a在ASP环境下,一句话木马一般用2个函数执行:eval和execute。
" o S5 _2 C5 t先来写个eval的一句话,然后用GET向他提交数据- K9 ^8 n6 w Z
- G6 f0 N# O/ z+ }
1 W3 o: V/ Y3 @2 k: f% C7 n# A1 ^. d+ R/ G+ \
! e# D: }! ^+ c+ F
1 r! |& G f5 G- b) w$ `- W
3 l/ R- _/ j B
! p; R" S0 e9 `: A$ Q! O' `
: Q6 h8 B8 M+ ?8 J$ O @: [
; Q4 e- G2 ]( Q/ E+ x1 y8 w; D: W2 a6 x7 o
# P4 L2 v! r- D2 Q% K- ?
$ l, d( g( [1 z$ _7 l, L; o* Y# }
$ ^' B+ U X7 U' M* x3 g. N提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:/ T% s# f3 ?; a/ m- c2 C- V
- l3 C0 U% y/ ^: F/ \7 F4 u
) t9 x' H8 q7 ?/ f: X& e- w7 B$ I6 u
7 ?2 [: C/ N- m/ c5 [) \ 结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:+ j% j4 M7 `7 C6 R! `; z# Y8 z
: O- A, v! T# t8 z$ ]2 }7 V' u+ i8 y! i% d2 m
% b9 x0 H9 @" B. t5 E7 ]
8 E/ h. e0 Z/ j" ^/ k0 a4 ^
1 L3 V/ a5 B d* _2 B) o: `
7 `% l3 f! R5 T
1 z0 R" D9 l1 L" Q0 i" R) }* S6 ]0 t7 e看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试. u8 a$ p; j9 B; V
% d8 D: B/ K q% R8 j# }
3 w( |6 {/ _4 U, O7 {% _4 ~- P8 E6 G% N4 V) ^8 F0 y9 {
- q4 K( y: o' O6 m: k k7 f5 { h" @. O$ W) A, T' S
结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |