一种基于机器学习的数据库智能化安全审计方法及系统与流程

文档序号:29358486发布日期:2022-03-23 00:42阅读:249来源:国知局
一种基于机器学习的数据库智能化安全审计方法及系统与流程

1.本发明涉及云服务技术领域,具体地说是一种基于机器学习的数据库智能化安全审计方法及系统。


背景技术:

2.随着互联网的迅速发展,数据量也在以飞快的速度不断攀升,数据的有效存储以及安全管控无疑是信息化时代至关重要的问题。数据库高效的存储性和不俗的容纳性解决了海量数据存放的难题,其应用范围愈加广泛。但与此同时,安全性的保证也成为数据库开发过程中的重中之重。
3.由于大量的敏感数据存放在数据库内,若对数据库管控、监督、审查不足,所造成的危害不可估量。而为了防止数据资源泄露、黑客入侵对数据库安全性产生的重大影响,各大数据库公司对数据库安全进行着不同程度的改进与研究。审计功能的出现为数据库安全起到举足轻重的影响。
4.审计日志中会记录数据库内全部的操作流程,如:操作者及其ip地址、操作时间、操作内容等。一旦安全问题出现,通过审计日志的查看不仅能够排查出被影响的数据范围,并且可以达到追溯问题根源的目的,以此制定出的安全策略也更加可靠。因此,审计功能的重要性也就由此展现。
5.目前数据库基本都是由管理员进行人工管理的,如图3所示,数据库管理员需要自行进行审计日志查看、问题排查、风险的判定、安全策略拟定,安全方案的执行等操作。但这样同样会产生一些弊端,一般来说,风险是由于操作者的恶意篡改、频繁高危操作构成的。而操作可能是由人类进行的,可能是脚本执行的,也可能是机器主导的。若管理员通过审计日志逐条筛查进行问题的判断,大量的日志内容会使得管理员分析工作的复杂度急剧增加。从效率的角度出发,人工进行风险判断,以及应对风险的安全策略的执行,所形成的任务量是巨大的。在如此大量的日志中筛查出高危操作,势必会导致一些风险瞒天过海,逃过筛查。


技术实现要素:

6.本发明的技术任务是针对以上不足之处,提供一种基于机器学习的数据库智能化安全审计方法及系统,通过对数据库审计日志的智能化分析,提高了数据库风险的辨别能力,以及日志的审查效率;通过对安全策略的精准执行,以及对数据、角色及用户的智能管控,为数据库提供有效的安全防护。
7.本发明解决其技术问题所采用的技术方案是:
8.一种基于机器学习的数据库智能化安全审计方法,包括审计日志的筛查和安全策略的执行,
9.通过数据库审计日志对操作的发起者、操作时间、操作者ip地址、操作内容、操作对象、所需操作权限维度进行记录;其中,操作内容及操作对象的记录极为重要,操作内容
中包含普通dql数据库查询语言,如:表查询语句select;同时也包含高危的dml数据库操纵语言,如:表删除语句drop,表内数据删除语句delete;详细的日志记录能够更好的对机器学习模型进行训练,达到预测风险的效果;
10.数据库内的文件被标定为不同的安全等级,使用安全审计模型,通过审计日志判断出的风险等级,采取对应的安全策略,达到数据库安全防护的目的;
11.所述安全审计模型使用机器学习中的监督学习方法进行训练,将准备好的审计日志传入模型中,训练其辨别风险等级,并准确执行对应的安全策略。
12.本方法利用对智能化安全审计模型进行的大量数据库风险操作的监督学习训练,使模型在实际使用过程中,对数据库风险产生自主预测的效果。同时,对应不同等级的风险,系统精准执行匹配的安全策略。
13.通过智能化机器学习模型对大量审计日志的实时筛查,辨别数据库内风险操作,从而降低人工审查的失误率,提高风险监查效率;
14.经过数据库安全策略的不断充实、完善,以及安全审计模型在实际操作过程中对审计日志的实时学习,可以使其应对不同风险操作可进行高契合度的安全策略适配,达成数据库安全的全面管理;
15.基于对审计日志审查而判定出的风险操作,执行与之相匹配的安全策略,提高管理员工作效率。
16.优选的,所述安全审计模型的输出包括危险ip地址、安全风险等级和安全策略建议。
17.优选的,所述安全等级,5级为最高等级,1级为最低等级;非常重要的数据表,或涉及敏感信息的表,如:包含姓名、地址、身份证号、工资、住址等信息的表,可标定为最高安全等级5级;较为普通的数据表可标定为最低安全等级1级,如:学生班级信息表;根据不同的使用需求,安全等级的标定可进行自定义化的设置。
18.由此,安全审计模型可以通过审计日志判断出的风险等级,采取对应安全策略的效果,达到数据库安全防护的目的。
19.优选的,所述安全审计模型使用机器学习中的监督学习方法进行训练,
20.首先收集数据库的历史审计日志,同时,在其中添加多种人为制造的具有威胁性的操作语句,包括删除语句、大量表数据更新语句、表结构修改语句;
21.然后,将得到的日志进行数据预处理工作,在预处理过程中,对日志中的空值、乱码进行排查,排除无效日志内容,保证审计日志的完整性,和训练的有效性;在得到训练所需要的数据后,输入至模型当中,进行机器学习;
22.建立在既定事实基础上,基于已知的输入语句的风险性,使模型用归类法对数据进行风险评级,生成决策树,从而达到风险预测的目的;同时,若出现威胁性的ip地址,该地址也会被记录,并增加该地区风险等级,当地区风险等级达到一定水平后,后续检测到该地区ip地址登录时,会自动向管理员进行告警。
23.安全审计模型在经过多种审计日志的输入、学习后,能够得到深度分析能力及大量经验。而其对风险操作也能达到高效、敏感的识别能力。一旦发现风险存在,便与安全策略进行比对,精准执行对应的安全策略。
24.进一步的,所述删除语句包括数据库删除、模式删除、表删除、列删除、行删除。
25.优选的,所述安全策略,若审计日志内的操作被判定为低风险操作,则会向管理员自动发送邮件告警,以作警示;若操作被判定为中风险操作,监控系统在发送邮件告警的同时,会将该操作者进行锁定,阻止其登录,防止进行下一步危险操作;而若操作被判定为最高风险等级,则除邮件告警、登录锁定外,会对该操作者的数据修改操作进行立即回滚,以此保证数据的安全性。
26.进一步的,对审计日志中的每条数据进行aes加密保护,保证审计记录的真实性和安全性。
27.对每条审计日志执行加密手段,保证所审核日志内容的完整性、隔离性、安全性。
28.由于审计日志中的记录是判断数据库是否存在风险的关键所在,审计记录被恶意篡改带来的风险是巨大的。因而系统会对审计日志中的每条数据进行aes加密保护,这样保证了审计记录的真实性和安全性。同时,若日志在解密过程中意外产生数据损坏的情况,影响的单条数据对数据库的整体安全并不构成巨大威胁。
29.本方法利用机器学习的智能化特性,对审计日志进行解析及风险评估。在发现风险的第一时间,对数据库进行安全策略的执行,及角色用户的控制,提高数据库的安全等级。同时,利用机器学习读取审计日志的高效性,提高风险排查的效率,降低人工排查的任务量及出错率。
30.本发明还要求保护一种基于机器学习的数据库智能化安全审计系统,其特征在于,包括审计日志的筛查模块和安全策略的执行模块,
31.该系统实现上述的基于机器学习的数据库智能化安全审计方法。
32.本发明还要求保护一种基于机器学习的数据库智能化安全审计装置,包括:至少一个存储器和至少一个处理器;
33.所述至少一个存储器,用于存储机器可读程序;
34.所述至少一个处理器,用于调用所述机器可读程序,执行上述的基于机器学习的数据库智能化安全审计方法。
35.本发明还要求保护计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行上述的基于机器学习的数据库智能化安全审计方法。
36.本发明的一种基于机器学习的数据库智能化安全审计方法及系统与现有技术相比,具有以下有益效果:
37.本方法通过使用智能化的安全审计模型,为数据库提供全方位安全保护,极大提高审计日志中风险操作的筛查效率,也极度降低了人工审查日志中风险操作的失误率。同时,模型能够对不同等级的风险精准执行匹配的安全策略,降低人工执行安全策略的工作量及复杂度。
附图说明
38.图1是本发明实施例提供的基于机器学习的数据库智能化安全审计方法的架构图;
39.图2是本发明实施例提供的基于机器学习的数据库智能化安全审计方法实现流程示图;
40.图3是本发明背景技术中的目前数据库由管理员进行人工管理的示图。
具体实施方式
41.下面结合附图和具体实施例对本发明作进一步说明。
42.一种基于机器学习的数据库智能化安全审计方法,包括审计日志的筛查和安全策略的执行,
43.通过数据库审计日志对操作的发起者、操作时间、操作者ip地址、操作内容、操作对象、所需操作权限6个维度进行记录;
44.其中,操作内容及操作对象的记录极为重要。操作内容中包含普通dql数据库查询语言,如:表查询语句select。同时也包含高危的dml数据库操纵语言,如:表删除语句drop,表内数据删除语句delete。详细的日志记录能够更好的对机器学习模型进行训练,达到预测风险的效果。
45.数据库内的文件被标定为不同的安全等级,使用安全审计模型,通过审计日志判断出的风险等级,采取对应的安全策略,达到数据库安全防护的目的;
46.所述安全等级,5级为最高等级,1级为最低等级;非常重要的数据表,或如:包含姓名、地址、身份证号、工资、住址等涉及敏感信息的表,可标定为最高安全等级5级;较为普通的数据表可标定为最低安全等级1级,如:学生班级信息表;根据不同的使用需求,安全等级的标定可进行自定义化的设置。由此,安全审计模型可以通过审计日志判断出的风险等级,采取对应安全策略的效果,达到数据库安全防护的目的。
47.所述安全审计模型使用机器学习中的监督学习方法进行训练,将准备好的审计日志传入模型中,训练其辨别风险等级,并准确执行对应的安全策略。所述安全审计模型的输出包括危险ip地址、安全风险等级和安全策略建议。如图2所示,
48.首先收集数据库的历史审计日志,同时,在其中添加多种人为制造的具有威胁性的操作语句,包括删除语句(数据库删除、模式删除、表删除、列删除、行删除)、大量表数据更新语句、表结构修改语句;
49.然后,将得到的日志进行数据预处理工作,在预处理过程中,对日志中的空值、乱码进行排查,排除无效日志内容,保证审计日志的完整性,和训练的有效性;在得到训练所需要的数据后,输入至模型当中,进行机器学习;
50.建立在既定事实基础上,基于已知的输入语句的风险性,使模型用归类法对数据进行风险评级,生成决策树,从而达到风险预测的目的;同时,若出现威胁性的ip地址,该地址也会被记录,并增加该地区风险等级,当地区风险等级达到一定水平后,后续检测到该地区ip地址登录时,会自动向管理员进行告警。
51.安全审计模型在经过多种审计日志的输入、学习后,能够得到深度分析能力及大量经验。而其对风险操作也能达到高效、敏感的识别能力。一旦发现风险存在,便与安全策略进行比对,精准执行对应的安全策略。
52.所述安全策略,若审计日志内的操作被判定为低风险操作,则会向管理员自动发送邮件告警,以作警示;若操作被判定为中风险操作,监控系统在发送邮件告警的同时,会将该操作者进行锁定,阻止其登录,防止进行下一步危险操作;而若操作被判定为最高风险等级,则除邮件告警、登录锁定外,会对该操作者的数据修改操作进行立即回滚,以此保证
数据的安全性。
53.由于审计日志中的记录是判断数据库是否存在风险的关键所在,审计记录被恶意篡改带来的风险是巨大的。因而系统会对审计日志中的每条数据进行aes加密保护,这样保证了审计记录的真实性和安全性。同时,若日志在解密过程中意外产生数据损坏的情况,影响的单条数据对数据库的整体安全并不构成巨大威胁。
54.本方法利用对智能化安全审计模型进行的大量数据库风险操作的监督学习训练,使模型在实际使用过程中,对数据库风险产生自主预测的效果。同时,对应不同等级的风险,系统精准执行匹配的安全策略。
55.通过智能化机器学习模型对大量审计日志的实时筛查,辨别数据库内风险操作,从而降低人工审查的失误率,提高风险监查效率;
56.经过数据库安全策略的不断充实、完善,以及安全审计模型在实际操作过程中对审计日志的实时学习,可以使其应对不同风险操作可进行高契合度的安全策略适配,达成数据库安全的全面管理;
57.对每条审计日志执行加密手段,保证所审核日志内容的完整性、隔离性、安全性;
58.基于对审计日志审查而判定出的风险操作,执行与之相匹配的安全策略,提高管理员工作效率。
59.随着安全策略的不断充实以及安全审计模型对新鲜日志的不断学习,风险等级会被划分的更为细致,而相对应的安全防护方案也会更加丰富,基于机器学习的安全审计模型所带来的优势会愈加明显。同时,面对多用户进行多种安全策略的执行效率也会显著提升。在本实现方案的辅助下,管理员操纵、管理数据库也会更加得心应手。一个能够通过审计日志的筛查,帮助数据库管理员实时检测风险的智能模型,无疑极大的提高了管理员的工作效率。在发现风险后,第一时间执行的安全保护也为数据库带来巨大的安全性和可靠性。
60.本发明实施例还提供了一种基于机器学习的数据库智能化安全审计系统,其特征在于,包括审计日志的筛查模块和安全策略的执行模块,
61.该系统实现本发明上述实施例中所述的基于机器学习的数据库智能化安全审计方法。
62.本发明实施例还提供了一种基于机器学习的数据库智能化安全审计装置,包括:至少一个存储器和至少一个处理器;
63.所述至少一个存储器,用于存储机器可读程序;
64.所述至少一个处理器,用于调用所述机器可读程序,执行本发明上述实施例中所述的基于机器学习的数据库智能化安全审计方法。
65.本发明实施例还提供了一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行本发明上述实施例中所述的基于机器学习的数据库智能化安全审计方法。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。
66.在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
67.用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如cd-rom、cd-r、cd-rw、dvd-rom、dvd-ram、dvd-rw、dvd+rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上下载程序代码。
68.此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
69.此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
70.上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1