美国服务器主机的安全隐患有:1、物理路径泄露,用户请求出错;2、目录遍历,目录附加其它编码;3、执行任意命令,执行任意操作系统命令;4、缓冲区溢出,没有合适处理用户提交的超长请求;5、拒绝服务,特殊目录、超长URL、超长HTTP Header域等;6、条件竞争,系统文件重写;7、CGI漏洞,利用服务漏洞执行命令等;
具体分析如下:
物理路径泄露
物理路径泄露是由于美国服务器处理用户请求出错导致的,包括通过提交一个超长请求或某个特殊请求,或请求一个Web服务器上不存在的文件,而这些请求都有个共同特点,就是被请求的文件肯定属于CGI脚本,而不是静态HTML页面,因而导致美国非完全物理路径泄露。
2:目录遍历
目录遍历对于美国服务器来说并不多见,主要是通过对任意目录附加“../”,或是在有特殊意义的目录附加“../”,或是附加“../”的一些变形,如“..”或“..//”等,或甚至附加其编码都可能导致美国服务器的目录遍历,早期常见的美国服务器IIS二次解码漏洞和Unicode解码漏洞都可以看作是变形后的编码。
3:执行任意命令
执行任意命令即美国服务器执行任意操作系统命令,主要包括两种情况,一是通过遍历目录,如前面提到的二次解码和UNICODE解码漏洞来执行系统命令,另一种就是美国服务器把用户提交的请求作为SSI指令解析,因此导致执行任意命令。
4:缓冲区溢出
缓冲区溢出漏洞是由于美国服务器没有对用户提交的超长请求进行合适的处理,这种请求可能包括超长URL,超长HTTP Header域,或其它超长的数据,而这种漏洞可能会导致美国服务器执行任意命令或是拒绝服务,结果取决于构造的数据。
5:拒绝服务
拒绝服务产生的原因较多,主要包括特殊目录、超长URL、超长HTTP Header域、畸形HTTP Header域或DOS设备文件等,由于美国服务器在处理这些特殊请求时不知如何反应或处理方式不当,因此导致出错终止或挂起。
6:条件竞争
条件竞争主要是针对一些管理服务器来说,这类美国服务器一般是以System或Root身份运行的,当它们需要使用一些临时文件时,在对文件进行写操作之前没有对文件的属性进行检查,一般可能导致美国服务器重要系统文件被重写,甚至获得系统控制权。
7:CGI漏洞
这是通过CGI脚本存在的安全漏洞,比如暴露敏感信息、利用某些服务漏洞执行命令、应用程序存在远程溢出、非通用CGI程序的编程漏洞等,都会导致美国服务器CGI漏洞的存在。