盾怪网教程:是一个免费提供流行杀毒软件教程、在线学习分享的学习平台!

CGI的安全(二)

时间:2024/12/3作者:未知来源:盾怪网教程人气:

[摘要]--------------  (图1) (译者注:原图是一个浏览器,我仅画出HTML页中的部分。) 我们来看一下下面的程序行会如何处理这样的输入: ...
 
-------------- 
  (图1) 

(译者注:原图是一个浏览器,我仅画出HTML页中的部分。) 

  我们来看一下下面的程序行会如何处理这样的输入: 
  
  print `/usr/bin/finger $in` 

  由于你使用了向后的标记,首先它会执行一个shell。然后它将执行如下的命令: 

/usr/bin/finger nobody@nowhere.org ; /bin/rm -rf / 

  这将会怎样呢?假设在命令行像这样输入。它会删除所有的文件和目录,从root的目录开始。我们需要sanitize这个输入来render the semicolon(;)metacharacter harmless.在Perl中,利用表4中的函数可以很容易的实现。(C中的这些等价函数在表5中;它们来自cgihtml的C库。) 

程序4. Perl中的escape_input(). 
sub escape_input { 
  @_ =~ s/([;<>\*\

关键词:CGI的安全(二)




Copyright © 2012-2018 盾怪网教程(http://www.dunguai.com) .All Rights Reserved 网站地图 友情链接

免责声明:本站资源均来自互联网收集 如有侵犯到您利益的地方请及时联系管理删除,敬请见谅!

QQ:1006262270   邮箱:kfyvi376850063@126.com   手机版