网站首页 > 技术文章 正文
关于数据库安全,有数据库安全设置、及时更新漏洞,代码做安全渗透防止sql注入外,还有一个很重要的方面数据安全审计。我们有些小伙伴可能用过Oracle,Sql server等数据库,他们都提供了数据审计功能,可以方便使用。但是我们的Mysql却没有这个功能,使得mysql的安全性大打折扣。
Mysql Init-access表的方法
通常地Mysql可以用创建Init-access表的形式,记录用户来源ip、时间、用户名和线程号的方式,结合mysqlbin日志来变相实现安全审计方法。这种方法比较繁琐,审计时候很不是便捷,对数据库性能还有一定的影响,这种方法网上很多也就不再赘述。
网络抓包
小编在这里给你介绍另外一种很通用便捷的方法,虽然结果也有些小缺憾,比如同时登陆操作的,没法区分两个用户谁是谁。这种方法的原理基于网络抓包的,解析数据包中数据操作语句来实现的。这也是很多安全厂商都用的方法,那些高大上、动辄几百万的数据库审计产品,也是基于这样一个原理,不过人家的过滤器更强大,分析能力更好,细节更多而已。
Tshark 介绍
说到网络抓包,大家可能马上想到的是Tcpdump,还有Windows下的Wireshark。对了今天咱们用的工具也跟Wireshark有点关系。Tshark,它是Wireshark的命令行版本,然会它只是在终端命令行下使用,但是它便捷,更犀利,马上就能出结果,看到数据结果,也能通过管道配合shell其他神器一起使用。是我们值得深研的好武器。
Tshark使用简介
Tshark使用的部分截图如上,其使用参数包括捕获接口、捕获停止选项、捕获输出选项、-r文件输入选项、处理选项、输出选项、其他选项等。限于篇幅,不在多介绍,有需要可以看命令介绍。
安装
Tshark 安装十分简单直接用包管理器安装即可。
redhat系:用 yum install wireshark
debian系: 用apt-get install tshark
其他发行版,请查看官方文档。
使用实例
1、实时打印当前80端口http请求,仅仅GET请求
详细介绍涉及,Tshark应用参数,比较繁琐,就只提供语句。吃瓜群众,直接复制使用就行了。需要深究就去看官方文档(下同)。
2、实时打印当前http请求,包括域名,请求的链接
tshark -s 1024 -n -f 'tcp dst port 80' -R 'http.host and http.request.uri' -T fields -e http.host -e http.request.uri -l
3、抓mysql的sql语句,
如下图,用来做程序分析。可以获得实时的sql执行语句。注意由于数据库只限本机访问,所以抓包时候要-i指定网络接口为lo既本地回环地址,否则可能没有数据。
利用Tsark做数据审计
上一部分,3抓取sql语句中我们已经演示了用tsark捕捉,网络包中msyql执行sql语句的例子。但是那个还不能做数据审计,因为数据审计中要关注、时间、来源和用户的信息,其实这些信息网络数据包中都含有的,我对那个语句改造下增加了时间和来源ip信息入下:
tshark -s 1024 -i lo -i eth0 -n -f 'tcp dst port 3306' -R 'mysql.query' -T fields -e "frame.time" -e "ip.dst" -e mysql.query
然后起个screen (对了,这也是个神器,以后有机会推介下)
tshark -s 1024 -i lo -i eth0 -n -f 'tcp dst port 3306' -R 'mysql.query' -T fields -e "frame.time" -e "ip.dst" -e mysql.query > mysqladit.txt
这样执行的所有sql语句都到这个mysqladit.txt文件了,以后对这个文件处理,就可以实现对mysql的数据审计了。
好了,今天就到这,如果对我的文章感兴趣,请点赞,关注我,有任何建议和意见请留言。
快过年了,祝大家新年快乐,2018发大财,交大运!
猜你喜欢
- 2024-10-31 爱数AnyRobot:一文详解Oracle运维分析实践
- 2024-10-31 一文带你了解数据库工具的类型 工具数据库主要包括
- 2024-10-31 通过oracle学mysql 通过直接调查或科学试验得到的统计数据
- 2024-10-31 Spring Boot 中的审计 spring spring boot
- 2024-10-31 全面解析:MySQL审计插件介绍与配置详解
- 2024-10-31 详细讲解Oracle数据库audit_trail的设置
- 2024-10-31 瑟瑟发抖:Oracle 又出手了。。。。。。
- 2024-10-31 软考-信息安全工程师学习笔记92—Oracle 数据库安全分析与防护
- 2024-10-31 IT审计应该怎么做? it审计的作用
- 2024-10-31 【运维有小邓】Oracle数据库审计 数据库 审计
你 发表评论:
欢迎- 636℃几个Oracle空值处理函数 oracle处理null值的函数
- 629℃Oracle分析函数之Lag和Lead()使用
- 617℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 613℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 611℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 603℃【数据统计分析】详解Oracle分组函数之CUBE
- 590℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 576℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)