这只是个小测试,验证一下自己的想法。
; y# I) q6 X) f9 F: Z很早的时候,就遇到过服务器不允许POST的情况
' `! E- A: J( z" S! k6 _当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。
7 a- v2 u9 T0 s$ {这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?
6 q/ \: Q2 s# `# s于是我就寻思着用GET的方式向刚才导出的一句话提交数据。
- B7 y5 D) ~4 X, I- L6 e7 b3 A* j今晚不是很忙,就写出来测试结果。
2 C& N, R& f. U9 c8 P在ASP环境下,一句话木马一般用2个函数执行:eval和execute。
* d: J m. d* ]0 V先来写个eval的一句话,然后用GET向他提交数据7 R0 Z" M; j' P9 z" N
' c- D8 Q9 i0 \! Q: ]
5 s5 n8 h3 w- `! Z0 F
/ I+ a$ s5 N: E, u, r
1 R3 n* z, K6 q# Z. H5 S: {/ ?0 p, g5 D8 m1 _
. B' }& v4 n0 \: K8 L. h" @
8 G% P1 M/ G) _& u, c: [; |
* H3 ?' f) _; ~& |/ m5 [" _8 |' s1 N, r0 Y3 V1 U
# r0 @+ b7 o: F0 `5 }5 x+ k
2 g- M8 T& F; I7 B5 E! s- O: C
, e0 M$ z5 U" G- j
8 K. T- z2 N5 H. V7 N* Q( u提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:
; x2 {0 b9 [# P" r! w* P* h
+ _1 ?7 J- I1 S2 d
+ h% ]7 F$ X# G; H! ?
5 ?+ s* F' ^/ w( Y2 P4 |5 {) }! e. I% M' e4 O# R, R
结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:5 V$ ~5 r6 d2 V- K1 m" n; S! F) J
" y) b* o1 j8 R7 ] B
7 b% {# V2 d" R
' c$ R: }+ r$ @; w- a
) @: G5 |% A5 [" _( G% o* m2 I' V) ^( o, Q$ u! F
8 k+ C' L4 O0 @2 }- t" y7 R
& a/ l8 s5 t& I _1 {0 `看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试
/ K: h. Z% Q8 G: w% U% ~9 K
8 b( |+ n% P O9 i* F5 n
7 g H& i+ U, n! _ R* E
" t4 U2 A) k" |% X6 q7 w: [9 j2 u1 |" k& \( R8 g
9 x {: r5 O. x$ P
结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |