开发者社区> 网站安全> 正文

MYSQL数据库被入侵篡改了数据 该如何解决?

简介: 接触mysql数据库已经很多年了,经常碰到mysql数据库被攻击,导致用户的数据库         丢失,数据库被删除,花钱找人恢复出来少则几万,多则几十万的花费,在防止数         据库被攻击的同时,也要做好数据库的实时备份,如果使用了阿里云的服务器,可         以使用阿里云的快照备份,可以及时的备份一份数据在自己手里。
+关注继续查看
接触mysql数据库已经很多年了,经常碰到mysql数据库被攻击,导致用户的数据库
 
      丢失,数据库被删除,花钱找人恢复出来少则几万,多则几十万的花费,在防止数
 
      据库被攻击的同时,也要做好数据库的实时备份,如果使用了阿里云的服务器,可
 
      以使用阿里云的快照备份,可以及时的备份一份数据在自己手里。
 
                     
 
       这么多年了摸索下来,给自己总结了一些安全经验、从数据库安全类型的角度来看
 
      ,数据库分Mysql、Mssql、Oracle、PostgreSQL,用的最多的是mysql数据库,如
 
      果再算上web前端架构,Apache、IIS、nginx都是与数据库相关的。
 
 
      数据库攻击产生是因为前端程序代码没有对用户的输入,进行详细的安全过滤,导
 
      致黑客可以篡改输入值,来进行代码的攻击,比如一些数据库的操作查询代码都可
 
      以传入到后端数据库里去。
 
 
     最常见就是是数据库的UNION查询,也是mysql中用的最多的一种获取数据库里的数
 
     据,首先是UNION带回显查询常规流程。随后是mysql报错函数的原理、与注入,黑
 
     客通过一些特殊的注入语句就可以轻松的查询到想要的信息。Sine安全公司是一家
 
     专注于:服务器安全、网站安全、网站安全检测、网站漏洞修复,渗透测试,安全服
 
     务于一体的网络安全服务提供商。
 
 
     OOB注入攻击数据库
 
     OOB注入,就是通过非常规的方式将数据传输出去。同样需要secure_file_priv权
 
     限,对于Mysql有DNS(域名漏洞)和SMB两种主要带外传输方式。这种技术在概念
 
    上比较难理解,但掌握之后是非常强大的技术,除了能绕过WAF向外带出数据之外
 
     ,还可以结合XSS漏洞进行危害性更大的黑客攻击。
 
 
    宽字节注入攻击
 
    宽字节注入可以在web应用转义单引号的情况下,利用宽字节的特性,吃掉转义反
 
    斜杠。然后传入带有攻击性的代码,进而攻击数据库。
 
 
 
    以上种种都是黑客攻击数据库的方式,那么如何防止数据库被攻击?最重要的还是
 
    要在网站前端做好防护,在程序代码里尽可能的去过滤非法参数,避免恶意代码传
 
    入到数据库中去,再一个就是开始PHP的报错模式,以及mysql默认3306端口的关闭
 
     ,只允许本地调用数据库。
 
 
     把mysql运行账户的权限,限制到最小,千万不要用root以及管理员权限去运行。
 
     mysql的自身的4个库安全权限限制:
 
     user、db、TABLES_PRTV、Columns_prtv
 
     mysql密码安全策略,数字+子母+字符  最起码十位以上
 
     mysql安全日志开启,包括错误日志,查询日志记录所有的sql语句。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
DataX 测试同步MySQL数据到MySQL
nacos 的users和role同步到 datax-demo库的t_datax_role_user
23 0
MySQL是如何通过索引查询数据的?具体流程是怎样的?底层原理是什么?
MySQL是如何通过索引查询数据的?具体流程是怎样的?底层原理是什么?
6 0
【大数据开发运维解决方案】Sqoop增量同步mysql/oracle数据到hive(merge-key/append)测试文档
上一篇文章介绍了sqoop全量同步数据到hive, 本片文章将通过实验详细介绍如何增量同步数据到hive,以及sqoop job与crontab定时结合无密码登录的增量同步实现方法。
17 0
【大数据开发运维解决方案】Sqoop全量同步mysql/Oracle数据到hive
前面文章写了如何部署一套伪分布式的handoop+hive+hbase+kylin环境,也介绍了如何在这个搭建好的伪分布式环境安装配置sqoop工具以及安装完成功后简单的使用过程中出现的错误及解决办法, 接下来本篇文章详细介绍一下使用sqoop全量同步oracle/mysql数据到hive,这里实验采用oracle数据库为例,
17 0
【大数据开发运维解决方案】sqoop增量导入oracle/mysql数据到hive时时间字段为null处理
前面几篇文章详细介绍了sqoop全量增量导入数据到hive,大家可以看到我导入的数据如果有时间字段的话我都是在hive指定成了string类型,虽然这样可以处理掉时间字段在hive为空的问题,但是在kylin创建增量cube时需要指定一个时间字段来做增量,所以上面那种方式不行,这里的处理方式为把string改成timestamp类型,看实验:
12 0
Mysql数据库基础第四章DDL(数据定义语言):库表的管理、数据类型与约束条件
# 1.DDL语言基本概述 DDL:数据定义语言 主要包括以下几部分内容: - 库的管理 - 表的管理 - 数据类型 - 约束 下面我们先介绍库的管理
67 0
mysql 导出查询结果/导入.sql文件数据/mysqldump导出表or数据
mysql 导出查询结果/导入.sql文件数据/mysqldump导出表or数据
53 0
错误代码:1406列的数据太长-MySQL
错误代码:1406列的数据太长-MySQL
25 0
将mysql数据表数据从一台服务器迁移到另一台服务器
这种问题出现在导入表时,也属于权限问题,看mysql中文手册的一段话: >出于安全原因,当读取位于服务器中的文本文件时, www.2cto.com 文件必须位于数据库目录中,或者是全体可读的。另外,要对服务器文件使用LOAD DATA INFILE,您必须拥有FILE权限。
35 0
MySQL 导出 表结构,执行 .sql 文件导入结构或者数据
MySQL 导出 表结构,执行 .sql 文件导入结构或者数据
56 0
+关注
网站安全
Sinesafe专注于网站安全,服务器安全,解决各类网络安全问题,对代码审计以及漏洞修补安全加固有专业的十年实战经验.官方站点www.sinesafe.com
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
让 MySQL 原生分布式触手可及
立即下载
好的 MySQL 兼容可以做到什么程度
立即下载
云数据库RDS MySQL从入门到高阶
立即下载