htp_audit是为MySQL开源数据库自主研发的审计插,弥补了MySQL开源数据库产品缺乏审计功能,为数据库安全透明运行提供技术保障。
审计插件htp_audit的应用场景举例场景描述:企业发现某天数据库中的数据被人为删除了,尽管有数据备份,但因服务终止造成的损失可能高达上千万,还不计算殃及的品牌价值、用户体验等。企业必然要排查是什么原因触发的,这个删除操作是谁操作的,往往拥有数据库操作权限的人员较多,从何排查,证据在哪?
上述有关数据库的安全场景在企业中常出现,数据库作为企业业务系统的数据存储容器,类似人体的心脏和血液循环系统,数据就是企业业务系统的血液,数据库一旦出现问题就像心脏停止跳动,整个企业的生产系统或交易系统都将停止。当数据出现非正常修改的问题时,我们需要快速分析、诊断问题发生的原因,追踪数据不安全的根源,降低数据泄漏风险,进行实时风险预警,这就是通常所说的“数据库审计功能”。但是MySQL开源数据库缺失审计功能,这对于广大MySQL开源数据库用户而言是埋下了数据安全的隐患。
热璞科技开源的审计插件htp_audit,能够实时记录数据库活动,帮助用户分析、追查、诊断追踪不安全事件,保障数据安全,实时预警数据库操作风险。对MySQL数据据库DBA而言,使用审计插件htp_audit非常简便,从GitHub上直接下载htp_audit审计插件源码文件,复制到MySQL数据库源码的plugin文件夹中,编译生成htp_audit.so文件,然后在MySQL中安装使用:installpluginhtp_auditsoname'htp_audit.so';。
审计插件htp_audit的功能简述针对MySQL开源数据库的审计功能缺失,行业内也出现了一些解决的办法,例如:甲骨文公司在MySQL5.5的企业版中增加了mysql-auditplugin,只限于MySQL数据库企业版,且功能类似于general-log的方式。也有一些第三方审计插件,但都没有达成MySQL数据库的审计功能,例如:MySQL数据库中的事件类型较多,第三方审计工具未能做到对所有事件提供对应的处理函数;MySQL数据库缺少配置文件,则不能灵活地配置审计事件的类型,往往调整配置则需要重启mysqld服务,甚至修改源代码重新编译。
热璞科技的MySQL源码团队调研了企业版本审计功能、收集MySQL数据库社区、大型企业客户等诉求,设计并研发的审计插件htp_audit,能彻底做到审计全部事件、可动态在线修改配置等功能目标。审计插件htp_audit拥有以下三大特征:
全类型事件审计:MySQL开源数据库中的事件分为父类型和子类型,父类型如tableaccess含有子类型READ、INSERT、UPDATE、DELETE;父类型connection含有子类型CONNECT、DISCONNECT等,htp_audit可根据配置文件进行所有子类型事件审计,保证审计的完整性和全面性。
动态的审计配置:htp_audit在启动时会从配置文件中获取要审计的事件类型,mysqld实例在运行时也可通过全局变量htp_audit_add_rule添加需要审计的事件类型,通过htp_audit_remove_rule移除无需审计的事件类型。这就意味着在数据库运行过程中,htp_audit可以动态增加或删除要审计的事件类型,保证整个审计过程对上层业务访问和业务系统是无感知的。
发生及被审计次数展示:新增各类型事件的发生次数和配置审计事件被审计的次数,使用命令:SHOW GLOBAL STATUS LIKE "%audit%"即可查看,方便用户实时了解审计插件的运行情况,例如:事件发生状况、业务负载状况等,轻松获取数据库审计信息。
评论