1.什么是CGI?
不要奇怪,有相当一部分人对CGI的概念还比较模糊,他们眼中的CGI就是Perl CGI,其实CGI是Common Gateway Interface(公用网关接口)的简称,并不特指一种语言。事实上,几乎任何支持标准输入输出的语言都可以称为CGI语言,如Perl,Php,C,VC++等都可以称为CGI语言。
2.什么是CGI安全?
这里所说的CGI安全,主要包括两个方面,一是Web服务器的安全,一是CGI语言的安全(其实对于解释型CGI语言,还涉及到解释器的安全,不过由于它在CGI安全中所占的比例不大,所以我们就不考虑了)。对于不同的CGI语言,我们所说的CGI安全可能有些不同,比如说对于ASP和JSP,我们所说的CGI安全主要是指Web服务器的安全。而对于Php和Perl,我们所说的CGI安全就主要是指CGI语言的安全。
3.CGI存在什么安全问题?
既然CGI安全包括两个方面,那我们就分别从这两个方面来介绍一下CGI的安全性,下面依次介绍Web服务器的安全和CGI语言的安全。
Web服务器的安全问题主要包括两个方面,一是Web服务器软件编制中的BUG,二是服务器配置错误。这可能导致CGI源代码泄露,物理路径信息泄露,系统敏感信息泄露或远程执行任意指令。
下面主要讨论一下CGI语言的安全问题。由于CGI语言的复杂性,所以这方面的安全问题也比较多,参考Securityfocus关于漏洞起因的分类,我们可以为CGI语言漏洞分为以下几类:。
* 配置错误
这里所说的配置错误主要指CGI程序和数据文件的权限设置不当,这可能导致CGI源代码或敏感信息泄露。还有一个经常犯的错误就是安装完CGI程序后没有删除安装脚本,这样攻击者就可能远程重置数据。前些日子“XX大联盟”论坛多次被黑就是这个低级错误所致。
* 边界条件错误&nbs
不要奇怪,有相当一部分人对CGI的概念还比较模糊,他们眼中的CGI就是Perl CGI,其实CGI是Common Gateway Interface(公用网关接口)的简称,并不特指一种语言。事实上,几乎任何支持标准输入输出的语言都可以称为CGI语言,如Perl,Php,C,VC++等都可以称为CGI语言。
2.什么是CGI安全?
这里所说的CGI安全,主要包括两个方面,一是Web服务器的安全,一是CGI语言的安全(其实对于解释型CGI语言,还涉及到解释器的安全,不过由于它在CGI安全中所占的比例不大,所以我们就不考虑了)。对于不同的CGI语言,我们所说的CGI安全可能有些不同,比如说对于ASP和JSP,我们所说的CGI安全主要是指Web服务器的安全。而对于Php和Perl,我们所说的CGI安全就主要是指CGI语言的安全。
3.CGI存在什么安全问题?
既然CGI安全包括两个方面,那我们就分别从这两个方面来介绍一下CGI的安全性,下面依次介绍Web服务器的安全和CGI语言的安全。
Web服务器的安全问题主要包括两个方面,一是Web服务器软件编制中的BUG,二是服务器配置错误。这可能导致CGI源代码泄露,物理路径信息泄露,系统敏感信息泄露或远程执行任意指令。
下面主要讨论一下CGI语言的安全问题。由于CGI语言的复杂性,所以这方面的安全问题也比较多,参考Securityfocus关于漏洞起因的分类,我们可以为CGI语言漏洞分为以下几类:。
* 配置错误
这里所说的配置错误主要指CGI程序和数据文件的权限设置不当,这可能导致CGI源代码或敏感信息泄露。还有一个经常犯的错误就是安装完CGI程序后没有删除安装脚本,这样攻击者就可能远程重置数据。前些日子“XX大联盟”论坛多次被黑就是这个低级错误所致。
* 边界条件错误&nbs