1、河北全通信息技术部信息安全培训-安全评估技术,(目录) 安全评估技术,目 录,(一) 信息系统安全漏洞现状分析,1.1 “漏洞” 定义, 漏洞是存在于系统安全措施,设计,实现,内部管理等方面的缺点或弱点。这种缺点或弱点能够被使用(偶然触发或有意利用)并危害系统安全策略。,1.2 “漏洞” 分类, 技术性漏洞主要是指操作系统和业务应用系统等方面存在的设计和实现缺陷。 非技术性漏洞主要是指系统的安全策略、访问控制、权限设置、系统开发和维护等方面存在的不足或者缺陷。,1.3 信息系统安全漏洞现状,(一) 信息系统安全漏洞现状分析,SEBUG漏洞信息库漏洞攻击类型分布图 对SEBUG漏洞信息数据库中最
2、近24个月数据的统计图表。,远程溢出12.75%、本地溢出9.29%、拒绝服务6.58%等,1.4 安全漏洞入侵显著特点:远程漏洞溢出自动溢出案例增多, 从最早的1433端口、53端口、445端口等,这个端口都是MS SQL SERVER、DNS、SERVER的服务端口,随着这些服务的远程溢出漏洞被发现,攻击代码的发布,自动化的漏洞攻击程序也就随之而来。,(一) 信息系统安全漏洞现状分析,自动溢出攻击常见图例,1.5 信息系统安全漏洞分析,信息系统支撑系统,操作系统漏洞,数据库漏洞,应用系统漏洞,(一) 信息系统安全漏洞现状分析, 通过人工评估手段检测现有系统现的安全现状, 通过专业漏洞扫描工
3、具可以快速发现现有系统的开放的端口,以及验证存在的安全漏洞以及危险级别。,(一) 信息系统安全漏洞现状分析,安全总结:面对安全漏洞我们该如何应对?,(二) Windows系统安全评估技术,(二) Windows系统安全评估技术,版本补丁及检查,1、检查系统版本 输入winver 或使用其它方式检查,2、检查补丁升级情况 输入systeminfo或使用控制面板的“添加或删除程序”的“显示更新”功能进行检查,重要检查补丁安装日期以及重要的补丁号。如最新的: SMB 服务器中的漏洞可能允许远程执行代码 (KB2508429),(二) Windows系统安全评估技术,审计及账号策略检查,1、检查密码策
4、略(通过GPEDIT.MSC查看计算机配置Windows设置安全设置-账户策略-密码策略),2、检查账号锁定策略(通过GPEDIT.MSC查看计算机配置Windows设置安全设置-账户策略-账号锁定策略),对比项,对比项,不会对默认账号Administrator进行锁定,(二) Windows系统安全评估技术,审计及账号策略检查,3、检查审核策略(通过GPEDIT.MSC查看计算机配置Windows设置安全设置本地策略-审核策略),对比项,详细日志记录,(二) Windows系统安全评估技术,审计及账号策略检查,4、日志文件大小检查(通过“我的电脑”右击“管理”-事件查看器对“应用程序”、“安
5、全性”、“系统”进行设置),对比项,(二) Windows系统安全评估技术,审计及账号策略检查,5、其它安全设置(通过GPEDIT.MSC查看计算机配置Windows设置安全设置本地策略-用户权限分配及安全选项),(二) Windows系统安全评估技术,注册表项检查,1、注册表项检查(regedit按照各项目的路径进行检查),(二) Windows系统安全评估技术,系统服务检查,1、不必要的服务及危险服务检查(通过net shart进行检查),(二) Windows系统安全评估技术,其它安全检查,(三) Linux系统安全评估技术,(三) Linux系统安全评估技术,版本补丁及检查,1、检查内
6、核版本 输入 uname -a,2、检查系统版本 输入“more /etc/redhat-release”,(三) Linux系统安全评估技术,账号及账号策略检查,1、检查root账号是否唯一(more /etc/passwd 检查UID是否都唯一 UID为0的账号应该为root账号,或直接输入“grep :x:0: /etc/passwd”),2、检查/etc/passwd 文件的是否有不必要用户,(三) Linux系统安全评估技术,账号及账号策略检查,3、密码策略检查(输入” more /etc/login.defs ”),(三) Linux系统安全评估技术,访问控制类检查,1、访问控制类
7、检查,(三) Linux系统安全评估技术,不必要服务检查,1、访问控制类检查,(三) Linux系统安全评估技术,其它安全检查,(四 ) AIX 系统安全评估技术,(四 ) AIX 系统安全评估技术,版本补丁及检查,1、检查系统版本 输入 “uname a”,(四 ) AIX 系统安全评估技术,账号及账号策略检查,1、检查root账号是否唯一(more /etc/passwd 检查UID是否都唯一 UID为0的账号应该为root账号,或直接输入“grep :x:0: /etc/passwd”),2、检查/etc/passwd 文件的是否有不必要用户,(四 ) AIX 系统安全评估技术,账号及账
8、号策略检查,3、密码策略检查(输入” more /etc/security/passwd”),(四 ) AIX 系统安全评估技术,访问控制类检查,1、访问控制类检查,(四 ) AIX 系统安全评估技术,不必要服务检查,(四 ) AIX 系统安全评估技术,不必要服务检查,默认开放的服务,shell rsh服务,尽可能禁用该服务。使用“安全shell“作为替代login rlogin服务,易于遭受IP欺骗与DNS欺骗,数据明文传输,建议使用安全shell代替该服务exec 远程执行服务,以root用户身份运行,要求输入一个用户标识和密码,它们将不受保护进行传递,该服务是非常容易遭到监听 的,建议禁
9、用。ntalk 允许用户相互交谈,以root用户身份运行,除非绝对需要,否则禁用。daytime 废弃时间服务(仅测试),以root用户身份运行,可用作TCP与UDP服务,仅对测试使用,并为”拒绝服务PING”攻击提供机会,建议禁用time 废弃时间服务,由rdate命令使用的inetd的内部功能 ,该服务是过时的,使用ntpdate替代。,(四 ) AIX 系统安全评估技术,其它安全检查,(四 ) AIX 系统安全评估技术,其它安全检查,(五 ) Tomcat中间件全评估技术,(五) Tomcat中间件安全评估技术,版本检查,1、检查系统版本查看方法:1、WINDOWS系统请检查X:Tomc
10、at Xlogscatalina*.log文件中的版本信息,如信息:“ Starting Servlet Engine: Apache Tomcat/6.0.14” 2、unix(linux)系统请检查/usr/local/tomcat/logs/catalina.out文件中的版本信息,如信息:“ Starting Servlet Engine: Apache Tomcat/6.0.14” ;如不在此路径请使用命令“find / -nmae catalina.out”查找。,(五) Tomcat中间件安全评估技术,管理口令检查,1、检查管理口令查看方法: 检查$CATALINA_HOME/c
11、onf/tomcat-users.xml文件内容, 例:注:部分版本默认没设密码或设置为弱口令。,(五) Tomcat中间件安全评估技术,访问控制,1、 TOMCAT Manager 设置了管理IP地址 查看方法: 检查$CATALINA_HOME/conf/server.xml文件中 示例:或,(五) Tomcat中间件安全评估技术,访问控制,2、应用服务器的远程关闭功能的端口及口令检查 查看方法: 检查server.xml文件中上面值需修改为其他 如: ,(五) Tomcat中间件安全评估技术,访问控制,3、 tomcat是否禁用浏览目录功能 查看方法: 查看WEB.XML文件把listi
12、ngs参数设置成false,如 listings false. ,(五) Tomcat中间件安全评估技术,日志审计,1、是否启用日志功能 查看方法: 查看检查$CATALINA_HOME/conf/server.xml 一般默认设置如: 日志启用时应无 此两个标志符。 如:,(五) Tomcat中间件安全评估技术,日志审计,2、日志是否启用详细记录选项 查看方法: 查看检查$CATALINA_HOME/conf/server.xml 示例:pattern=“combined“ 记录的日志内容更详细,fileDateFormat=“yyyy-MM-dd.HH“,会让日志文件按小时进行滚卷, 比默
13、认的按天滚卷要好些,尤其是访问量大的网站,可以考虑写成fileDateFormat=“yyyy-MM-dd.HH.mm“,就会是每分钟一个日志文件了。,(五) Tomcat中间件安全评估技术,其它安全检查,1、是否使用高权限帐户启动TOMCAT 查看方法: 检查: 1、windows环境下打开程序-管理工具-服务-打开名称为APACHE TOMCAT 的服务选择-登录选项卡查看此帐户项为普通用户(非ADMINISTRATORS组用户和SYSTEM用户,通过检查管理员组确定该启动帐户非管理员帐户)。 2、()使用ps ef | grep tomcat 命令检查TOMCAT的系统进程是否由非ROO
14、T用户启动,(五) Tomcat中间件安全评估技术,其它安全检查,2、是否删除不需要的管理应用和帮助应用 查看方法: 检查/TOMCAT/webapps/*和/TOMCAT/server/wenapps/*下的所有文件是否被删除。,(六 ) Oracle数据库全评估技术,(六) Oracle数据库安全评估技术,系统版本及补丁检查,检查方法: 1. 以sqlplus /as sysdba登陆到sqlplus环境中 2. Select * from v$version; 3. 检查输出结果: 9.2.0.8 10.1.0.5 10.2.0.4 11.1.0.7参考建议值:Oracle 10g以上,
15、(六) Oracle数据库安全评估技术,账号管理和授权,1、锁定或删除不需要的帐号检查方法: 1.以sqlplus /as sysdba登陆到sqlplus环境中 2.执行查询:SELECT username, password, account_status FROM dba_users; 3.分析返回结果,(六) Oracle数据库安全评估技术,账号管理和授权,2、禁用 SYSDBA 角色的自动登录检查方法: 检查$ORACLE_HOME/network/admin/sqlnet.ora 中关于SQLNET.AUTHENTICATION_SERVICES的设置为:NTS或NONE如果使用了
16、SQLNET.AUTHENTICATION_SERVICES=(NTS) 则说明可以使用OS认证就,只要conn / as sysdba 就可以登陆 但如果注释掉或SQLNET.AUTHENTICATION_SERVICES=(none) 必须要使用conn sys/passwordoracle as sysdba才能登陆 1、在windows下,SQLNET.AUTHENTICATION_SERVICES必须设置为NTS或者ALL才能使用OS认证;不设置或者设置为其他任何值都不能使用OS认证。 2、在linux下,在SQLNET.AUTHENTICATION_SERVICES的值设置为ALL
17、,或者不设置的情况下,OS验证才能成功;设置为其他任何值都不能使用OS认证。,(六) Oracle数据库安全评估技术,用户密码策略检查,(六) Oracle数据库安全评估技术,用户密码策略检查,默认情况如下:,(六) Oracle数据库安全评估技术,用户密码策略检查,2、检查默认账号密码情况,SQL select username “User(s) with Default Password!“2 from dba_users3 where password in4 (E066D214D5421CCC, - dbsnmp5 24ABAB8B06281B4C, - ctxsys6 72979A9
18、4BAD2AF80, - mdsys7 C252E8FA117AF049, - odm8 A7A32CD03D3CE8D5, - odm_mtr9 88A2B2C183431F00, - ordplugins10 7EFA02EC7EA6B86F, - ordsys11 4A3BA55E08595C81, - outln12 F894844C34402B67, - scott13 3F9FBD883D787341, - wk_proxy14 79DF7A1BD138CF11, - wk_sys15 7C9BA362F8314299, - wmsys16 88D8364765FCE6AF, -
19、xdb17 F9DA8977092B7B81, - tracesvr18 9300C0977D7DC75E, - oas_public19 A97282CE3D94E29E, - websys20 AC9700FD3F1410EB, - lbacsys21 E7B5D92911C831E1, - rman22 AC98877DE1297365, - perfstat23 66F4EF5650C20355, - exfsys24 84B8CBCA4D477FA3, - si_informtn_schema25 D4C5016086B2DC6A, - sys26 D4DF7931AB130E37) - system ;,(六) Oracle数据库安全评估技术,用户密码策略检查,3、检查DBA用户组是否存在其它用户,检查方法: 1、windows 下通过”net localgroup ora_dba”,2、linux 或unix下通过”groups dba”,(七 ) Nessus弱点扫描器,(七) Nessus弱点扫描器,Nessus弱点扫描器,(七) Nessus弱点扫描器,Nessus弱点扫描器,(七) Nessus弱点扫描器,Nessus弱点扫描器,(七) Nessus弱点扫描器,Nessus弱点扫描器,谢谢!,