这只是个小测试,验证一下自己的想法。
, l- ~1 R: Y4 d4 Y, b- f0 Y Q" G' r很早的时候,就遇到过服务器不允许POST的情况
7 e X- r( ` ?3 ? D V6 X% U当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。; N" |: B H" O# G$ e! Q% V1 P
这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?9 g! B& _& `6 [' X, Y
于是我就寻思着用GET的方式向刚才导出的一句话提交数据。
. h; \: T# n9 _ C今晚不是很忙,就写出来测试结果。. }5 l8 {* X% U) _9 D
在ASP环境下,一句话木马一般用2个函数执行:eval和execute。/ [8 @( v% B3 F, V# z/ D3 ]
先来写个eval的一句话,然后用GET向他提交数据
) T5 Q* J/ N1 d+ {9 i8 U& _ Z" P
2 l+ C( c( r. a/ t) y& }$ k s U% u# E4 b) K
9 V# E" r2 H9 K( R Z+ Y+ x9 V
2 J7 i- U/ ^$ o
+ f; I9 L+ i w: J, Z! Z+ B; ~" g- T2 i7 e9 D' a% L- ` B
) T4 e9 U- @2 ~# N
9 s9 c* C( Z' x i6 Z: J( F; S; V) {( n9 }
7 J) q$ A. ?) C1 y3 p/ F% c
5 f$ L6 s/ N; d3 l' r6 K# l4 K0 c& G0 {1 _: k) [' d( x" n
& D8 q8 m _+ X7 M提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:
: P: O/ f3 d! j4 x& o5 Z' R W+ g" C7 L( |
' m' D! o8 B' x& M- h
' x: ^* V- b& T9 d9 {$ Z
% `7 ^5 b9 ~1 w4 b' c
结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:
) p7 }* @8 u6 K+ r: A+ u# }/ C K3 k' n, i- a2 L$ r- {
/ H: M8 D/ [: ~' ?6 F; h- N# g0 Q: w+ Z
8 x4 E% J/ G% e" H O# l w" x4 @ N3 R( G. r
) l" u" f6 \& k5 q3 f
* @0 Y% i& R4 S1 H看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试
& _) f: J' n2 |$ q0 v/ `
8 s/ u/ k+ ]1 u- {# Y* i8 r `7 O' h& k7 D7 r% [7 [
3 V& g# Q6 \- |' |9 C. f* K% c6 ^3 P0 u# M4 x3 E
4 B6 |6 f7 [+ U# \ ~% n3 s 结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |