1.在跳板机安装php,mysql yum -y install php mariadb-server mariadb mariadb-devel 启动数据库 systemctl start mariadb.../bin/bash #MySQL主机列表 db_base='192.168.78.128' #默认端口号 PORT='3306' #输出页面 OPTION=`whiptail --title "连接...MySQL" --menu "请选择MySQL" 20 40 10 \ "1" "db_base" \ "2" "退出程序" \ 3>&1 1>&2 2>&3` #数字匹配 if [ $? ...>提示符 read -p "mysql> " SQL #判断输入不为空或者exit if [ "$SQL" !...登录跳板机 进入本机的mysql,创建远程授权账号,方便navicat查看sql执行记录 mysql -u root grant all PRIVILEGES on *.* to owner@'%' identified
简介: 数据库审计能够实时记录网络上的数据库活动,对数据库操作进行细粒度审计的合规性管理,对数据库受到的风险行为进行告警,对攻击行为进行阻断,它通过对用户访问数据库行为的记录、分析和汇报,用来帮助用户事后生成合规报告...MySQL社区版并没有提供审计功能,注意到mariadb提供了一款server_audit审计插件,经测试此插件在MySQL社区版同样适用。...本文将介绍如何通过server_audit插件实现MySQL的审计功能。.../plugin/ 把下载好的插件server_audit.so 复制到/usr/lib64/mysql/plugin/ 注意chmod+x server_audit.so 登录mysql执行插件安装命令...server_audit-system-variables/ server_audit_output_type:指定日志输出类型,可为SYSLOG或FILE server_audit_logging:启动或关闭审计
文章目录 一、selinux 进程保护 二、宽容模式与强制模式 一、selinux 进程保护 ---- selinux 进程保护 一旦开启后 , 其它进程不能调试指定的进程 ; Android 5.0...getenforce Enforcing 二、宽容模式与强制模式 ---- selinux 有两种模式 : 0 : permissive , 宽容模式 ; 该模式下 selinux 关闭 , 可以调试进程数据...; 1 : enforcing , 强制模式 ; 该模式下 selinux 打开 , 不能调试进程数据 ; 默认模式为 强制模式 ; 如果在调试进程时 , 调试失败 , 需要查看当前的 selinux
今天写写mysql审计的,在这里分享一下! 假设这么一个情况,你是某公司mysql DBA,某日突然公司数据库中的所有被人为删了。...mysql本身并没有操作审计的功能,那是不是意味着遇到这种情况只能自认倒霉呢?现在企业级的审计系统非常的多,但都是要monery 本文就将讨论一种简单易行的,用于mysql访问审计的思路。...It was recently updated to support MySQL 5.7 备注:发现该插件貌似不支持审计日志自动切割,感觉这个查看起来不是特别的方便 下载地址:https://bintray.com...[root@VM_35_215_centos lib]# cd /data/mysql/mysql_3306/data/ [root@VM_54_118_centos data]# ll mysql-audit.json...-rw-r----- 1 mysql mysql 5113 Oct 22 23:47 mysql-audit.json 查看一下mysql-audit.json文件信息(json格式) { "msg-type
server_audit是一款内嵌在mariadb的审计插件,在MySQL中同样适用,主要用于记录用户操作。...1.安装: 通过show variables like 'plugin_dir';查看你的插件目录, 我的是:/usr/lib64/mysql/plugin/ 把下载好的插件server_audit.so...复制到/usr/lib64/mysql/plugin/ 注意chmod+x server_audit.so 登录mysql执行插件安装命令: INSTALL PLUGIN server_audit...server_audit-system-variables/ server_audit_output_type:指定日志输出类型,可为SYSLOG或FILE server_audit_logging:启动或关闭审计...插件被卸载,需要在配置文件中添加: [mysqld] server_audit=FORCE_PLUS_PERMANENT 重启MySQL生效
MySQL 社区版审计日志现状 如果你用的是 MySQL 社区版的话,你会发现 MySQL 官方并没有提供严格意义上的审计日志。...虽然 MySQL 提供有 binlog 及 general log ,这二者虽然具备部分审计功能,但一般不当做审计日志来看待。...查阅资料我们发现通过安装审计插件可实现 MySQL 的审计功能,常见的审计插件有 MariaDB Audit Plugin、Percona Audit Log Plugin、McAfee MySQL Audit...Plugin 三种,MariaDB 自带的审计插件比较适合用于 MySQL 社区版,下面我们来学习下如何使用审计插件来实现审计功能。...不同版本的审计插件支持的审计事件如下图: 审计插件版本与 MariaDB 版本对应图如下: MySQL 5.7 一般可对应 MariaDB 10.2 版本,我们以 CentOS 系统 MySQL 5.7
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 MYSQL_VERSION>5.7.21-logMYSQL_VERSION>
MySQL的企业版里,提供了一项审计功能——MySQL Enterprise Audit。...MySQL的审计功能以插件来实现,支持在特定的MySQL服务器上执行标准审计、基于规则的监视、日志记录以及阻挡连接和查询活动。...MySQL Enterprise Audit使用了公开的MySQL Audit API,如果你想使用这个API去自己开发一个审计插件,可以参考手册链接。...MySQL的审计功能使用起来非常简单,DBA启用插件后(插件可以动态启用、禁用),用户连接服务器进行的操作就可以记录到日志,DBA之后可以通过日志来评估审计事件。...上述内容是关于MySQL企业版审计功能的一个简介,希望能对希望安全使用MySQL的您有所帮助。更为详尽的内容请访问官网手册。
简单介绍下CR0寄存器: [image-20220215160834842.png] 可以看到这里使用32位寄存器,而在CR0寄存器中,我们重点关注的是3个标志位: PE 是否启用保护模式,置1则启用...0 mov cr0, eax; pop eax; ret; } //开启页只读保护 __asm { push eax;...FuZwOpenProcess g_OldZwOpenProcess; //服务描述符表指针 KSERVICE_TABLE_DESCRIPTOR* g_pServiceTable = NULL; //要保护进程的...} NTSTATUS HookNtOpenProcess() { NTSTATUS Status; Status = STATUS_SUCCESS; //1.关闭页只读保护...DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_opt_ PCLIENT_ID ClientId ) { //当此进程为要保护的进程时
简单介绍下CR0寄存器: 可以看到这里使用32位寄存器,而在CR0寄存器中,我们重点关注的是3个标志位: PE 是否启用保护模式,置1则启用。...FuZwOpenProcess g_OldZwOpenProcess; //服务描述符表指针 KSERVICE_TABLE_DESCRIPTOR* g_pServiceTable = NULL; //要保护进程的...DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_opt_ PCLIENT_ID ClientId ) { //当此进程为要保护的进程时...NtOpenProcess(ProcessHandle,DesiredAccess,ObjectAttributes,ClientId); } 编译后安装并启动驱动,无论是用taskkill命令还是任务管理器都不能杀死进程...而在卸载驱动过后则可以用taskkill命令直接杀死进程,证明实现了进程保护
需求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加个审计插件也是不错的选择, 有机会可以试下.
分布式帐本确保所有银行和任何审计员都看到新交易。 每个银行和审计师都维护一个承诺缓存。 每个银行还具有纯文本交易数据的专用存储。 image.png 总共有三个主体对象,分别是银行,账本和审计员。...审计一个银行当前的资产?考虑查询被审计银行所在列中的值的总和。...这就有问题了,因为根据上面所述的方法,在审计员审计一个银行的时候,需要该银行提供给审计员 。...银行向审计员提供的 。 审计员计算 和 。 审计员判断 。 证明:如果相等的话,则 , ,则 。证明结束。...审计 Map/reduce 考虑一个审计师想要知道给定银行和资产的平均交易规模。 审计员不能简单地通过合计银行列的承诺总值除以行数来验证银行的答案,因为这样的计算会有不正确的分母。
这时候就需要审计了. 审计分类 嵌入式, 就是在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 总结 不影响性能的清空建议都上个审计...本文使用的单进程做的, 可能存在性能问题(可以去掉SQL解析, 直接打印SQL文本). 本文的脚本不支持解析SSL.(如果是SSL包就直接跳过了).
驱动(看这名字应该还有360SelfProtection_win10.sys文件),在0环通过hook等手段保护注册表项,重要进程进程等。...本文就如何实现一个进程保护功能进行探究,驱动就不写了,就写一个用户层的。 实现原理 windows提供了一个可以杀死其他进程的API:TerminateProcess。...New_TerminateProcess(_In_ HANDLE hProcess,_In_ UINT uExitCode) { unhookTerminateProcess();MessageBox(NULL,L"该进程受保护...那么如果要选择性保护进程,又应该怎么做呢。注意TerminateProcess的第一个参数,传入的是一个句柄,这个句柄需要从openprocess的返回值获得,所以我们还需要知道打开进程的句柄。...New_TerminateProcess(_In_ HANDLE hProcess,_In_ UINT uExitCode) {if(g_handle == hProcess){MessageBox(NULL, L"该进程受保护
Redis牺牲数据可靠性,换取高性能,适合做MySQL前置缓存。 虽Redis支持数据持久化,还支持主从复制,但仍是不可靠存储,天然不保证数据可靠性,所以做缓存,很少作为唯一的数据存储。...缓存MySQL的一张表时,通常直接选用主键作为Redis中的Key,如缓存订单表,用订单表主键订单号作为Redis key。...3 总结 使用Redis作为MySQL的前置缓存,可以非常有效地提升系统的并发上限,降低请求响应时延。...例如使用Redis来缓存MySQL的数据,一般都是通过应用程序来直接与Redis、MySQL交互,我的理解是Cache Aside,包"是/否"删除Cache在内。...读写并发不阻塞,是因为mysql用了快照读原因,那我们可以继续写线程更新缓存,读线程采用redis的setnx方式解决覆盖 mvcc可以很好的解决读写冲突,但是对于写写冲突,要么加锁,要么引入冲突检测机制
关于Backstab Backstab是一款功能强大的安全研究工具,在该工具的帮助下,广大研究人员可以轻松终止那些受反恶意软件产品保护的进程。...没错,我们为何不直接终止相关进程呢? Backstab这款工具能够通过利用sysinternals的进程管理驱动器(ProcExp)终止受反恶意软件产品保护的进程,而这个驱动器是由微软签名的。...当我们查看到UI时,你可能无法终止受保护的进程,但可以终止它的句柄,因为ProcExp UI会指示内核驱动程序终止这些句柄。而Backstab能做到同样的事情,只不过没有提供UI。...https://github.com/Yaxser/Backstab 工具使用帮助 Usage: backstab.exe [options] -n, 通过名称选择进程...,需包含.exe后缀 -p, 通过PID选择进程 -l, 列举所有受保护进程的句柄 -k, 选择要终止的受保护进程的句柄 -x, 选择一个指定的句柄 -d, 指定ProcExp提取路径 -s
上文(MySQL自我保护工具--pt-kill ) 提到用pt-kill工具来kill相关的会话,来达到保护数据库的目的,本文再通过修改数据库参数的方式达到阻断长时间运行的SQL的目的。...1、参数介绍 mysql5.6及以后,数据库端新增了新变量来限制语句最大执行时间,用于在服务端对select语句进行超时时间限制,能有效控制在数据库(建议在主库)的慢查询情况,以达到保护数据库稳定性的目的...不过mysql5.7.8版本前后参数名有变更,例如: mysql5.6 - mysql5.7.8前的版本中,参数名为:max_statement_time (毫秒) mysql5.7.8及以后,参数改成...因当前基本都使用5.7及以后版本,因此本次使用MySQL5.7版本数据库进行演示。...mysql> set session max_execution_time=1000; Query OK, 0 rows affected (0.00 sec) mysql> show global
x64(32)下的进程保护回调....一丶进程保护线程保护 1.简介以及原理 以前我们讲过.SSDT 可以做很多事情.比如可以防止进程被结束 其实到了x64下.你也可以HOOK SSDT.只不过你需要过一下PatchGuard 但是在你过不了...PG的情况下.其实操作系统也给你提供了回调进行保护....//为钩子结构体赋值 oper.ObjectType = PsProcessType; //进程操作的类型.当进程操作回来....1.3注意的问题 编写代码的时候会发生蓝屏.原因是你设置前指针后.后指针需要设置为NULL 因为如果是进程保护的话. 当创建进程的时候则会遍历对象数组.依次调用.
MySQL 开源的审计插件主要用于记录数据库的操作行为,如查询、登录、权限变更等,以便进行安全审计、合规性检查和问题排查。...以下是几个常见的开源 MySQL 审计插件: 一、MariaDB Audit Plugin • 简介: MariaDB Audit Plugin 是一个功能强大的审计插件,最初由 MariaDB 开发,...• 文档链接: McAfee MySQL Audit Plugin GitHub 四、 MySQL Enterprise Audit Plugin • 简介: MySQL 企业版自带的审计插件,虽然不是完全开源的...Server JSON、自定义 较低 开源 高并发场景下的审计需求 MySQL Enterprise Audit MySQL 企业版 XML 中等 商业版 企业级审计需求 General Query...Log 所有 MySQL 版本 文件、表 较高 内置功能 简单审计需求,短期启用 总结 对于开源 MySQL 用户,推荐优先选择 MariaDB Audit Plugin 或 McAfee MySQL
MySQL中也需要审计,不说大的方向,就说和我们工作更贴近的,比如某一个业务在某个时间点出现了异常,因为异常操作(比如DDL)导致系统出现了严重的问题,这个时候如果要查看这个问题的具体情况,谁登陆了系统...说到数据库审计的方案,MySQL社区版是没有审计插件的,而在商业版中有,是需要单独收取licence费用的,对于公司的很多业务而言,还是会一些考虑,所以我们更倾向于看看还有哪些方案可以实现。...还有McAfee的审计插件,McAfee是全球最大的专业安全公司,它的审计插件我看了下使用情况,在MySQL 5.5,5.6中使用相对比较多,我们规划的版本是MySQL 5.7,所以权衡下来不是太倾向这个插件...-mysql-socket=/data/mysql_24402/tmp/mysql.sock --mysql-host=localhost --mysql-db=test --tables=10 --table-size...登录到MySQL的审计日志如下: 20171020 17:22:00,tk-dba-mysql10-202,root,localhost,5,0,CONNECT,,,0 创建一个表test,SQL为:
领取专属 10元无门槛券
手把手带您无忧上云