这只是个小测试,验证一下自己的想法。+ a* o- L% D6 Z
很早的时候,就遇到过服务器不允许POST的情况3 u0 z: c0 G* q1 ~0 F. J, P# i/ [
当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。4 d/ g; \3 b7 d$ A7 o
这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?2 R5 V3 U' p( F$ O0 X! s! j
于是我就寻思着用GET的方式向刚才导出的一句话提交数据。
! |; [6 g. ^, }, @4 B今晚不是很忙,就写出来测试结果。6 d2 f3 C" `+ M0 ~5 J% }. j
在ASP环境下,一句话木马一般用2个函数执行:eval和execute。 q0 N, A5 y3 j1 D5 p8 L
先来写个eval的一句话,然后用GET向他提交数据
+ V' z! A* p2 N C/ ~& [( s
1 N$ ^# O2 a( `0 U4 s: b
& W: Q8 ~1 O9 A5 h X
5 \0 G0 B" B) T R7 p, Q
6 y$ |: r0 U7 u/ s( @, z& H% P( j+ @# s# E F
& K, B3 m6 O& C8 t# M6 @+ M* n& L
8 t" \- x. n" d7 C' G! _& |+ z. r+ y( S! G0 J7 T
% R4 T0 W$ }: g" C- b `4 }
, }/ F U3 j/ M
3 N& h! X9 ?# t% r5 U
! ^% u4 B. V8 @$ |1 X6 q& j) F+ l: O8 X
提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:' c+ ?1 m8 U6 n
* v# ?, i* ~8 O+ }4 r& w+ w- e. u+ T$ @; E |% M
- G; h: c+ m& `7 U7 V+ ]
( ?) U0 N4 p2 ^ d! n6 c 结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:
) Q# N5 d# N. O+ y3 L$ m! I: V6 G3 x6 v. O
1 b( ]. b! n: ?8 H
- G4 N% K; d5 U2 k! C: I
6 v: j* y2 K1 r7 z. ]+ x4 C/ @6 W3 w) E4 A; s: j/ e( |
& U' W+ i7 f2 |+ U* q2 |9 j
$ U% \ S" y7 X7 t看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试- H9 n$ j7 m* t- H
, M2 [9 @; G; z' ~: \8 G4 m1 N' C) G
9 O: y, K' Y3 o# C: z
( d. X5 i% M$ U
3 B6 y" O2 i1 P5 I- q9 z. f! I1 v 结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |