IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 【新版MySQL修改密码命令有所变更】 -> 正文阅读

[大数据]【新版MySQL修改密码命令有所变更】


前言

说起口令,其实大家并不陌生,从我们每天解锁手机、登录邮箱到网络购物,都会涉及到口令。口令俗称“密码”,对应英文 Password,是当前最主要的身份认证方法。
在这里插入图片描述

8.54 亿中文用户占了世界上 20% 的互联网用户,比美国人口的两倍还多。北京大学汪定博士以第一作者完成的一项研究发现,虽然中文用户的密码构造行为与英文用户有很大差异,但世界各大知名网站对中英文用户采取同样的密码保护措施,都没有考虑中文用户密码的特点。


一、密码破解

对于黑客而言,各大网站的密码保护措施无异于皇帝的新衣。
今年 8 月,这项针对中英文网民密码比较的研究发表在全球四大顶级信息安全学术会议之一的 USENIX (美国高等计算系统协会)Security 会议上。
中文网民常用密码:生日和手机号
在这里插入图片描述

汪定团队分析了 2009 年到 2012 年间由黑客曝光的 1.06 亿个真实网络密码,其中包括 6 个中文服务器上的 7310 万个密码和 3 个英文服务器上的 3320 万个密码。值得注意的是,虽然这是 2012 年之前的数据,但多年来密码系统进化很慢,其改变是很少的。
他们还比较了社交论坛、游戏、电子商务网、程序员论坛以及雅虎英文国际用户的密码。研究发现,与英文互联网用户相比,中文互联网用户的确在密码设置上有特点。

中文网民更喜欢用数字作为密码,尤其是手机号和生日,英文网民则更喜欢用纯粹字母作为密码。据汪定此前研究,中文网民的密码有 27% 到 45% 仅由数字构成,英文网民密码仅由数字构成的低于 16%。
英文网民倾向于用某些单词和短语,有 25.88%的网民会将 5 个字母以上的单词作为密码模块,如 password(密码)、letmein(让我登录)、sunshine(阳光)、princess(公主),当然也包括“abcdef”“abc123”以及“123456”。

研究还发现,16.99% 的中文网民热衷在密码中插入 6 个日期数字的模块,这个数字更可能是生日。有 30.89% 的中文网民使用 4 个以上的日期数字,这个比例是英文网民的 3.59 倍。13.49% 的中文网民使用 4 位数的年份数据作为密码模块,是英文网民的 3.55 倍。

更有意思的是,如果一个中文用户使用一长串数字做密码,那么这个密码是 11 位手机号的概率是 66.74%。要知道,2.91% 中文网民使用 11 位手机号码作为密码模块,而 4.36%的中文网民口令含有 11 位以上的数字,因此其概率为 2.91/4.36=66.74%。
类似地,如果知道一个中文用户的密码不低于 11 位,那么这个密码含有 11 位手机号的概率是 23.48%。要知道,2.91% 中文网民使用 11 位手机号码构造密码,同时有 12.39%的中文网民密码长度不低于 11 位,因此其概率为 2.91/12.39=23.48%。
中文网民只有 2.41%使用英文单词作为密码模块,但他们更喜欢用拼音名字(11.50%),尤其是全名。
此外,爱情主题在中国网民口令中占很大地位,比如“woaini1314”“5201314”。

研究发现,一些基于英文字母的所谓“强”密码可能在中文环境中很弱,比如“woaini1314”,这个密码在谷歌、新浪微博等网络平台均被评为强等级,然而中文网络用户很容易猜到这个密码的含义。
再比如“brysjhhrhl”,大部分中文网民能猜到这是“白日依山尽,黄河入海流”的缩写。这就让从英文用户视角解决密码安全问题的思路出现偏差。

在这里插入图片描述

二、步骤操作

第1步:停止MySQL进程的运行

[root@mysql-2 mysql]# service mysqld stop
Shutting down MySQL.. SUCCESS! 
[root@mysql-2 mysql]#

2.第2步:修改配置文件

[root@mysql mysql]# vim /etc/my.cnf
[mysqld]
user=mysql     #指定启动MySQL进程的用户
skip-grant-tables  #跳过密码验证
#validate-password=off  #需要禁用密码复杂性策略

3.第3步:启动MySQL进程

[root@mysql mysql]# service mysqld start  启动MySQL进程
Starting MySQL. SUCCESS! 
[root@mysql-2 mysql]#

4.第4步:登录MySQL,不接密码

[root@mysql-2 mysql]# mysql  -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.25 Source distribution

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 
mysql> alter user 'root'@'localhost' identified by  'Sanchuang123#'; --》会报错
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
mysql> flush privileges; 刷新权限(会加载原来没有加载的权限表--》用户名和密码所在的表user等)
Query OK, 0 rows affected (0.01 sec)

mysql> alter user 'root'@'localhost' identified by  'Sanchuang123#'; --》会报错
ERROR 1133 (42000): Can't find any matching row in the user table
mysql> set password for 'root'@'localhost' = 'Sanchuang1234#';    --》修改密码,指定用户名为root@localhost
Query OK, 0 rows affected (0.00 sec)


root@(none) 10:35  scmysql>alter user  'root'@'localhost'  identified by 'Sanchuang123#';
Query OK, 0 rows affected (0.00 sec)

root@(none) 10:40  scmysql>
mysql里完整的用户信息是 用户名@主机名

mysql> quit
Bye

5.第5步:重新修改mysql的配置文件

[mysqld]
socket=/data/mysql/mysql.sock
#user=mysql    --》注释掉
#skip-grant-tables           --》注释掉

6.第6步:刷新服务

[root@mysql-2 mysql]# service mysqld restart  #重新刷新服务
Shutting down MySQL.. SUCCESS! 
Starting MySQL. SUCCESS! 
[root@mysql-2 mysql]#

7.第7步:验证修改密码是否成功

[root@mysql-2 mysql]# mysql  -uroot -p'Sanchuang1234#'
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.25 Source distribution

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

三、另外一种方式:

就是使用其他的管理员账号给别的用户重新设置密码

可以在SQLyog里操作

SET PASSWORD FOR 'root'@'localhost' = 'Sanchuang123#';

总结

暴力破解一般是指拿到网站口令文件库,然后在本地破解。因为往往网站存储的不是明文,有可能是采用了 Hash 函数并加盐运算后存储,需要把它恢复出来,那就需要反向的破解,包括基于猜测字典的破解和暴力破解。后者一般不关注破解效率,适用于算力强大的攻击者。

在这里插入图片描述

目前绝大部分网站都把保护口令帐户的责任推给用户,要让用户生成所谓的强口令,如果帐户出现安全问题,那是因为用户自己的口令强度不够。而现在学术界的共识是,应让网站承担更多的责任,网站可以把用户的口令保护得更好,做到别让口令文件泄漏,即使泄露了也能及时发现,并且通过使用慢哈希(如 Scrypt,Argon2),让黑客也很难将明文口令恢复出来。

在可预见的未来,口令仍将是最主要的身份认证方法。在口令基础之上防范的方法只是锦上添花。因为指纹可以复制且不可更改,基于深度学习的换脸软件又能绕过面部 3D 识别,那么只有口令在我们大脑当中谁也轻易拿不走,至少目前口令的脑电波还不能无线远距离破译。
在这里插入图片描述

无论什么机密,只要是涉及人,特别容易出错,尤其是在当前口令安全理论体系还没有建立、很多基础性问题没有解决的情况下。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-11-23 12:26:02  更:2021-11-23 12:26:25 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 8:53:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码