这只是个小测试,验证一下自己的想法。
1 K2 z C& |+ E' H! A很早的时候,就遇到过服务器不允许POST的情况
+ A9 ~, T' e% b当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。
/ f+ m3 d- |6 P+ q# O- i9 S" v这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?' ^& ~3 R4 R) w: W4 m! U
于是我就寻思着用GET的方式向刚才导出的一句话提交数据。/ @: X6 z8 l! ?
今晚不是很忙,就写出来测试结果。
f& K3 I1 V, J, }; P在ASP环境下,一句话木马一般用2个函数执行:eval和execute。
3 C6 @5 }# t4 ^/ j! w先来写个eval的一句话,然后用GET向他提交数据
! d x/ y# |" l1 O$ ~0 P
8 E! Q P( B- i* e3 v' e, I4 P+ g, k
1 l- ~& h1 r- c" X0 c o2 Y
6 r) @: _! z7 T4 x% }9 C& }" @# j# V" t+ M( b6 ]
# Y, z5 Z) e, j& X
) c. K; \ i/ J3 Q# P; B: O. {9 e( }9 I& d3 o X# H0 _+ ?
/ b6 Z0 z1 @. K! R% A2 t9 J- ]0 {* \( c8 i- u- q e) L$ |8 Y6 u; c
- U% Q, c1 j6 b, Z1 w/ G2 n
: w8 j; D; C2 x2 r; E8 t3 R* Y7 b' \3 C. T# q' C
; F* V, D6 A5 ^' }0 S7 o0 J/ h d* V
提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:
! F0 X8 I* C1 E, P& N$ R
3 o" A8 Z2 _# c w, R
+ L- u. K- ~- \ r: |0 T8 G- V1 [, k
9 a5 ^ V. x. l. J3 B
结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:* G2 ~, z( W) y2 ?
- N& g7 Z8 Z; M: U; Q: P
, S0 t# x! d0 z5 s3 r
( ^* C8 l9 k' J' v
* T" s6 B( e# F) K) ~& r+ g- V8 a
. { \/ n9 y6 g3 |9 I/ m
. X; l* \6 d! d0 R [) S
看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试) ^* [7 ^. {& c8 _
, z$ R6 o# L& q/ r0 F5 Z2 Z1 S4 J" O' O+ s
' B; {7 ?; W# v6 b+ M4 ]
! A9 y9 ?" b: j( P- r9 P8 _" C; }( \+ N9 d, U1 s, H" s8 W
结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |