• λ我爱Aspx >> C#.Net >> PerlCGI程式写作常问问题集(4)安全_Perl教程
  • PerlCGI程式写作常问问题集(4)安全_Perl教程

  • :aspxer  Դ:internet  :2007-4-28 23:46:10  ؼ:
  • @ans=`grep'$user_field'some.file`;

    是不是真的不安全?

    是的!这非常危险!试想,如果$user_field含有这样的内容会有什麽後果:

    ;rm-fr/;

    要达到相同的效果,一个比较安全的做法是*:

    if(openGREP,"-|"){

    @ans=;

    }else{

    exec("/usr/local/bin/grep",$user_field,"some.file")

    ||die"Errorexec'ingcommand","\n";

    }

    closeGREP;

    【译者】如果读者对以上openGREP,"-|"部份的句法有疑问,可以

    参阅perlipcmanpages中SafePipeOpens一节的说明。

    --------------------------------------------------------------------------------

    Q5.5:/$user_variable/这个句法是不是Perl5中的一个安全漏洞?

    不!这不是个安全漏洞。但是如果您用eval指令在执行期(runtime)去评估这个叙述,那麽,它会变成一个安全死角。例如这种做法可能很危险:

    foreach$regexp(@all_regexps){

    eval"foreach(\@data){push(\@matches,\$_)ifm|$regexp|o;}";

    }

    --------------------------------------------------------------------------------

    版权事宜

    --------------------------------------------------------------------------------

    Thisdocument,andallitsparts,areCopyright(c)1996,Shishir

    GundavaramandTomChristiansen.Allrightsreservered.

    Permissontodistributethiscollection,inpartorfull,viaelectronic

    means(emailed,postedorarchived)orprintedcopyaregrantedproviding

    thatnochargesareinvolved,reasonableattemptismadetousethemost

    currentversion,andallcreditsandcopyrightnoticesareretained.

    Requestsforotherdistributionrights,includingincorporationin

    commercialproducts,suchasbooks,magazinearticles,orCD-ROMsshouldbe

    madetoeitheroftheauthors.

    本文件着作权属於ShishirGundavaram及TomChristiansen所有,Copyright(C)1996。在不涉及收费营利、尽可能地使用最新版,及所有着作权告示保持完整的情况下,作者允许任何人透过电子形式(电子邮件、讨论群布告,或存放),或印表方式对本文件作完整或部份发行。如欲将本文件作其他方式发行,包括将本文件附加於商业产品,诸如书籍、杂志文章,或光碟等之中,必须事先对二位作者其中一人提出请求,以徵得许可授权。

    本中译版及译者补充部份着作权属萧百龄及两只老虎工作室所有,Copyright(C)1997。本中译版遵守并使用与上述原文版相同的使用条款发行。

    Ҷƪл˵?
  • һƪ集合类:VBA集合对象的安全包装_VisualBasic教程
    һƪ学习一下.net framework 中有关安全的内容_ASP.NET技巧