1 引言
信息系统遭受入侵的主要原因是系统存在漏洞,漏洞也叫脆弱性,是信息系统在设计、编码、实现、配置、运行中有意或无意产生的。漏洞是信息系统中客观存在的,它的存在并不能导致对系统的损害,但是攻击者可以利用漏洞对系统实施攻击,在机密性、完整性和可用性等方面造成损害。
2 信息系统安全风险测评
在信息系统安全运维工作中,开展安全风险评估和渗透测试,是发现网络安全问题和缺陷、弥补安全漏洞、确保系统稳定运行的有效手段。通过网络拓扑分析、漏洞扫描工具、渗透测试、安全基线配置检查等手段对信息资产产生的安全漏洞进行识别,确定漏洞可利用程度,评估影响范围及危害程度。
以一次安全测评服务为例,对40个互联网业务系统的295台主机进行安全检测,其中32项业务系统的64台主机被检测到漏洞,分别占比例80%和21.7%。共计发现中高危漏洞152个,其中紧急漏洞5个,高危漏62个,中危漏洞85个。这些系统不同程度地存在Web应用安全配置错误、Web应用注入漏洞、XSS跨站漏洞、Web服务的默认管理网页、中间件使用了有缺陷的版本、弱口令等问题。这些问题是业务系统面临的主要威胁,存在极大的安全风险,在开放的互联网环境中,将严重威胁业务系统信息安全。
3 信息安全漏洞危害实例分析
系统漏洞对安全造成的威胁不限于它的直接可能性,一次成功的入侵行为往往不需要高超的技术,只需要收集、过滤信息,层层深入,利用系统安全漏洞实施攻击,获取管理员权限,获取系统敏感信息,破坏系统及网络的正常运行。下面分析利用风险测评中发现的安全漏洞进行攻击的实例,阐述安全漏洞对系统的危害性。
目录遍历漏洞是由Web服务器或者Web应用程序对用户输入的文件名称的安全性验证不足而导致的一种安全漏洞,使得攻击者通过利用一些特殊字符就可以绕过服务器的安全限制,访问任意的文件,甚至执行系统命令。
攻击者通过NMAP扫描,确定系统内部分服务器开放了Web服务和SSH服务。使用Web漏洞扫描软件进行扫描,发现存在一个目录遍历漏洞。仔细查看目录中文件内容,发现一个文件中保存了数据库登录的用户名和密码。结合NMAP的扫描结果,可以发现一台服务器运行MySQl数据库服务,立即使用Navicat For MySQL进行连接,成功登录一名有经验的攻击者,会进一步联想到SSH的登录用户可能与数据库登录名一样,于是打开PuTTY进行SSH连接测试,结果成功登录主机。如图1所示。
至此,已经完成了一次入侵行为,数据库、主机都被占领,可以安装后门、发起DDoS攻击等破坏行为。目录遍历漏洞是一种常见的Web漏洞,一般危害性不大,属于中危漏洞。但是攻击者利用该漏洞获得存储了数据库登录用户名和密码的敏感文件,可以直接登录操作系统,进而控制主机,对系统安全造成极大危害。
在日常安全运维工作中,需要加强Web应用的目录权限配置,一般情况下,禁止目录遍历功能,尤其是存放了配置文件的目录。加强日常的密码管理,单从密码本身而言,密码设置可能不一定简单,但为了使用方便,数据库和SSH登录都使用了相同的用户名和密码,导致突破一点,攻破全局。
4 信息安全漏洞的防范
4.1信息安全漏洞的产生
分析安全测评中发现的漏洞情况,我们可以总结出系统漏洞产生主要有几个方面。
(1)资产安全管理不规范。主要表现在资产责任单位、责任人不明确,缺乏有效完整的资产列表,资产上线流程不规范等。造成出现问题难以快速定位资产物理位置;未经安全检查、安全加固直接上线运行的主机存在安全漏洞,可被攻击者利用。
(2)系统配置存在安全问题。例如运维中为了方便管理,启用TRACE、Telnet服务,Web应用、SSH服务使用默认用户名和口令等,目录遍历、敏感信息泄露、弱口令等漏洞都是由于不安全配置引起的,是攻击者收集信息的利用点。
(3)系统运行版本低存在安全漏洞。任何系统软件都存在不同程度的漏洞,定期进行系统升级、打补丁,可以有效防止非法入侵。有些系统建成后运行稳定,系统运维人员忽略了此项工作,或者担心软件升级导致系统运行不正常,从未进行软件升级,已经公布出的高危漏洞存在于系统中,使系统易受到攻击。
( 4 ) 研 发 过 程 缺 乏 安 全 管 理 规 范 。 例 如SQL注入和XSS跨站漏洞都是由于没有对输入的字符进行严格检查和过滤造成的;越权访问漏洞是研发过程中没有进行充分的功能和权限测试,导致通过修改某些参数,就可以访问到其他用户的信息,进行非法操作。
4.2 信息安全漏洞防范策略
信息系统设计、建设、运行的生命周期各阶段都要建立安全风险管理与控制,采取必要的防范措施,减少漏洞生成,保障系统安全。
(1)加强系统运维、开发人员安全意识。系统设计应满足安全需求,规范安全编码要求,定期进行系统补丁升级工作。加强安全培训,提升开发人员安全开发能力,掌握安全检查技能,落实安全管理制度,减少系统漏洞的产生。
(2)业务系统上线前进行全面安全检测。检查工作包括信息资产清单登记、漏洞扫描与渗透测试,完成检查中发现问题的整改,由安全管理部门审核后正式上线提供业务服务。
(3)落实安全基线合规性检查。部分资产脆弱性是由于配置缺陷造成的,如目录遍历、存在示例页面、使用默认错误提示页面等,系统上线前需要根据安全配置基线来纠正这些错误,确保安全配置符合要求,尽可能控制安全风险。
(4)部署安全审计设备。结合实际业务应用,配置合理的、细粒度、符合等级保护要求的安全审计策略。审计对象要覆盖到每个用户和应用系统的重要安全事件,审计记录内容要全面详实。
(5)持续开展安全风险测评。信息安全是一个动态的防护过程,一次安全测试完成不代表系统就永远安全。系统运行一段时间后,当前使用的系统、中间件、数据库等会暴露出新的漏洞,需要持续开展安全测试。
……