5 企业案例网络安全审计系统数据库审计解决方案.docx
《5 企业案例网络安全审计系统数据库审计解决方案.docx》由会员分享,可在线阅读,更多相关《5 企业案例网络安全审计系统数据库审计解决方案.docx(14页珍藏版)》请在冰豆网上搜索。
5企业案例网络安全审计系统数据库审计解决方案
数据库审计系统
技术建议书
目次
1.综述
随着计算机和网络技术发展,信息系统的应用越来越广泛。
数据库做为信息技术的核心和基础,承载着越来越多的关键业务系统,渐渐成为商业和公共安全中最具有战略性的资产,数据库的安全稳定运行也直接决定着业务系统能否正常使用。
围绕数据库的业务系统安全隐患如何得到有效解决,一直以来是IT治理人员和DBA们关注的焦点。
做为资深信息安全厂商,结合多年的安全研究经验,提出如下解决思路:
管理层面:
完善现有业务流程制度,明细人员职责和分工,规范内部员工的日常操作,严格监控第三方维护人员的操作。
技术层面:
除了在业务网络部署相关的信息安全防护产品(如FW、IPS等),还需要专门针对数据库部署独立安全审计产品,对关键的数据库操作行为进行审计,做到违规行为发生时及时告警,事故发生后精确溯源。
不过,审计关键应用程序和数据库不是一项简单工作。
特别是数据库系统,服务于各有不同权限的大量用户,支持高并发的事务处理,还必须满足苛刻的服务水平要求。
商业数据库软件内置的审计功能无法满足审计独立性的基本要求,还会降低数据库性能并增加管理费用。
2.需求分析
随着信息技术的发展,XXX已经建立了比较完善的信息系统,数据库中承载的信息越来越受到公司相关部门、领导的重视。
同时数据库中储存着诸如XXX等极其重要和敏感的信息。
这些信息一旦被篡改或者泄露,轻则造成企业或者社会的经济损失,重则影响企业形象甚至社会安全。
通过对XXX的深入调研,XXX面临的安全隐患归纳如下:
2.1.内部人员面临的安全隐患
随着企业信息化进程不断深入,企业的业务系统变得日益复杂,由内部员工违规操作导致的安全问题变得日益突出起来。
防火墙、防病毒、入侵检测系统等常规的安全产品可以解决一部分安全问题,但对于内部人员的违规操作却无能为力。
2.2.第三方维护人员的威胁
企业在发展的过程中,因为战略定位和人力等诸多原因,越来越多的会将非核心业务外包给设备商或者其他专业代维公司。
如何有效地管控设备厂商和代维人员的操作行为,并进行严格的审计是企业面临的一个关键问题。
2.3.最高权限滥用风险
因为种种历史遗留问题,并不是所有的信息系统都有严格的身份认证和权限划分,权限划分混乱,高权限账号(比如DBA账号)共用等问题一直困扰着网络管理人员,高权限账号往往掌握着数据库和业务系统的命脉,任何一个操作都可能导致数据的修改和泄露,最高权限的滥用,让数据安全变得更加脆弱,也让责任划分和威胁追踪变得更加困难。
2.4.违规行为无法控制的风险
管理人员总是试图定义各种操作条例,来规范内部员工的访问行为,但是除了在造成恶性后果后追查责任人,没有更好的方式来限制员工的合规操作。
而事后追查,只能是亡羊补牢,损失已经造成。
2.5.系统日志不能发现的安全隐患
我们经常从各种系统日志里面去发现是否有入侵后留下来的“蛛丝马迹”来判断是否发生过安全事件。
但是,系统往往是在经历了大量的操作和变化后,才逐渐变得不安全。
另外的情况是,用户通过登录业务服务器来访问数据库等核心资产,单纯的分析业务系统或者数据库系统的日志,都无法对整个访问过程是否存在风险进行判断。
从系统变更和应用的角度来看,网络审计日志比系统日志在定位系统安全问题上更可信。
2.6.系统崩溃带来审计结果的丢失
一般来说,数据库系统都会存储操作日志,也能开启审计模块对访问进行审计,但是一旦有意外发生导致系统的崩溃,这些审计日志也随之消失,管理人员无法得知系统到底发生了什么。
3.审计系统设计方案
3.1.设计思路和原则
需要部署一款数据库审计系统,既能独立审计针对数据库的各种访问行为,又不影响数据库的高效稳定运行。
该系统主要从以下8个方面进行设计考虑:
Ø实用性:
由于业务系统数据在数据库中进行集中存储,故对于数据库的操作审计需要细化到数据库指令、表名、视图、字段等,同时能够审计数据库返回的信息,包括错误码和数据库响应时长,这样能够在数据库出现关键错误时及时响应,避免由于数据库故障带来的业务损失;
Ø灵活性:
审计系统可提供缺省的审计策略及自定义策略,可结合用户业务特点,对关键业务用户、操作途径、重要操作、重要表、重要字段进行过滤审计,并可指定操作事件发生时,系统的响应方式。
Ø兼容性:
审计系统应适应不同的数据库类型和应用环境,对于主流商业数据库、国产数据库的各种版本均能进行审计。
且对于不同数据库的审计策略编辑方法、日志展现能做到统一。
Ø独立性:
审计系统应独立于数据库系统存在,即使数据库或者操作系统遭到破坏,仍然要保证审计日志的准确性和完整性。
同时,审计系统的运行,对数据库系统和业务操作不应造成影响。
Ø扩展性:
当业务系统进行扩容时,审计系统可以平滑扩容。
系统支持向第三方平台提供记录的审计信息。
Ø可靠性:
审计系统能连续稳定运行,且提供足够的存储空间来存储审计日志,满足在线存储至少6个月的要求;审计系统能够保证审计记录的时间的一致性,避免错误时间记录给追踪溯源带来的影响。
Ø安全性:
分权限管理,具有权限管理功能,可以对用户分级,提供不同的操作权限和不同的网络数据操作范围限制,用户只能在其权限内对网络数据进行审计和相关操作,具有自身安全审计功能。
Ø易用性:
审计系统应能够基于操作进行分析,能够提供主体标识(即用户)、操作(行为)、客体标识(设备、操作系统、数据库系统、应用系统)的分析和灵活可编辑的审计报表。
3.2.系统设计原理
审计系统基于“网络数据流俘获→应用层数据分析→审计和响应”的基本流程实现各项功能,采用旁路接入的工作模式,使得审计系统在实现各种安全功能的同时,对数据库系统无任何影响。
审计系统主要实现以下安全功能:
Ø针对不同的数据库协议,提供基于应用操作的审计;
Ø提供数据库操作语义解析审计,实现对违规行为的及时监视和告警;
Ø提供缺省的多种合规操作规则,支持自定义规则(包括正则表达式等),实现灵活多样的策略和响应;
Ø提供基于硬件令牌、静态口令、Radius支持的强身份认证;
Ø根据设定输出不同的安全审计报告;
3.3.网络安全审计系统介绍
经过调研,网络安全审计系统(简称“系统”或者“”)是针对业务环境下的网络操作行为进行细粒度审计的合规性管理系统。
它通过对业务人员访问系统的行为进行解析、分析、记录、汇报,用来帮助用户事前规划预防,事中实时监视、违规行为响应,事后合规报告、事故追踪溯源,同时加强内外部网络行为监管、促进核心资产(数据库、服务器、网络设备等)的正常运营。
对于业务系统的核心——数据库的审计能力表现尤其出色,是国内审计数据库类型最全,解析粒度最细的审计产品。
其设计思路和产品功能满足我单位数据库审计系统的设计思路和功能要求。
网络安全审计系统能够监视并记录对数据库服务器的各类操作行为,实时、智能的解析对数据库服务器的各种操作,一般操作行为如数据库的登录,数据的导入导出、特定的SQL操作如对数据库表的插入、删除、修改,执行特定的存贮过程等,都能够被记录和分析,分析的内容可以精确到操作类型、操作对象(库、表、字段)。
可记录操作的用户名、机器IP地址、客户端程序名、操作时间等重要信息,对于关键操作的数据库返回信息,包括操作结果、响应时长、select操作返回内容也可进行记录。
同时,提供日志报表系统进行事后的分析、取证和生成审计报告。
3.3.1.审计系统功能
1.支持HA部署,产品支持主备方式
2.支持审计引擎统一管理、至少支持2个以上的引擎同时管理,审计数据统一存储、查询、分析、统计
3.支持各类数据库的审计,如Oracle、SQL-Server、DB2、Informix、Sybase、MySQL、PostgreSQL、Teradata、Cache数据库,同时包括国产数据库人大金仓(Kingbase)、达梦(DM)、南大通用(Gbase)、神通(shentong)等数据库
4.支持oracle数据库审计,并具有审计oracle中绑定变量的SQL语句的功能与技术
5.支持对Oracle数据库状态的自动监控,可监控会话数、连接进程、CPU和内存占用率等信息
6.提供对数据库返回码的知识库和实时说明,帮助管理员快速对返回错误码进行识别
7.系统能提出数据库错误信息,方便审计以及运维
8.支持数据库账号登陆成功、失败的审计,数据库绑定变量方式访问的审计,Select操作返回行数和返回内容的审计;
9.支持访问数据库的源主机名、源主机用户、SQL操作响应时间、数据库操作成功、失败的审计;支持数据库操作类、表、视图、索引、触发器、存储过程、游标、事物等各种对象的SQL操作审计。
10.支持数据库存储过程自动获取及内容审计。
11.支持Telnet协议的审计,能够审计用户名、操作命令、命令响应时间、返回码等;支持对FTP协议的审计,能够审计用户名、命令、文件、命令响应时间、返回码等
12.支持审计网络邻居(NetBIOS)的用户名、读写操作、文件名等,支持审计NFS协议的用户名、文件名等
13.支持审计Radius协议的认证用户MAC、认证用户名、认证IP、NAS服务器IP
14.支持审计HTTP/HTTPS协议的URL、访问模式、cookie、Post数据和内容
15.支持IP-MAC绑定变化情况的审计
16.支持可对SQL注入、XSS跨站脚本攻击行为的发现
17.系统应自带不少于100个缺省的审计规则库,方便用户选择使用
18.用户可自定义审计策略,审计策略支持时间、源IP、目的IP、协议、端口、登陆账号、命令作为响应条件
19.数据库审计策略支持数据库客户端软件名称、数据库名、数据库表名、数据库字段名、数据库返回码作为响应条件
20.审计策略支持字段名称和字段值作为分项响应条件
21.支持记录审计日志
22.支持界面告警、Syslog告警、SNMPtrap告警、短信告警、邮件告警
23.支持按时间、级别、源\目的IP、源\目的MAC、协议名、源\目的端口为条件进行查询
24.支持查询、统计的条件模板编辑与应用
25.数据库访问日志,支持按数据库名、数据库表名、字段值、数据库登陆账号、数据库操作命令、数据库返回码、SQL响应时间、数据库返回行数作为查询和统计条件
26.系统能精确定位,支持在多源信息系统中搜索信息
27.web访问日志,支持按URL、访问模式、cookie、页面内容、Post内容等作为查询和统计条件
28.管理员登陆支持静态口令认证,支持密码的复杂性管理,比如大小写、数字、特殊字符、长度等
29.管理员登陆支持硬件令牌认证
30.提供审计数据管理功能,能够实现对审计日志、审计报告的自动备份
31.提供磁盘存储容量不足、磁盘Raid故障等自动邮件报警
32.支持SNMP方式,提供系统运行状态给第三方网管系统,支持、syslog、SNMPTrap向外发送审计日志
33.支持Syslog方式接收第三方审计日志
34.支持连接外置存储,以扩展日志存储能力
各类数据库操作审计
目前,网络安全审计系统支持以下数据库系统的审计,是业界支持数据库种类最多的审计系统,能够满足不同用户、不同发展阶段情况下的数据库审计需求:
❑Oracle
❑SQL-Server
❑DB2
❑Informix
❑Sybase
❑Teradata
❑Mysql
❑PostgreSQL
❑Cache
❑人大金仓Kingbase数据库
❑达梦DM数据库
❑南大通用GBase数据库
❑神通Oscar数据库
对于支持SQL92语法的数据库操作均能精确审计,包括以下内容:
❑DDL:
Create,Drop,Grant,Revoke…
❑DML:
Update,Insert,Delete…
❑DCL:
Commit,Rollback,Savapoint…
❑其他:
AlterSystem,Connect,Allocate…
❑数据的导入、导出操作
❑登录操作和登录失败操作
多编码环境支持:
系统能够对采用ODBC、JDBC、OLE-DB、命令行等各种方式对数据库的访问进行审计和响应。
适用于多种应用环境,特别是在异构环境中,比如IBMAS/400通常采用EBCDIC编码方式实现telnet协议的传输、某些数据库同时采用几种编码与客户端进行通讯,若系统不能识别多种编码,会导致审计数据出现乱码,对多编码的支持是衡量审计系统环境适应性的重要指标之一,目前网络安全审计系统支持如下编码格式
❑ASCII
❑Unicode
❑UTF-8
❑UTF-16
❑GB2312
❑EBCDIC
❑。
。
。
数据库运维审计
在审计数据库操作的同时,系统也支持常用的运维协议及文件传输协议审计,能够全程记录用户在数据库服务器上的各种运维操作。
可支持的运维协议如下:
❑Telnet
❑Rlogin
❑FTP
❑SCP
❑SFTP
❑X11
❑NFS
❑Netbios
❑HTTP、HTTPS
数据库返回信息审计
网络安全审计系统支持对SQLServer、DB2、Oracle、Informix等数据库系统的SQL操作响应时间、返回码和返回内容的审计。
通过对响应时间和返回码的审计,可以帮助用户对数据库的使用状态全面掌握、及时响应故障信息,特别是当新业务系统上线、业务繁忙、业务模块更新时,通过网络安全审计系统对超长时间和关键返回码进行审计并实时报警有助于提高业务系统的运营水平,降低数据库故障等带来的运维风险。
目前网络安全审计系统支持上述数据库系统共计13000多种返回码的知识库供用户快速查询和定位问题。
业务系统三层关联
当前业务系统普遍采用三层结构:
浏览器客户端、Web服务器/中间件、数据库服务器。
通常的流程是:
用户通过浏览器客户端,利用自己的帐户登录Web服务器,向服务器提交访问数据;Web服务器根据用户提交的数据构造SQL语句,并利用唯一的帐户访问数据库服务器,提交SQL语句,接收数据库服务器返回结果并返回给用户。
在这种基于Web的业务行为访问模式下,传统的信息安全审计产品一般可审计从浏览器到Web服务器的前台访问事件,以及从Web服务器到数据库服务器的后台访问事件。
但由于后台访问事件采用的是唯一的帐户,对每个后台访问事件,难以确定是哪个前台访问事件触发了该事件。
如果在后台访问事件中出现了越权访问、恶意访问等行为,难以定位到具体的前台用户上。
举一个一个典型的例子,内部违规操作人员利用前台的业务系统,以此作为跳板对后台数据库内容进行了篡改和窃取,这种情况下,通常审计产品只能发现来自某个数据库账号,而无法判断最终的发起源头。
研究人员实现HTTP操作和数据库操作之间的关联计算,目前已经申请专利。
专利名称为“一种Web服务器前后台关联审计方法和系统”,专利受理号码:
200710121669.6。
三层关联逻辑部署图
通过这种关联分析技术,能够将审计产品从基于事件的审计,逐渐升级为基于用户业务行为的审计,在关联分析过程中采用自动建模技术,可以将前台Web业务操作和后台数据库操作行为进行对应,并形成业务访问行为模式库,同时,在该技术的基础上还可以进一步分析,发现可能的业务异常及SQL异常。
细粒度审计策略
网络安全审计系统的审计和响应功能可以简单地描述为:
“某个特定的服务(如FTP、Telnet、SQL等)可以(或不可以)被某个特定的用户(主机)怎样地访问”,这使得它提供的审计和响应具有很强的针对性和准确性。
⏹强大的数据库规则
系统能够根据访问数据库的源程序名、登陆数据库的账号、数据库命令、数据库名、数据库表名、数据库字段名、数据库字段值、数据库返回码等作为条件,对用户关心的违规行为进行响应,特别是针对重要表、重要字段的各种操作,能够通过简单的规则定义,实现精确审计,降低过多审计数据给管理员带来的信息爆炸。
⏹定制审计事件规则
网络安全审计系统提供了事件规则用户自定义模块,允许用户自行设定和调整各种安全审计事件的触发条件与响应策略。
例如,用户特别关注在telnet过程中出现rm、passwd、shutdown等命令的行为,那么用户就可以利用网络安全审计系统定义相应的审计事件规则。
这样,网络安全审计系统就可以针对网络中发生的这些行为进行响应。
⏹基于业务特征的规则库
系统可以将审计员制定的多个符合业务特征的规则进行汇总、编辑和命名,形成具备某种业务特征的规则写入用户自定义的规则库。
这样,审计员在针对某个特定业务用户制定审计策略时,可以直观地使用自命名的规则进行设置,方便了各种策略的制定和查询。
⏹特定账号行为跟踪
系统能够实现对“用户网络环境中出现的特定账号或特定账号执行某种操作后”的场景进行账号跟踪,提供对后继会话和事件的审计。
这样,管理员能够对出现在网络中的特权账号,比如root、DBA等,进行重点的监控,特别是哪些本不应出现在网络上的特权账号突然出现的事件。
⏹多种响应方式
网络安全审计系统提供了多种响应方式,包括:
❑在审计服务器中记录相应的操作过程;
❑在日常审计报告中标注;
❑向管理控制台发出告警信息;
❑实时阻断会话连接;
❑管理人员通过本系统手工RST阻断会话连接;
❑通过Syslog方式进行告警
❑通过SNMPTrap方式进行告警
❑通过邮件方式进行告警
⏹实时跟踪和回放
管理员可以通过审计显示中心实时地跟踪一个或多个网络连接,通过系统提供的“时标”清晰地显示不同网络连接中每个操作的先后顺序及操作结果,当发现可疑的操作或访问时,可以实时阻断当前的访问。
管理员也可以从审计数据中心中提取审计数据对通信过程进行回放,便于分析和查找系统安全问题,并以次为依据制定更符合业务特征和系统安全需求的安全规则和策略。
审计报告输出
审计系统从安全管理的角度出发,设计一套完善的审计报告输出机制。
⏹多种筛选条件
网络安全审计系统提供了强大、灵活的筛选条件设置机制。
在设置筛选条件时,审计员可基于以下要素的组合进行设置:
时间、客户端IP、客户端端口号、服务端IP、服务端端口、关键字、事件级别、引擎名、业务用户身份、资源账号等条件。
审计员可根据需要灵活地设置审计报表的各种要素,迅速生成自己希望看到的审计内容。
同时系统提供了报表模板功能,审计员无需重复输入,只需要设置模板后,即可按模板进行报表生成。
⏹命令及字段智能分析
系统能够根据审计协议的类型进行命令和字段的自动提取,用户可以选择提取后的命令或字段作为重点对象进行分析。
针对数据库类协议,可分析并形成数据库名、表名、命令等列表;针对运维类协议,可分析并形成命令等列表;针对文件操作类协议,可分析并形成文件名、操作命令等列表;通过该功能,可以简化用户对审计数据的分析过程,大大提高分析的效率。
⏹宏观事件到微观事件钻取
网络安全审计系统提供了从宏观报表到微观事件的关联,审计员可以在统计报表、取证报表中查看宏观的审计数据统计信息,通过点击相应链接即可逐步下探到具体的审计事件。
⏹自动任务支持
网络安全系统提供报表任务功能,审计员可根据实际情况定制报表生成任务;系统支持HTML、EXCEL、CSV、PDF、Word等多种文档格式的报表输出,可以通过邮件方式自动发送给审计员。
⏹数据和报表备份
网络安全审计系统提供了审计数据和报表的手动和自动备份功能,可以将压缩后的数据自动传输到指定的FTP服务器,提供每天、每周、每月、时刻的定义方式。
自身管理
⏹安全管理
网络安全审计系统的管理控制中心提供了集中的管理控制界面,审计员通过管理控制台就能管理和综合分析所有审计引擎的审计信息和状态信息,并形成审计报表。
网络安全审计系统支持权限分级管理模式,可对不同的角色设定不同的管理权限。
例如,超级管理员拥有所有的管理权限;而某些普通管理员则可能仅拥有查看审计报表的权限,某些管理员可以拥有设置审计策略或安全规则的权限。
系统提供专门的自身审计日志,记录所有人员对系统的操作,方便审计员对日志进行分析和查看。
⏹状态管理
网络安全审计系统提供CPU、内存、磁盘状态、网口等运行信息,管理员可以很轻松的通过GUI界面实现对审计数据中心、审计引擎的工作状态进行查看。
当出现错误信息时,比如Raid故障、磁盘空间不足、引擎连接问题,系统可自动邮件通知相关管理人员。
⏹时间同步管理
网络安全审计系统提供手工和NTP两种时间同步方式,通过对全系统自身的时
间同步,保证了审计数据时间戳的精确性,避免了审计事件时间误差给事后审计分析工作带来的影响,提升了工作效率。
多级分布式部署
为了方便大型网络客户的使用,适应不同的网络管理结构,系统实现了多级和分布式管理。
系统多级管理适用于多层次网络管理架构,在满足各级网络自身的审计要求基础上,总部可以对二级公司的审计系统进行管理,并对下级的审计报表进行查看,方便总部管理人员了解下级网络的安全状态。
同时,的数据中心可以管理多个引擎(包括旁路引擎和在线引擎),对多个引擎进行统一管理和维护,对审计日志进行统一的收集和分析。
系统安全性
在系统的设计中采用了严密的系统安全性设计,主要体系在以下几个方面:
1.操作系统安全性设计:
系统采用经裁减、加固的Linux操作系统。
在设计过程中,结合系统的功能要求和我公司在操作系统安全方面的技术和经验,对Linux进行了精心的裁减和加固,包括补丁修补,取消危险的、无用的服务等。
2.数据库安全性设计:
审计数据中心审计服务器的数据库是根据系统的功能要求自行设计的,在设计时已经充分考虑了安全性方面的问题。
3.模块间的通信:
各功能模块之间的通信均采用专门设计的通信协议,这些通信协议在设计时均采用了诸如CA认证、编码、签名、加密等安全技术。
对于远程维护,则采用了SSH加密传输协议。
在产品出厂测试阶段,还将进行诸如漏洞扫描之类的安全性测试,因此,我们认为系统具有很高的安全性。
业内领先的处理性能
一般来说,用户总是希望尽可能多的记录审计到的操作行为,这样也会带来一个后果,每天都要处理海量的审计日志。
系统首先解决日志完整入库的问题。
审计引擎的处理速度再高,如果审计日志不能及时录入数据库,都会给后续的追踪溯源带来麻烦,审计系统也就失去了存在的价值。
系统采用专业设计的数据库结构,并在入库方式上进行了大量的优化,从而得到了最优的入库性能——10万条/秒以上的入库速度。
然后,解决检索效率的问题。
系统针对此问题进行了专门的设计,并在日志入库的同时进行分类和统计,将一次数据库查询分布为多个预处理任务,使得日志检索时,感觉不到明显的等待和延时,极大的方便了用户的使用。
3.4.部署方案及系统配置
核心数据库Oracle系统通过主备方式接入网络,设计采用配置一台审计数据中心,一台旁路审计引擎,一台在线审计引擎。
具体部署如下图所示:
系统部署图
审计数据中心:
部署一台审计数据中心,该服务器具备一个2T的内置RAID5存储器,对网络审计引擎进行管理和控制,实现对审计数据的存储和分析。
审计数据中心的管理端口需要接入网络中,并分配一个合法的IP地址,以接收管理控制台的管理。
审计数据中心的“管理端口”需要通过网络方式与网络审计引擎的“管理端口”进行连接。
旁路审计引擎:
部署一台网络审计引擎对核心交换机上的Oracle流量进行监控和审计。
网络审计引擎配置两个信息监听端口,该端口需要连接到被监控交换机的“镜像目的端口”上,以获取原始的通信信息,从而实现各种审计和控制功能。
网络审计引擎需要设置一个“管理端口”,这个端口需要接入网络,并分配一个合法的IP地址,以接收管理控制台的管理。
在线审计引擎:
部署一台旁路审计引擎,实现对运维区域的各种运维操作进行监控、审计和阻断,该引擎自带Bypass支持,通常采用透明方式