马上注册,结交更多好友,享用更多功能,让你轻松玩转闽南师范大学。
您需要 登录 才可以下载或查看,没有账号?立即加入
×
< >黑客是怎样攻击服务器的(下) </P>6 t# X4 z$ k2 ^, z1 N
< > Sambar 4.3 hello.bat
* e$ @& U0 K7 M! M/ x/ g
0 u4 i3 E. D( d7 }, N* @9 \??受影响的服务器:运行在Windows NT上的Sambar 4.3 beta 7和更早版本
4 e2 N- W' ~% W$ J; t 6 y9 d; d( M. Y7 |/ ]
??Sambar是提供给开发者的免费Web服务器。它提供了对CGI和WinCGI脚本、ODBC脚- n/ V0 r" P9 ?3 K: e
本以及ISAPI的支持。它甚至捆绑了Perl 5解释器。
0 T9 G; ]: E" \) C $ a: u% q6 i' `) H
??Sambar 4.3 beta 7版和更早版本附带两个名为hello.bat和echo.bat的文件,它们7 P, \9 ~, t+ H
是将Windows批处理文件用作CGI脚本的范例。这两个脚本本身没有问题,hello.bat显示
! W" p+ [7 B; y: ?2 }字符串"Hello World",而echo.bat显示字符串" lace Holder"。但当批处理文件被用
6 D9 a2 w. U0 B, E6 u' B3 @' w/ t8 J作CGI脚本时,Web服务器将使用Windows命令外壳程序cmd.exe来运行它们。这样,攻击2 t+ y3 L/ x4 o$ `
者可以利用该弱点针对目标服务器运行任意命令。例如,假如攻击者把URL
& o7 A3 v( N* m ?( c0 Uhttp://target.site/cgi-bin/hello.bat?&dir+c:放在他或她的浏览器中,那么,将在服务. a; L }: \" [/ b' Y1 u$ a
器上运行命令"dir c:",并在浏览器上显示结果。由于Sambar是在NT Administrator
+ ?4 g9 a2 w3 P安全权限下运行的,因此事情会变得更为复杂。这样的权限等级可以让攻击者作为NT
% n* V% P+ S o FAdministrator运行任意命令。
" p7 M% P) L5 A3 W& B . T7 R% Z. l) g, |
??Windows命令外壳使用"&”在相同命令行上分隔多个命令。如果用户将“&”放在' {6 S& e* i5 X2 J& q
hello.bat的后面,并在其后添加一个命令,那么将在执行hello.bat后执行第二个命令。
& Z8 k. `, p3 U. ~, z6 G3 H % t, O. A* b! Y# k
??由于已经删除了文件hello.bat和echo.bat,Sambar 4.3 beta 8版和更高版本没有该
6 G8 |: C7 T* F9 ?8 K弱点。但是,由于Windows命令外壳程序解析命令行的方式无法改变,所以并没有办法能真
* I7 Z& a# J% U正修正该问题。如果您安装了4.3 beta 7版或更低版本,请一定要删除hello.bat和& y% S/ V& T' ?) a) g
echo.bat。</P> |