Web服务器攻击常利用Web服务器软件和配置中的漏洞,针对这些漏洞最佳做法是遵循一些方法搭建并运行Web服务器,本文详解了Web服务器保护的一些方法。
Web安全分为两大类:
· Web服务器的安全性(Web服务器本身安全和软件配置)。
· Web应用程序的安全性(在Web服务器上运行的Java、 ActiveX、PHP、ASP代码的安全)。
Web服务器面临的攻击
Web服务器攻击利用Web服务器软件和配置中常见的漏洞。这些漏洞包括:
· 缓冲区溢出
· 文件目录遍历
· 脚本权限
· 文件目录浏览
· Web服务器软件默认安装的示例代码
· Web服务器上运行的其他软件中的漏洞,例如SQL数据库软件
让我们对上诉漏洞依个进行深入地探讨。
1.缓冲区溢出
缓冲区溢出允许恶意代码注入到应用程序,它损坏应用程序的堆栈——内存中存储应用程序代码的一个地方——并用不同的代码代替原始代码的一部分来实现攻击者的目的,例如运行特洛伊木马程序或远程控制应用程序。以下是缓冲区溢出漏洞的一个简单示例代码,使用C语言编写:
char aTmp[100];
scanf("%s",aTmp);
在第一行中,程序员声明一个长度为100的数组aTmp。在第二行中,scanf方法从控制台读取数据存到aTmp数组。代码不会检查%s 变量是否能够容纳输入数据的大小。因为程序员编码过程不对输入字符串的大小进行检查,如果给定的输入超过100个字符,就会造成缓冲区溢出。一个精心构造构的输入中可能包含汇编代码,这部分汇编代码能够获得源程序一样的运行权限。
2.目录遍历