这只是个小测试,验证一下自己的想法。3 G7 h$ k# v8 d& O+ w. s( a# @% `
很早的时候,就遇到过服务器不允许POST的情况) M6 i: k" `+ C
当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。
2 E0 z6 T* p3 T0 B# n这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?
* b4 R5 {+ [+ Y1 s R: q: j6 N7 |7 f于是我就寻思着用GET的方式向刚才导出的一句话提交数据。$ _3 x+ H0 X7 q9 y5 E# |: b
今晚不是很忙,就写出来测试结果。$ a+ v1 B- t; Y) y9 C& P! |
在ASP环境下,一句话木马一般用2个函数执行:eval和execute。- w+ o: R6 C+ s* ?: Y5 v) O- G6 a
先来写个eval的一句话,然后用GET向他提交数据7 Z8 s! D% O* I
( x; G4 U5 S! z4 I- v
+ Q8 ~+ i5 z. y2 _! m- h
4 N8 z3 C- Q7 B1 g g+ q
# r$ _' X3 ^. ~. t0 D1 O
2 g2 g# b( y% u T. E& }8 e: b V& }3 l% ]# B: Z' J+ q3 Z
2 k! Q5 r0 z1 }% u2 W% K& I5 y# F9 i
! G' M% ]! m6 ?% t5 X
! ]6 g9 c$ R$ v! ]3 Z+ O( A, F/ X* ~
# o" j. A6 u$ E% U7 d7 g
z" c" ~( U8 t
5 Y6 K: s% \, T5 }! `& H提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:
& O6 ]5 t, U8 n$ [6 g
- Z* C2 @4 e; R* ~0 t K3 {+ Q+ ` j) n( Q' Y5 t2 d s! c A9 A1 y
3 m2 E, w9 E4 n1 m
/ ]* i7 m, u J$ _9 b9 b! C 结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:
6 p5 W5 @" |. y% ^, m: F+ q6 e( a5 @: v O( N1 s) Z
' }4 Q3 a; V" Q: r% ]
, G5 f# a: M5 v+ ~2 c/ U) i
9 _ }/ y* |! {) R }
% u7 C( f S4 D s, p7 v
; k7 `8 q4 f. H# T- P2 {
/ U* y* {4 @: I" B看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试
3 \# y( e+ Z) ^% ^; t n g9 N& W. _
" m& M' K2 t2 x0 _
) p! f/ P. i: U
/ T' h) ?* ^( J9 L4 ^& f: ?- ]; s M7 A) a& W3 v
结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |