乘风原创程序

  • 从一个安装文件看CGI的安全性
  • 2007/9/29 10:06:44
  •  

    旧版的文章,原来曾一度找不到了,今天无意中发现,特发表与此:

    曾发表与2001年11月25日的西路网络花园,旧版的文章,原来曾一度找不到了,今天无意中发现...

    西路留言本刚刚推出2.0版本的时候,我出现了致命错误。本来这个错误是可以避免的,但是我向来的惰性导致了不良的后果。当时好象是8月底还是9月初,反正我也记不起来了,你们可以看看2.1版本是好久推出的就知道了,2.1安全版本出前的一天,我被一条测试留言本上的信息惊呆了,他说安全性太差了,并明确指出setup.txt文件用浏览器可以直接浏览,并反馈给任何人超级管理员名字和密码。他威胁说:“不要告诉我你所有的密码都是这个。”实际上我所有的密码,包括服务器都是一样的。幸好他只是提醒。我马上修改了这个错误。但是由此却引出一些思考!

    首先,.txt文件拿来做安装信息文件本意是为了加快Perl的运行速度,但是没有想到.txt会被浏览,如果是.cgi文件的话(仅仅是扩展名改了一下)也不会出现这种问题,因为里面的安装信息没有print "Content-type: text/html\n\n";是不会输出到浏览器的。还有就是属性问题,原来以为只要能运行就无所谓,但是却错了,如果当时把属性设为666,或许理论上不会泄露,但我当时试了.txt,还是回被输出到浏览器!所以告戒Perl爱好者们不要一味的追求速度,安全也是很重要的。