首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

技术分享 | MySQL 审计功能实现方案

---- 背景 鉴于目前MySQL审计需求不断深入扩张,以提高数据资产的安全,使得数据库愈来愈规范化管理,数据库实现审计功能成为必要安全环节。...众所周知,MySQL 社区版是不带审计插件的(Audit Plugin),那么该如何实现审计功能呢?我们自然会想到使用binlog日志做审计,因为binlog日志本就记录着数据库上的所有改变。...: undefined symbol: plugin_thdvar_safe_update) 结束语 本文介绍了三种实现审计功能的方案,各个方案都有自己的优缺点。...如果仅仅记录普通用户的登录信息就能够满足审计需求,那就选择第一种方案(init_connect参数)再好不过了。如果想要实现更全面的审计功能,那么第二种或者第三种方案会更加合适。...总之,根据审计需求来选择自己认为最合适的方案吧。另外,在实际使用之前,请务必做好充分的测试工作! 本文关键字:#审计#

2.4K30

MySQL审计

线上的数据库,开发可以直接navicat软件直接操作。一旦发生数据泄露,后果严重。需要禁止使用navicat,使用命令行操作,并且能记录每个开发执行的SQL语句。...在跳板机上面写了一个shell脚本,开发只能通过执行shell脚本,来连接数据库 环境如下: 跳板机-->centos7-->192.168.78.133 MySQL-->centos6.5-->192.168.78.128...1.在跳板机安装php,mysql yum -y install php mariadb-server mariadb mariadb-devel 启动数据库 systemctl start mariadb...2.创建数据库和表 进入数据库 mysql -u root 创建数据库 CREATE DATABASE audit DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci...MySQL" --menu "请选择MySQL" 20 40 10 \ "1" "db_base" \ "2" "退出程序" \ 3>&1 1>&2 2>&3` #数字匹配 if [ $?

1.8K10
您找到你想要的搜索结果了吗?
是的
没有找到

简单实现MySQL数据库的日志审计

0x0 背景 由于MySQL社区版没有自带的审计功能或插件,对于等级保护当中对数据库管理的要求的就存在一定的不满足情况的,抛开条条框框不说数据库的日志是值得研究的,通过收集数据库的日志到企业SOC平台便于安全事件的溯源与故障分析...根据等级保护内容第四章“数据库管理系统安全技术要求”中 第四节“数据库安全审计”中明确提出数据库管理系统的安全审计应: 1. 建立独立的安全审计系统; 2. 定义与数据库安全相关的审计事件; 3....设置专门的安全审计员; 4. 设置专门用于存储数据库系统审计数据的安全审计库; 5. 提供适用于数据库系统的安全审计设置、分析和查阅的工具。...0x1 部署插件 为了节省购买一些安全设备的费用,可以尝试使用一些开源的日志审计插件。Mysql-audit是macfee公司基于percona开发的MySQL的SQL审计插件。...通过插件的方式可以实现mysql日志的审计通过ELK的框架实现日志的保存与分析,再通过后期写一些脚本分析可以实现安全检测与业务分析等多个功能,关键是零成本特别适合那些”一个人的安全部”有此需求的同行们.

1.8K41

MySQL 8.0 数据库审计日志平台部署

数据库审计平台(简称DB Audit),实时记录用户操作数据库的行为,对数据库操作进行细粒度审计的合规性管理,对数据库遭受到的风险行为进行实时告警。...目前有两种技术方案。第一种:是部署在数据库服务器的所在网络,采用旁路监听方式截取用户访问数据库的TCP头报文,该系统是由数据采集、数据处理和安全检测三个模块组成。...使管理人员对用户的行为一目了然,真正做到数据库操作行为可监控,违规操作可追溯。本文以第二种方案介绍,借助LogAnalyzer打造轻量级数据库审计日志平台。...的模块3) 配置RULES,将所期望的日志信息记录于专用存放syslog审计日志的MySQL数据库服务器。...三、准备一台专用存放syslog审计日志的MySQL数据库服务器1)在专用存放syslog审计日志的MySQL数据库准备syslog的用户账号mysql> CREATE USER 'rsyslog'@'

76880

mysql数据库高可用方案_MySQL集群方案

slave 的中继日志中,接着mysql slave 的 sql 线程从中继日志中读取中继日志,应用到mysql slave的 数据库中,这样就实现了主从数据同步功能。...mysql主从同步逻辑 不过 mysql 自身没有实现 failover,所以当 master 异常的时候,需要制定策略去实现 failover 并处理数据库切换。...默认的连接方式,应用 tomcat 或其他 client 连接数据库的默认的方式是mysql 驱动,就没法连接一个数组。...前面提到以前版本(5.7以前) mysql 对集群化支持相对较弱,但是其实 mysql 也一直在发展,社区也开发出了很多方案,像PhxSQL,Percona XtraDB Cluster,MariaDB...Galera Cluster,mysql 官方也开发出了使用 MySQL Group Replication的GA,来使用分布式协议来解决数据一致性问题了,非常期待未来越来越多的解决方案被提出,来更好的解决

2K10

数据库审计方案(包括login,logout,DML,DDL等)

数据库审计方案(包括login,logout,DML,DDL等) 如下: 数据库审计方案(包括login,logout,DML,DDL等) /*============================...=================================================== ||文件名:数据库审计事件记录脚本 ||说明:为了对数据库事件进行审计,而进行相关设计 ===.../* ||名称:审计数据库会话登陆事件记录表 ||说明: */ Session_Id NUMBER, /* 会话ID */ OS_User VARCHAR2(200...-------- */ CREATE TABLE system.Audit_DDL_OBJ( /* ||名称:审计针对数据库对象的DDL记录表 ||说明: */ Opr_Time DATE...DML语句 ========================= */ /* ||名称:利用DBMS_FGA包的细粒度审计功能实现对DML语句的审计 ||说明: */ CREATE SEQUENCE SEQ_SELECT_NUMBER

1.1K30

MySQLMySQL审计操作记录

简介: 数据库审计能够实时记录网络上的数据库活动,对数据库操作进行细粒度审计的合规性管理,对数据库受到的风险行为进行告警,对攻击行为进行阻断,它通过对用户访问数据库行为的记录、分析和汇报,用来帮助用户事后生成合规报告...、事故追根溯源,同时加强内外部数据库网络行为记录,提高数据资产安全。...MySQL社区版并没有提供审计功能,注意到mariadb提供了一款server_audit审计插件,经测试此插件在MySQL社区版同样适用。...本文将介绍如何通过server_audit插件实现MySQL审计功能。.../plugin/ 把下载好的插件server_audit.so 复制到/usr/lib64/mysql/plugin/ 注意chmod+x server_audit.so 登录mysql执行插件安装命令

3.9K20

数据库审计

产品简介 中安威士数据库审计系统(简称VS-AD),是由中安威士(北京)科技有限公司开发的具有完全自主知识产权的数据库审计产品。...对数据库安全的要求包括:业务审计、满足等保评测、防止信息泄漏以及溯源。该需求涉及到公民的隐私信息保护和内部越权数据访问的整治。  解决方案 通过旁路,在数据中心部署了中安威士数据库审计系统。...有益结果 某政府单位通过上述方案,顺利通过等级保护三级评测和年度检查,并有效的降低了敏感信息的泄露风险。...解决方案 在数据中心部署了中安威士数据库审计系统,采用镜像方式对数据库访问行为监控,并对部署在虚拟化或者云平台上的数据库系统,采用软件探针的方式实现访问行为监控。...有益结果 某保险公司通过上述方案,使所有敏感数据的操作可见并可追溯,及时发现潜在风险。

2.6K50

利用开源审计插件对mysql进行审计

今天写写mysql审计的,在这里分享一下! 假设这么一个情况,你是某公司mysql DBA,某日突然公司数据库中的所有被人为删了。...但是拥有数据库操作权限的人很多,如何排查,证据又在哪?是不是觉得无能为力?mysql本身并没有操作审计的功能,那是不是意味着遇到这种情况只能自认倒霉呢?...现在企业级的审计系统非常的多,但都是要monery 本文就将讨论一种简单易行的,用于mysql访问审计的思路。...It was recently updated to support MySQL 5.7 备注:发现该插件貌似不支持审计日志自动切割,感觉这个查看起来不是特别的方便 下载地址:https://bintray.com..."obj_type": "TABLE" } ], "query": "show variables like '%audit_record_cmds%'" } 最后为了保证重启数据库

3K20

针对Oracle的审计方案

主题:针对Oracle的审计方案 数据库环境:Oracle 11g 1.需要对连接数据库的行为进行审计 需要对连接数据库的行为进行审计,其中包含例如审计那些错误密码登录等失败的登录行为。...需要对核心表的DML操作进行审计,首先强调下这是不推荐进行审计的,原因是这类审计极少客户会用,它不但会使得核心表的操作性能本身受到一定影响,还有可能触发相关bug。...3.需要迁移审计数据到指定表空间 创建新的表空间,比如TBS_AUDIT,然后迁移审计数据从默认的SYSTEM到TBS_AUDIT表空间; 核心步骤如下: --查看当前AUD$对象所在的表空间 SELECT...DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD, AUDIT_TRAIL_LOCATION_VALUE => '&AUD_TBS_NAME'); END; / 4.需要清理历史审计数据的方案...需要清理历史审计数据的方案: --截断占用空间最大的AUD$表(需要和DBA确认后操作) truncate table AUD$; 截断之前可以考虑备份一下审计数据: Oracle导出sys用户下的系统表

68320

大数据Hadoop的数据库审计数据库审计

Hadoop是一个开发和运行处理大规模数据的软件平台,是Apache的一个用java语言实现开源软件框架,实现在大量计算机组成的集群中对海量数据进行分布式计算,是目前市场上最受欢迎的一种大数据解决方案之一...Hadoop架构下数据库审计难在哪里?...为了满足Hadoop架构下各种应用需求,引入了数据库仓库工具(HIVE)、非结构化数据库(HBase)等子项目解决数据的处理分析与数据实时交互需求,同时为了简化Hadoop管理工作,HUE、Phoenix...其审计难点可总结为: 1、Hadoop大数据非结构化数据(NO SQL),传统方案无法实现此类数据的综合安全监控; 2、Hadoop中数据库连接工具的多样化,传统方案只能对典型的C/S客户端访问方式进行安全监控...更多数据库审计内容详见商业新知-数据库审计

2.8K30

通过MySQL-Proxy实现MySQL数据库的认证、授权与审计

正如同市面上大多数小公司一样,没有专职的DBA来抓数据库的工作,因此会有一批人时不时地突然跑过来求爷爷告奶奶似的要访问XX数据库。...当mysql返回查询结果时会被调用 显然,通过上述的read_auth和read_query两个钩子函数,我们可以实现对mysql数据库的认证、授权和审计的工作。...0x02 设计 我们的目标是认证、授权和审计,那么read_auth函数可以实现认证和授权,read_query可以实现审计的功能。...显然,使用用户名test登录mysql-proxy,最终跳转到mysql上时用户已经变为developer。 0x05 总结 用于非业务场景连接数据库,比如开发运维人员在公司连接数据库。...每个数据库中都只需要新建developer、master、owner三个账号,yaml配置文件中的内容决定用户使用以上哪种role登录到mysqlmysql-proxy需要使用源码编译安装。

2K00

MySQL审计插件介绍

前言: 数据库审计功能主要将用户对数据库的各类操作行为记录审计日志,以便日后进行跟踪、查询、分析,以实现对用户操作的监控和审计。...审计是一项非常重要的工作,也是企业数据安全体系的重要组成部分,等保评测中也要求有审计日志。对于 DBA 而言,数据库审计也极其重要,特别是发生人为事故后,审计日志便于我们进行责任追溯,问题查找。...一般不会开启此日志,因为 log 的量会非常庞大,对数据库性能有影响,并且 general log 会记录大量无用信息,当做审计日志的话,后期筛选有难度。 那么 MySQL 社区版应该怎样进行审计呢?...# 进入数据库安装审计插件 mysql> INSTALL PLUGIN server_audit SONAME 'server_audit.so'; Query OK, 0 rows affected...server_audit 审计插件劣势: 开启审计会增加数据库的性能开销,并占用磁盘空间。 日志格式不够丰富,不能自定义输出格式。

71620

MySQL监视——审计日志

MySQL的企业版中提供了审计日志功能。通过审计日志可以记录用户的登录、连接、执行的查询等行为,输出XML格式或者JSON格式的日志文件。...日志的内容包括如下: 系统发生的错误 客户端的连接与断开 连接时执行的查询与操作 用户访问了哪些数据库和表 安装 安装审计日志时,需要使用MySQL共享路径"share"下的安装脚本“audit_log_filter_win_install.sql...mysql库中的系统表“audit_log_filter”用于保存过滤规则,“audit_log_user”用于保存用户的数据,如果这两个表不存在,审计插件将使用传统的基于策略的方式记录日志。.../bin/mysqld --socket=/usr/local/mysql/mysql.sock --port=3306 ...i686-Linux 5.7.21-log

66820

mysql数据库运维方案

数据库不仅仅是dba的工作,每一个测试人员也应该懂得基本的数据运维操作,因为数据库是数据承载的地方并且是系统中非常重要的一部分,所以我们也需要熟练的对数据库进行基本维护。...或者 mysql>source alldb.sql; 第2组命令: 2.1:导出某些库 mysqldump --socket=/home/q/mysql/multi/3306/socket/mysql.sock...或者 mysql>source tables.sql; 02、shell脚本实现数据库备份 ---- #!...='localhost' #mysql服务器 MYSQL_PORT='3306' #mysql服务端口 MYSQL_USER='root' #mysql账号 MYSQL_PASSWORD='123456...总结:数据库的运维对于测试人员来说仍然是非常重要的,比如:非常重要也不太容易构建的测试数据需要做备份操作时,数据库的运维就显得很有技术含量,掌握数据的基本运维可以使测试工作做得更出色,同时也会让开发刮目相看

10.9K20

高版本mysql审计

需求mysql 8.0.33 环境需要审计:审计内容:要求记录DBA账号的所有操作, 业务账号的DDL操作(dml太多了.)...Percona Audit Log Plugin 不兼容mysql社区版当然还有mysql企业版的审计, 但没钱....那就只能自己写脚本了呗, 可以参考我之前写的审计脚本 https://...因为mysql-router没得审计功能. 但又想要审计功能.随便执行点SQL随便跑点SQL后, 查看审计日志内容. 我这里旧只测试下dba账号的. 执行的sql都记录下来了....跑不了了(不是)配置文件说明FILENAME 审计日志的文件名INTERFACE_NAME 网卡名字, 就是应用的流量到mysql的时候经过的网卡INTERFACE_PORT 目标端口, 如果是mysql..., 要求小写, 我都是转换为小写后比较的总结写得比较匆忙, 还没时间整理, 就这样吧, 能用就行.其实mysql-router加个审计插件也是不错的选择, 有机会可以试下.

32710

自制MYSQL旁挂审计

这时候就需要审计了. 审计分类 嵌入式, 就是在mysql端做记录, 也就是审计插件. 优点:无需更改链路....本文就是实现旁挂型审计 实现原理 获取mysql包 然后 解析mysql包 获取mysql包, 我们使用scapy的sniff抓包, 解析mysql包, 之前就已经做过了....客户端连接测试 mysql -h192.168.101.21 -P3308 -p123456 --skip-ssl #暂不支持SSL的审计 客户端退出测试 mysql退出的时候是发送的 0x01到server...mysql> exit DDL/DML压测 先清空表吧, 压测工具可以参考ddcw_tool.benchmark_mysql 那个ping包是 workbench 在发 测试DML 总结 不影响性能的清空建议都上个审计...旁挂型审计对业务和数据库影响最小(可以说没得影响), 但是无法控制连接,也无法解析ssl, 所以使用哪种审计得结合你的实际需求来.

4.5K160

关于MySQL数据库的备份方案

重建引擎 使用场景:对于MySQL数据库数据量不是很大的场景,建议使用。...因为备份方便,简单灵活,易操作 当数据库特别的时候,比如30G以上时,备份MySQL数据时,也就建议不要采用mysqldump了,因为备份的时间以及恢复数据库的时间太长了,会对库表造成锁,对线上的业务影响还是比较大的...然后把当前mysql数据库存放binlog的目录中抛去刚才最新生成的binlog文件,其余旧的binlog文件全部cp到本地服务器/backup/binlog  binlog的备份目录下。...xtrabackup热备工具是一个开源的工具,他可以非常快速的备份和恢复mysql数据库。...具体使用请参考:https://www.linuxidc.com/Linux/2018-08/153635.htm 关于MySQL数据库的备份方案到此处就介绍完了,如有不对,请及时指出。

3.1K20
领券