目 录
一、服务器环境 ............................................................................................ 1二、WEB应用层检测 .................................................................................. 1
1、SQL注入漏洞、跨站脚本 ............................................................... 12、源代码漏洞 ...................................................................................... 33、列目录 .............................................................................................. 34、JSP文件上传 ................................................................................... 35、拒绝服务,错误页面转向 .............................................................. 46、补充说明 .......................................................................................... 4三、操作系统 ................................................................................................ 4
1、身份鉴别 .......................................................................................... 42、自主访问控制 .................................................................................. 53、安全审计 .......................................................................................... 64、剩余信息保护 .................................................................................. 65、资源控制 .......................................................................................... 7四、ORACLE数据库检测 ........................................................................... 8五、SQL数据库检测 ................................................................................... 9
一、服务器环境
系统软件:Windows Server2003数据库管理系统:ORACLE 9i JDK版本:JDK1.42
应用服务器:TOMCAT5.0 以及Apache2
二、WEB应用层检测
1、SQL注入漏洞、跨站脚本
对于网站中所有接收参数的动态页面,都要进行过滤,过滤的方法如下:
public class SecurityTool { //
/// 用于检测前台传过来的参数是否有安全隐患
/// 目前主要检测sql注入
/// 如果有发现特殊字符则删除
///
/// ///
1
}}
if(param.indexOf(\{ param=param.replaceAll(\}
if(param.indexOf(\{ param=param.replaceAll(\}
if(param.indexOf(\{ param=param.replaceAll(\}
if(param.indexOf(\{ param=param.replaceAll(\}
if(param.indexOf(\{ param=param.replaceAll(\}
if(param.indexOf(\{ param=param.replaceAll(\}
if(param.indexOf(\{ param=param.replaceAll(\}
if(param.indexOf(\{ param=param.replaceAll(\}
if(param.indexOf(\{ param=param.replaceAll(\}
if(param.indexOf(\{ param=param.replaceAll(\} return param;
2
2、源代码漏洞
在网站中任何一个有.jsp的连接,只要把其中一个字母改成大写就会出现源代码漏
洞问题,与在IE里面查看源码不同,这个源代码漏洞会把所有写在前台的JAVA语句都显示出来。
在tomcat5.0\\conf\\web.xml文件中。默认有对小写jsp的过滤。 如
及
因为JAVA对大小写是区分的,所以还需对JSP, JSp, Jsp, jSP, jsP, jSp ,JsP进行过滤,具体内容请查看web.xml附件。这个问题修改后将不会出现代码漏洞,但会有404的错误,对于这个问题请看第5点。
3、列目录
修改tomcat5.0\\conf\\web.xml文件,listings把默认值true改为false。测试中,如果没有效果,请先清除缓存。
4、JSP文件上传
在网站互动栏目中,如果有上传附件的功能,需要过滤.jsp,.js,.exe等类型的文件,或者根据客户需求只接收某些类型的文件。
3
5、拒绝服务,错误页面转向
在webapp\\WEB-INF\\web.xml中补充对404,500错误页面转身
Webapp目录下添加error.jsp,内容为 <%@ page contentType=\<%@page isErrorPage=\ <%response.sendRedirect(\转向的路径\
6、补充说明
tomcat5.0\\conf\\Catalina\\localhost下的admin.xml, manager.xml, balancer.xml如果没有使
用,可以先把这些文件备份出来。
某些版本的tomcat5.0\\webapps下面有admin,manager的文件或文件夹,如果没有使用,需要将这些文件备份出来或直接删除。
三、操作系统
说明:对于操作系统安全方面设置,一般等ORACLE安装好后再做设置。否则有可能会影响ORACLE的安装。
1、身份鉴别
项目编号 安全建议
A) a. 启用密码必须符合复杂性要求 b. 限制密码长度最小值为8 c. 密码最短使用期限为2天 以下具体设置方法仅供参考: 点击“开始”→“管理工具”→“本地安全策略” 在安全策略→帐户策略→密码策略 双击“密码必须符合复杂性要求”→选择“已启用”→点“确定” 4
安全检查中常见问题



