0818基于360开源数据库流量审计MySQL Sniffer

开源数据库流量审计MySQL Sniffer

我最推崇的数据库安全产品就是基于流量的数据库审计,因为它不需要更改网络结构,并且也是最关键的是,不影响数据库服务器性能,不用苦口婆心的劝数据库管理员安装监控软件。它可以比较好的发现通过Web漏洞的拖库行为,以及基于数据库通讯协议的数据库管理过程中的违规行为。本质上基于流量的数据库审计就是一种特殊的流量审计,或者说针对数据库的IDS,如图10-11所示,通过从网络全流量中解析数据库协议,进一步还原成数据库常见的增删查改操作,然后在根据预定义的规则进行审计。

图10-11基于流量的数据库审计原理图

这里介绍一款国内安全公司开源的可用于基于流量的数据库审计软件,MySQL Sniffer。MySQLSniffer是一个基于MySQL协议的抓包工具,实时抓取请求,并格式化输出。输出内容包括访问时间、访问用户、来源IP、访问 Database、命令耗时、返回数据行数、执行语句等。

下载与安装

MySQL Sniffer对应的GitHub地址为:

https://github.com/Qihoo360/mysql-sniffer

安装方法如下所示。

yum install glib2-devel libpcap-devel libnet-devel

git clone https://github.com/Qihoo360/mysql-sniffer

cd mysql-sniffer

mkdir proj

cd proj

cmake ../

cd ..

make

审计MySQL流量

MySQL Sniffer支持的常见参数如下所示。

Usage ./mysql-sniffer [-d] -i eth0 -p 3306,3307,3308 -l/var/log/mysql-sniffer/ -e stderr

由于我们Web和MySQL部署在一台机器上,所以eth0上是没有MySQL流量的,我们需要监听lo接口。

./mysql-sniffer -i lo -p 3306

使用pig账户登录MySQL。

./mysql -h127.0.0.1 -upig –p

显示审计信息如下所示。

2017-07-26 17:06:36 pig 127.0.0.1 NULL 0ms 1 select @@version_commentlimit 1

查看插件安装情况。

mysql> show plugins;

显示审计信息如下所示,其中2ms表示查询消耗时间,43表示查询返回的数据行数。

2017-07-26 17:10:28 pig 127.0.0.1 NULL 2ms 43 show plugins

查询MySQL用户详细信息。

mysql> use mysql;

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

mysql> select * from user;

显示审计信息如下所示。

2017-07-26 17:12:32 pig 127.0.0.1 mysql 0ms 0 use mysql

2017-07-26 17:12:32 pig 127.0.0.1 mysql 0ms 5 show databases

2017-07-26 17:12:32 pig 127.0.0.1 mysql 0ms 28 show tables

2017-07-26 17:12:44 pig 127.0.0.1 mysql 1ms 8 select * from user

MySQL Sniffer也支持保存日志,如图10-12所示可以把日志发送给SOC系统进一步分析。

图10-12MySQL Sniffer把审计日志发送给SOC系统

时间: 2024-10-27 11:43:58

0818基于360开源数据库流量审计MySQL Sniffer的相关文章

【转】 MySQL与PostgreSQL:该选择哪个开源数据库?哪一个更好?

转载地址:http://www.infoq.com/cn/news/2013/12/mysql-vs-postgresql 如果打算为项目选择一款免费.开源的数据库,那么你可能会在MySQL与PostgreSQL之间犹豫不定.MySQL与PostgreSQL都是 免费.开源.强大.且功能丰富的数据库.你主要的问题可能是:哪一个才是最好的开源数据库,MySQL还是PostgreSQL呢?该选择哪一个开源数据 库呢? 在选择数据库时,你所做的是个长期的决策,因为后面如果再改变决定将是非常困难且代价高

MySQL、PostgreSQL、Ingres r3、MaxDB等开源数据库的详细比较

1.MySQL 5 作为当今最流行的开放源码数据库之一,MySQL数据库为用户提供了一个相对简单的 解决方案,适用于广泛的应用程序部署,能够降低用户的TCO.MySQL是一个多线程.结构化查询语言(SQL)数据库服务器.MySQL的执行性能高, 运行速度快,容易使用. MySQL包括以下几个关键优势: ◆ 可靠的性能和服务MySQL向公众提供所有数据库服务器软件的早期版本,都是利用开放源码进行为期几个月的测试之后才发布作为生产之用. ◆ 易于使用和部署MySQL的结构体系易于定制,运行速度快,其

开源数据库 H2, HSQLDB, DERBY, PostgreSQL, MySQL区别/对比图表( 附加翻译)

开源数据库 H2, HSQLDB, DERBY, PostgreSQL, MySQL区别/对比图表 浪天涯博主翻译: referential integrity 参考完整性transactions 事物unicode 统一码interface 命令 界面 接口data size db limit 数据库数据大小限制temporary table 临时表支持materialized view 物化视图(快照)indexes 索引union 联合查询intersect 交集查询except exce

开源数据库的现状

数据库作为业务的核心,在整个基础软件栈中是非常重要的一环.近几年社区也是新的方案和思想层出不穷,接下来我将总结一下近几年一些主流的开源数据库方案和背后的设计思想以及适用场景.本人才疏学浅如有遗漏或者错误请见谅.本次分享聚焦于数据库既结构化数据存储 OLTP 及 NoSQL 领域,不会涉及 OLAP.对象存储.分布式文件系统. 开源RDBMS与互联网的崛起 很长时间以来,关系型数据库一直是大公司的专利,市场被 Oracle / DB2 等企业数据库牢牢把持.但是随着互联网的崛起.开源社区的发展,上

深入理解开源数据库中间件 Vitess:核心特性以及如何进行数据存储的堆叠

概述 Vitess 是一个用于 MySql 扩展的数据库解决方案.它以能够像运行在专用硬件上那样有效地运行在云体系为目标进行架构.它集 MySql 数据库的很多重要特性和 NoSQL 数据库的可扩展性于一体.Vitess 已经成功侍服了 2011 年以来所有的 YouTube 数据库流量. Kubernetes 上的 Vitess Kubernetes 是 Google 开源的 Docker 容器集群管理系统,Vitess 是 Kubernetes 用户的逻辑存储引擎的一个可选项.Kuberne

数据库介绍(MySQL安装 体系结构、基本管理)

阅读目录 1.1 数据库简介 1.2 数据库相关产品 1.3 Mysql简介 1.4 mysql数据库的安装 1.5 mysql 5.7版本安装说明 2.1 客户端与服务器端模型 2.2 Mysqld服务的构成 2.3 MySQL管理 2.4 mysql多实例配置 2.5 mysql忘记密码怎么办? 2.6 参考文献 第1章 数据库介绍及mysql安装 回到顶部 1.1 数据库简介 数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增.截取.更新.删除等操作

【转】数据库介绍(MySQL安装 体系结构、基本管理)

[转]数据库介绍(MySQL安装 体系结构.基本管理) 第1章 数据库介绍及mysql安装 1.1 数据库简介 数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增.截取.更新.删除等操作. 所谓“数据库”系以一定方式储存在一起.能予多个用户共享.具有尽可能小的冗余度.与应用程序彼此独立的数据集合. 1.1.1 什么是数据 数据是指对客观事件进行记录并可以鉴别的符号,是对客观 事物的性质.状态以及相互关系等进行记载的物理符号或这些物 理符号的组合.它是可识别

基于corosync和pacemaker实现HA mysql service

corosync基础介绍 corosync AIS: Application Interface Standard,应用程序接口规范 SA Forum:服务可用性论坛,OpenAIS即是此论坛开发 OpenAIS 提供了一种集群模式,包含集群框架.集群成员管理.通信方式.集群监测等,但没有提供集群资源管理功能: 常用组件包括:AMF,CLM,CPKT,EVT等接口,分支不同,包含的组件略有区别: 目前的三大主要分支包括:picacho,whitetank,wilson:OpenAIS在由whit

腾讯云数据库团队:MySQL数据库的高可用性分析

作者介绍:易固武,腾讯高级工程师,参与腾讯账号安全建设,腾讯数据仓库(TDW)优化改造,腾讯云数据库等项目,对大规模分布式存储和计算系统有浓厚的兴趣和经历 MySQL数据库是目前开源应用最大的关系型数据库,有海量的应用将数据存储在MySQL数据库中.存储数据的安全性和可靠性是生产数据库的关注重点.本文分析了目前采用较多的保障MySQL可用性方案. MySQL Replication MySQL Replication是MySQL官方提供的主从同步方案,用于将一个MySQL实例的数据,同步到另一个