这只是个小测试,验证一下自己的想法。6 e w- w6 @3 E1 s' k. R" D
很早的时候,就遇到过服务器不允许POST的情况
0 v5 ~0 l3 m2 b# ~5 f6 C当时因为忙,就没有深入的去想,昨天又遇到一次,是个后台带SQL语句执行的,导出个一句话之后发现菜刀连不上,不允许POST。! \( L! R* |& c# l5 [7 e- ^
这个时候,不可能直接SQL执行导出个大马的,那该怎么办呢?
9 j2 U$ {3 e: G H6 s于是我就寻思着用GET的方式向刚才导出的一句话提交数据。
8 S' |, a" Y7 p% v! c+ |6 k+ ]今晚不是很忙,就写出来测试结果。
& ~; Q" m3 ^: _- g' S在ASP环境下,一句话木马一般用2个函数执行:eval和execute。; J8 e. G- }8 S
先来写个eval的一句话,然后用GET向他提交数据( I# [$ K1 i+ ~9 L" l8 m i3 X
% C* l3 Z& n- k( `) F
( G2 _! P; A3 Q, |4 A2 N0 B9 l' b6 Y3 B2 u2 \9 F
' A' B0 S2 M Z! |: g9 r3 D$ g7 U
4 U+ D. {# z$ M! `' p) ^
1 Y1 ~# L, ]5 [% |
* Z8 D# l2 o5 D9 j! m1 ~( T1 z5 _. Y
' {5 B! [' }& Z- W- @( I
+ D7 K0 t) l5 O k+ _8 |+ k
9 Q( C9 r* J. _* r- S
+ V* r( J7 k R) Q) O9 K
1 E! L8 X6 ~# `2 {提示语法错误,数据并没有成功保存。 这让我想起了之前看到过的一篇文章,说eval执行的时候对参数的长度是有限制的,而我现在用的一句话木马连接客户端用了2个参数,虽然我已经尽量把第二个参数简单化了,但是貌似还是超出长度了。 下面来试试execute:8 ^5 _. v! p: B" x5 d( k5 k
! p- W; Z3 M# r$ Y) e- ?" W+ d' j v
0 \! e* i+ E" D1 q
3 I% M# v6 ]; W 结果我发现单击“提交”按钮时页面没有反应,我换了opera浏览器来运行一句话客户端,发现大马被提交了一部分,但并没有完全被写入:/ Q0 ~! \) }* J" b) p
* q% w/ w3 `9 R
2 R( t7 K6 Y! l, t8 S4 m2 h
' m. A6 F q! U) @0 M
0 r9 T7 m. Q8 R: u4 V
8 n! c# I4 k: s
" ?2 e; |' Q3 U2 Y ' m; T& ~* s. `* g1 m3 w
看来数据量还是太大了。 那么这个时候,来提交个ASP的下载脚本试# Q. Q+ X) @' L. l# [0 E' ~
" k. t S5 ~: v1 h: E3 A. r9 ]* c) A# D/ j6 f
# U O9 r' b4 D0 J! v; K) y0 [" W
, [" u& ?, }& O3 d
& K' ^. s: t$ m/ q* |3 B" x. G
结果表明:完全没有问题。 至此,遇到的不能POST的限制完美突破,虽然麻烦点。 |