mysql构造数据_如何构造一个安全的mysql(数据库)

0x01

在进行真正的 mysql 部署之前,我们不妨先来大致了解下,在实际入侵过程中,仅仅利用mysql,我们到底能干些什么,了解了这些最基本的点之后,我们再进行针对性防御

1、普通用户权限下的 '增删改查',即 常规sql注入,俗称'脱裤'

2、普通用户file权限下的 '文件读写',可尝试读取各类敏感配置,如各类账号或者尝试直接往站点目录中写webshell

3、root用户权限下的 '读写文件' , '系统命令执行'... 可读写是因为root本身就有file权限,另外,如果直接以root身份运行mysql服务,亦可实现'提权'的效果

4、针对 '数据库连接' 的'DDOS',单用户大批量数据库连接可能会导致mysql无法再提供服务

0x02 演示环境:

1、CentOS6.8 x86_64 最小化,只带基础库安装 eth0: 192.168.3.42 eth1: 192.168.4.14 eth2: 192.168.5.14

2、mysql-5.6.27-linux-glibc2.5-x86_64.tar.gz 此次mysql就不再手工编译了,时间比较长,直接用mysql官方提供好的二进制包来做演示

0x03下载,解压 mysql-5.6.27-linux-glibc2.5-x86_64.tar.gz

1、# tar xf mysql-5.6.27-linux-glibc2.5-x86_64.tar.gz

2、# mv mysql-5.6.27-linux-glibc2.5-x86_64 /usr/local/

3、# ln -s /usr/local/mysql-5.6.27-linux-glibc2.5-x86_64/ /usr/local/mysql/

4、# ls -l /usr/local/mysql/

0x04 开始初始化mysql

务必以一个伪用户身份来运行mysql服务,防止别人利用mysql进行提权,后面还会再细说,另外,web服务和数据库服务严禁用同一个系统用户,这样做主要是为了防止入侵者直接通过sql语句往网站目录中写webshell

1、# useradd -s /sbin/nologin -M mysql

1、# chown -R mysql.mysql /usr/local/mysql/ && ll /usr/local/mysql/ 暂时先让mysql用户对mysql的安装目录能正常读写/

2、# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql

3、# chown -R root.root /usr/local/mysql/ && ll /usr/local/mysql//

4、# chown -R mysql.mysql /usr/local/mysql/data/ && ll /usr/local/mysql/data/

5、# cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf 创建mysql配置文件/

6、# /usr/local/mysql/bin/m

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值