这只是个小测试,验证一下自己的想法。
8 k; {! _$ ^$ B; M7 q0 J很早的时候,就遇到过服务器不允许POST的情况
$ Q% [' x& {1 p& s: K5 [) U8 L( X当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。( \( W- R- X" O, _- d! f& X6 F
这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?5 ^, X" W& b; v0 s
于是我就寻思着用GET的方式向刚才导出的一句话提交数据。
6 |% k6 Y' c- a今晚不是很忙,就写出来测试结果。# ]& p% V$ S$ E
在ASP环境下,一句话木马一般用2个函数执行:eval和execute。! Q# M$ z+ I0 N5 x$ C2 _) \& m% Z3 D
先来写个eval的一句话,然后用GET向他提交数据 G7 f% K2 ]/ t B) N7 n
+ L8 g& R9 J4 B' M7 s6 s: s( w
- T! _8 H; m2 s: H4 s3 j* x! E. U: q
. f2 \6 H X8 _* U
8 ^, X' l- e* ^) w7 `8 K- Q/ C0 {
9 |. V6 S5 S! R2 B6 M4 v1 d: O! { I7 m. k; b- ?3 X) x$ `
2 w o; g- @4 b% g
8 e* D6 S/ U5 y; m) `& x; |, h
( O) V, x* f" h7 l9 V5 `; ]1 w7 @! T. _; g
% V4 t6 }$ M) N. ~8 R m
$ L T5 J0 c7 V& G7 Z- p( H9 e' e2 a: h
提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:( V# ^+ K6 B, ^& a- [2 O1 {- i+ |3 L
6 C, R; H; V/ Z$ b u( N
' L1 \3 ~2 e+ l; t
) ~# g9 k! Y4 Z& i5 c7 f8 ^; P2 v0 ?1 {6 U( Y. e. @3 f9 L
结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:
" Q2 k4 k I8 L+ |" o- w/ M# D1 l8 p+ s, O8 d ]
/ @. c3 L8 r8 b. d
9 R& |. |! c2 A& x0 W3 p# F0 O! C9 {& f0 w" N
/ \) J+ F2 T4 L1 `8 o! a3 H3 a/ `
5 H7 f+ s5 F2 u$ }) }. K
3 U* c- [# Q. m# ]. i
看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试3 T$ j- P1 v# b8 _9 f$ [* t
* a4 O! R8 W* ]& s- H+ }
4 [9 ` p. ^9 d
+ I3 Z" m' n+ N' b
4 ]: e r( Q; ^/ d, }" g. @$ s1 ?( i+ X* c7 }
结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |