在针对云上服务器的入侵事件中,有近一半的比例是弱口令爆破攻击,每年由此类攻击引发的勒索和挖矿行为给云上服务器用户带来巨大的损失。为了减少此类入侵事件带来的损失,您可以参考本文完成弱口令的安全加固和攻击防御。
背景信息
据部分行业媒体报导,近年来由弱口令引发的安全事件占到云上安全事件总数的一半以上,并且有逐年上升的趋势。有研究机构预测2021年在全球范围由勒索病毒和挖矿病毒引发的经济损失预估将超过300亿美元。
弱口令攻击防御方法
您可以通过以下两种方法防御弱口令攻击:
- 设置复杂密码复杂密码应同时满足以下要求:
- 密码长度大于等于8个字符。
- 至少包含大写字母(A~Z)、小写字母(a~z)、数字(0~9)、特殊字符(`~!@$%^&*()-_=+#|[{}];:'",<.>/?)中三种字符的组合。
- 密码不能为用户名或用户名的倒序。
- 不使用常见或公开的弱口令。
- 已公开的常用弱口令。例如abcd1234、admin、root、admin@123等。
- 数字或字母连排或混排,键盘字母连排。例如123456、abcdef、123abc、qwerty、1qaz2wsx等。
- 短语密码。例如5201314、woaini1314等。
- 公司名称、 生日、姓名、身份证、手机号、邮箱名、用户ID、时间年份等。
- 避免服务端口开放到互联网
如果云服务器的运维端口和数据库服务端口暴露在互联网上,则存在被黑客扫描发现和暴力破解的风险。您可以使用安全组减小服务端口的暴露面,仅将端口开放给有业务需要的服务器访问。安全组的使用方法,请参见安全组概述。
常见系统及服务口令修改方法
以下表格介绍修改Linux服务器、MySQL数据库、Redis数据库等常见系统的登录弱口令的操作方法。
系统名称 | 修改登录口令操作步骤 | 说明 |
---|---|---|
Linux系统 | 在Linux系统服务器中,执行passwd [<user>]命令修改用户登录口令。 | 其中<user> 为登录用户名,如果不输入则修改的是当前用户的口令。执行完命令后请根据提示输入新口令。
|
Windows系统 | 本处以Windows 10为例,说明修改用户登录口令的方法。
|
无。 |
MySQL数据库 |
|
无。 |
Redis数据库 |
|
其中<password> 为登录口令。如果已存在登录口令,则将其修改为复杂口令;如果不存在登录口令,则添加新口令。
|
SQL Server数据库 |
|
其中<oldpassword> 为旧口令,<newpassword> 为新口令,<user> 为用户名。
|
MongoDB数据库 |
|
|
PostgreSQL数据库 |
|
其中<user> 为用户名,<newpassword> 为新口令。
|
Tomcat |
|
无。 |
Rsync |
|
无。 |
SVN |
|
无。 |
vsftpd服务器软件 |
|
无。 |