我们真的需要复杂的密码吗?

2023-10-26

  • 目录
    {:toc}

现状

想写这篇文章很久了,不过作为一个安全行业的从业者,总觉得说出来有些汗颜,我们这个行业的安全人员总是引导甚至强制灌输人们设置复杂密码的做法,让我一直觉得写这篇文章是在对我们的自我否定、自我打脸,所以也就一直没有写。

直到我的想法发生了变化,我决定还是要说点什么,一味地隐藏自己和自己的想法并不是一件明智的事情,虽然行业告诉我要学会保护和隐藏自己,但我觉得完全没有必要。而且我身边的人正面临着这种痛苦,他们同我一样苦恼,我想是时候传播一些想法了。

前阵子,老婆发来信息,抱怨现在很多网站的密码都强制要求必须设置得很复杂,原来她正在注册一教育平台,而平台对她设置密码的要求如下:

密码必须由数据、小写字母、大写字母、特殊符号组成!

图片也有,但是我就不上传了,markdown写作还是尽量使用文字方便一点。

这种事情想必大家都遇到过,注册的网站一旦多起来,这种复杂的密码如何记忆?而这种变态的要求正是我安全行业的人士提出,并不断给世人灌输和强制推广开来的,以前觉得倒是挺有道理,但是现在看来并不完全是,甚至是弊大于利。

比如“Wohao5huA!”、“P@55w0rd”、“Uj3k?u90”……,这种密码你怎么记忆?

安全人员一定会告诉你,不同的网站账号密码不要雷同,而且要设置的足够复杂,例如按上面的密码规则一样,但是我们真的能记住这些复杂的密码吗?对我而言,记住一个复杂密码就已经够头疼的了,还要那么多的账号密码都不相同,打死我也记不住。最后再补一刀,密码还要定期更换,每次更换的时候要跟上次密码不能雷同,简直吐血啊。那么接下来会导致什么现象出现呢?
- 干脆所有账号的密码都一样
- 把密码写下来,贴在电脑上、桌子上、墙上……
- 把密码存放在文本文件里
- 使用三方密码管理软件
- 不断的忘记密码,不断的找回密码,不断的设置密码,不断的忘记密码……

有人因为头疼繁琐密码的记忆,居然把WiFi密码设置得和支付宝密码一样,真是让人捏把汗。

本人的切身体会,恒生银行,因为总是让我设置过于复杂的密码,导致的问题是自从办过卡后我就再也没有使用过,直到最后打算把剩余的钱取完没办法才去重置密码,而重置密码又必须携带身份证到比较远的地方办理,重置的密码又必须是一个复杂的密码,这样最后我就干脆不再使用这张银行卡了,真是头疼。

那么推而广之,如果你是在运营一个互联网的产品,如果密码设置的很复杂,用户势必会因为每次登录忘记密码而减少使用频次,甚至是拒绝使用,就像上面的恒生银行一样。
安全和便利是一对矛盾。当然幸运的是现在有了手机验证(其实以前也有,但是估计是资费问题使用的很少,不如现在常见),省去了用密码登录的麻烦。但是目前仍然有很多产品仍然需要使用密码登录,这一环节自始至终都会有。

这一点上微信做的就比较好,首先微信减少了用户登录的次数,它对设备进行关联绑定,让用户不用每次都登录密码(那些同样是做社交类APP的公司值得学习的);其次,即使要设置密码,你会发现它也没有强制你设置复杂的密码,因为它在服务端设置了对设备的关联绑定,即使他人猜到了你的密码在试探登录时,服务端因为检测到设备环境发生变化会要求进行二次验证,这在很大程度上保证了安全。总之,微信的安全措施由微信团队来做了,而不是把复杂的事情让用户去承担,就在这一点的认知上就值得学习。

记不清是哪本书里有提过这么一段,作者在过安检的时候遇到点麻烦,需要工作人员登录出入境的内部系统查询信息,但是该系统要求密码必须为复杂密码,但是工作人员根本记不住,就索性写下来贴在了桌子上,而作者在等待的过程中就很容易地窥探到了密码。

而使用密码管理软件,一是这些管理软件的可信度和安全性值得怀疑,二是这些管理软件一旦有突破的可能,则可能导致用户的账号密码被一窝端。

原因

为什么一定要输入复杂密码?产生这种现象的原因是什么?一些人肯定会用这句话来解释:存在即合理!
我想说的是存在的不一定合理,可以从以下几个层面去解释:
- 安全事故
- 安全行业人员的误导
- 错误的政策要求
- 账号密码系统的负责团队的担责

首先说说安全事故,记得CSDN出现过一例被拖库的事件,640万密码泄露:

网传知名程序员社区CSDN遭遇黑客攻击,共涉及640多万个账户信息泄漏的消息,得到CSDN官方确认。接着天涯社区4000万用户资料泄密,令人震惊。
继CSDN被攻击后,今天又有消息传出称,多玩游戏也有800万用户资料被泄露,甚至传言称,包括人人网、开心网、天涯社区、世纪佳缘、百合网等大批社交网站会成为下一批目标。

我想说的是,这种密码泄露是这些产品团队的安全维护做得不到位,而且密码居然在服务端明文存储!即使用户的密码再复杂,也经不起这样折腾,也是一样会被泄露的呀。黑客拿到这些明文的密码之后,就会去其他的网站平台去撞库。

撞库是黑客通过收集互联网已泄露的用户和密码信息,生成对应的字典表,尝试批量登陆其他网站后,得到一系列可以登录的用户。

如果你其他重要平台的密码跟出现安全事故平台的密码雷同,就存在风险了,首先要做的就是赶紧去更改与之雷同或相似的密码。鉴于此,对于非重要平台账号和重要平台账号,平时应予以区分开来,设置不同的账号和密码规则,举个例子:
你仅仅是想下载一个资料,但是这个网站以后可能不会再登录,甚至很少再登录了,那么我强烈你使用垃圾密码,这里说的垃圾密码是区别于重要账号密码的。
你家的WiFi密码也不至于设置和银行卡支付宝密码一样吧?
减少重要密码在网络其他平台上的曝光次数,也就是说你的财务密码没必要拿去设置为一般性网站的密码。

再说说安全行业人员的误导,设置复杂密码的建议是谁提出的呢?

2003年,Bill Burr为美国政府工作的时候提出了密码安全领域的这一“圣经”:使用大写字母、数字和非字母符号,原因是复杂的密码难以被猜到,同时他建议经常更换密码。

如果是对于一流级安全从业者也许适用,然而这项建议却被一层层传达开来,逐渐被普通平台也视为铁律,有点过头了。

但是现在,Burr终于承认,他的建议是错的!他表示,这些办法其实不能提高密码的安全性,反而会更容易受到攻击,因为用户设置了复杂密码后,可能会重复使用,或者为了避免忘掉,往往会写下来甚至贴在电脑旁边。

再说说错误的政策要求。有些企业和单位也知道没必要设置这复杂的密码,但是政府一旦掺和进来监管,就一棍子打死了,没有给你可选择的机会。我听到过另一个说法,就拖库事件而言,酒店行业也常有发生,据说把很多官员的开房记录都给泄露了,我不知道政府的出发点上有没有一点这个缘故,总之听听就好。即使有,当然也不会是主要因素,但是强制监管无非是多了一个寻租的手段而已,各行各业都要监管的,这是国内惯例。

最后说说账号密码系统的负责团队的担责,假设你是一家互联网公司里用户账号密码体系的负责人,你会怎么要求你的用户设置密码?如果你不加以限制,你的老板会不会觉得你没有尽到责任?你的同行会不会觉得你很水?

想象以下,一家互联网平台的密码可以设置的很简单,那么如果这家公司运营的好体现出了价值,就一定会出现用户密码被盗的情况,这种安全事故势必会成为该公司前进成长的绊脚石,一定会加强,结果就是复杂密码的出现。

既然行业里大家都这么做,你也只好这么做,于是乎,大环境就形成了。

建议

分析了以上几个原因后,我失望地发现设置复杂密码已经是现实,必须遵从的现实,但是我们仍然可以通过以下几个方面来降低我们记忆复杂账号密码的负担,提高我们账号的安全性。

1、分级

区别对待重要账号密码与普通账号密码,可以分个三类:
- 重要账号密码
- 一般性账号密码
- 垃圾账号密码

对于家里的WiFi管理,我完全赞同你把账号密码写下来,也完全可以贴在墙上或者桌子上。毕竟家里不是公共场所,来家里的无非是亲戚朋友熟人,或者偶尔有维修师傅快递人员等,他们对你家的WiFi账号并不感兴趣,最多是问一下WiFi密码,当然大家也都会相告,所以刻意隐藏WiFi密码也没意义。但是一定要跟其他账号密码不存在关联,否则密码泄露就是泄露一连串,因为你的手机号这些人是很清楚的,有好奇或者心怀恶意的人用你的手机号和WiFi密码来去试探你其他的账号密码就容易造成安全事故。

你那些登录频次很低,甚至是垃圾网站平台的密码,就没必要设置得和银行卡支付宝密码一样了吧?!

垃圾平台的账号密码,登录频次非常低,一年登录不了一次,索性不要去记忆,用的时候找回即可,但是你要记住找回的路径,用什么方式可以找回。这个跟知识的检索一个道理,你不用记住完整的一套东西,但是只要你想用的时候能知道怎么找到这套东西即可。

2、断联

如果你仍然嫌多,那就索性分为两类:
- 重要性的账号密码
- 不重要的账号密码

重要的账号系统跟不重要的账号系统就要走不同的,例如我会专门申请一个邮箱用来接收垃圾平台的邮件和找回密码,我这个邮箱我称为垃圾邮箱。而重要平台和银行类的找回密码邮箱我用的是另一个邮箱,称之为重要邮箱。
垃圾邮箱随便用,即使在网上随便发出去都没关系,即使被盗我也漠不关心,因为它不关联我的其他账号体系。而重要的邮箱我会减少曝光,所以至今这个邮箱都很少受到垃圾和广告邮件。当那些垃圾平台或网站因为运营不善导致的安全事故也不会波及到我啦。

3、手机验证

可增加用手机验证登录的频次,减少对密码的设置和使用

4、联想密码

如果你的重要平台的账号密码仍然很多,可以根据使用该平台的相关功能进行关联记忆。

5、不上不正规网站不用不正规应用

现在是移动互联网时代,我说一个Android手机上的安全事情,我遇到过的:在下载了恶意软件(事先是不知道是不是恶意软件的)后,该应用有读取密码的权限,由于在安装的时候一堆权限夹杂在一起很难逐个去判别,结果在运行该软件后它自动去进行手机验证码的认证,因为手机发来的验证短信它会自动去读取,并会根据验证短信里的关键字匹配到自己需要的那条验证码,然后悄悄地做一些事情。我当时是被恶意开通了移动的增值服务费,虽然事后打移动客服电话投诉撤销了资费,但是你就不怀疑一下:这些增值服务商,移动在合作的时候不知道它们是恶意的?无非是一个明火执仗,一个事后分赃罢了。

6、安全事故应急措施

例如最近的“华住旗下酒店1.3亿用户数据泄露”事件,出现这类事件后应立即更改与该平台相关的邮件密码,严重的可更换手机号等。现在是数据分析时代,黑客把这些数据卖给黑产,通过数据分析来有效地进行人物画像,进而可大大提高诈骗的成功率。

8月28日,暗网中文论坛上出现一则出售华住酒店数据的帖子,涉及1.3亿人身份及开房信息的数据被标价为8比特币或520门罗币(约等于37万人民币)出售。对此,华住酒店集团向新京报记者表示,华住已经报警,目前,兜售的信息是否来源于华住正在内部核实,事件正在调查,调查结果会进一步公布。

发帖人发布的内容显示,被出售的数据包含汉庭、美爵、禧玥、漫心、诺富特、美居、CitiGo、桔子、全季、星程、宜必思、怡莱、海友等酒店。被售卖的数据共为三部分,分别为华住官网注册资料信息,共53G,约1.23亿条记录;酒店入住登记身份信息资料,共22.3G,约1.3亿人身份证信息;酒店开房记录信息资料,共66.2G,约2.4亿条记录。

而这次事件疑似华住公司程序员以数据库连接方式于20天前上传至github(一个面向开源及私有软件项目的托管平台)导致泄露。

早在2013年,汉庭等酒店就出现过数据泄露,当时是因为酒店所使用的Wi-Fi管理和认证管理系统存在漏洞,数据传输过程并未加密,导致数据泄漏。此次数据被拖库的原因尚不清楚,华住官方暂无回应。

有趣的是,以上几个安全事故均不是因为用户的密码设置不当导致,即使是用户密码设置的很复杂一样会被牵连,这些事故的造成均是公司的安全运维做的不够到位。而对于用户来说,出现安全事故后第一时间修改其他账号密码,泄露的邮箱可以废弃,与该邮箱关联的账号可以解绑并重新绑定一个新的邮箱了,也即实现断联。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我们真的需要复杂的密码吗? 的相关文章

  • Svm实现多分类

    机器学习 Svm实现多分类详解 Svm实现多类分类原理 代码实现 训练的图片 Svm实现多类分类原理 1 支持向量机分类算法最初只用于解决二分类问题 缺乏处理多分类问题的能力 后来随着需求的变化 需要svm处理多分类分为 目前构造多分类支持
  • 各种音视频编解码学习详解(11)--Flash Video系列

    用于在 Flash 中压缩视频 FLV流媒体格式是一种新的视频格式 它的出现有效地解决了视频文件导入Flash后 使导出的SWF文件体积庞大 不能在网络上有效使用等 缺点 一般FLV文件包在SWF PLAYER 的壳里 并且FLV可以很好的
  • Linux Memcached 安装

    1 Linux系统安装memcached 首先要先安装libevent库 memcache依赖于libevent 必须先安装 自动下载安装方式 也可使用源码安装方式 yum install libevent devel yum instal
  • 陪我到可可西里看一看海,不要未来,只要你来。——大冰 《陪我到可可西里去看海》

    陪我到可可西里看一看海 不要未来 只要你来 大冰 陪我到可可西里去看海
  • 斐波那契查找详细注解版

    对于斐波那契数列 1 1 2 3 5 8 13 21 34 55 89 也可以从0开始 前后两个数字的比值随着数列的增加 越来越接近黄金比值0 618 比如这里的89 把它想象成整个有序表的元素个数 而89是由前面的两个斐波那契数34和55

随机推荐

  • Python中RotatingFileHandler、TimedRotatingFileHandler函数用法

    欢迎来到我的博客 作者 秋无之地 简介 CSDN爬虫 后端 大数据领域创作者 目前从事python爬虫 后端和大数据等相关工作 主要擅长领域有 爬虫 后端 大数据开发 数据分析等 欢迎小伙伴们点赞 收藏 留言 背景 在python开发过程中
  • Linux如何卸载软件

    Linux系统可以通过终端 Terminal 或图形界面 GUI 来卸载软件 终端方式可以使用apt get Ubuntu 或yum CentOS 命令来实现 而图形界面方式可以使用系统自带的软件管理器来实现 比如Ubuntu的Ubuntu
  • libev学习系列之二:libev下载

    libev学习系列之二 libev下载 版本说明 版本 作者 日期 备注 0 1 ZY 2019 5 31 初稿 目录 文章目录 libev学习系列之二 libev下载 版本说明 目录 官网 GitHub 我的某度网盘 官网 可以去官网下载
  • 【python练习题 03】高矮个子排队

    题目 现在有一队小朋友 他们高矮不同 我们以正整数数组表示这一队小朋友的身高 如数组 5 3 1 2 3 我们现在希望小朋友排队 以 高 矮 高 矮 顺序排列 每一个 高 位置的小朋友要比相邻的位置高或者相等 每一个 矮 位置的小朋友要比相
  • Date:January 29th Title: 集训Day2-小信小友打怪兽 题解

    时间 1s 空间 256M 题目描述 小信与小友一起组队打怪兽 有一个长度为n的怪兽序列 一些怪兽会对小信造成伤害 另一些不会 小友是大佬 所有怪兽都伤害不了他 小信与小友轮流打怪兽 小信先手 小友后手 他们需要按照顺序打怪兽 由于技能有冷
  • 小米盒子3s刷机为国际版系统android TV 8.0

    小米盒子3s刷机为国际版系统android TV 8 0 所需工具和软件 一个U盘 adb工具 使用adb工具 通过ip连接小米盒子 官方下载地址 点此进入 dump 16AB img MiBOX3S queenchristina r145
  • tera-PROMISE数据集

    tera Promise数据集 原网址 http openscience us repo 已经打不开 备份网址 https github com opensciences opensciences github io 来源 论文An Imp
  • 蓝桥杯历届试题——取球游戏(博弈论)

    取球游戏 今盒子里有n个小球 A B两人轮流从盒中取球 每个人都可以看到另一个人取了多少个 也可以看到盒中还剩下多少个 并且两人都很聪明 不会做出错误的判断 我们约定 每个人从盒子中取出的球的数目必须是 1 3 7或者8个 轮到某一方取球时
  • 文件对应的Content-Type类型

    https www cnblogs com liu heng p 7520564 html CONTENT TYPE load text html 123 application vnd lotus 1 2 3 3ds image x 3d
  • 海思Hi3559A平台移植 opencv4.0.0

    原文 https blog csdn net xclshwd article details 85257117 海思Hi3559A平台移植 opencv4 0 0 2018年12月26日 09 51 53 xclshwd 阅读数 370 版
  • Jetpack学习之WorkManager

    绝大部分应用程序都有在后台执行任务的需求 根据需求的不同 Android为后台任务提供了多种解决方案 如JobScheduler Loader Service等 WorkManager为应用程序中那些不需要及时完成的任务提供了一个统一的解决
  • 基于MATLAB的图像压缩感知

    一 课题背景 数据压缩技术是提高无线数据传输速度的有效措施之一 传统的数据压缩技术是基于奈奎斯特采样定律进行采样 并根据数据本身的特性降低其冗余度 从而达到压缩的目的 近年来出现的压缩感知理论 Compressed Sensing CS 则
  • 将参数字符串中的字符反向排列,不是逆序打印。

    小题分享 定义一个字符串 abcdef 封装一个函数使他反向排列 不是逆序打印 我们很容易就能想到一种方法 采用循环的方式互换首尾的元素 void reverse char str int left 0 int right strlen s
  • 廊坊师范学院IT提高班,你真正了解多少?

    最近在csdn博文中经常看到博友们问 什么是提高班 更有人对提高班怀有疑惑 or 不理解 廊坊师范学院信息技术提高班到底是怎样的一个地方 你对这个地方又有怎样的认识 你对这个地方是否怀有一份好奇心呢 让这篇文章解开你心中的某些疑惑吧 我一个
  • Node.js使用session或JWT机制登录验证教程

    Session实现代码 Session 对象存储特定用户会话所需的属性及配置信息 这样 当用户在应用程序的 Web 页之间跳转时 存储在 Session 对象中的变量将不会丢失 而是在整个用户会话中一直存在下去 当用户请求来自应用程序的 W
  • 小程序中实现点击切换不同组件的效果

    前言 小程序中实现点击切换不同页面的组件效果 实现效果 实现步骤 第一 分别建立三个页面的文件夹以及他们的相关文件 第二 index模块中 index wxml
  • 安装APK的两种方式

    我的新书 Android App开发入门与实战 已于2020年8月由人民邮电出版社出版 欢迎购买 点击进入详情 网络安装 一般通过网线连接到设备 通过网线进行apk的传输和安装 步骤如下 1 adb connect 目标设备ip和端口 2
  • C++中long是什么类型

    long long本质上还是整型 只不过是一种超长的整型 int型 32位整型 取值范围为 2 31 2 31 1 long 在32位系统是32位整型 取值范围为 2 31 2 31 1 在64位系统是64位整型 取值范围为 2 63 2
  • AIGC基础:从VAE到DDPM原理、代码详解

    作者 王建周 单位 来也科技AI团队负责人 研究方向 分布式系统 CV NLP 前言 AIGC 目前是一个非常火热的方向 DALLE 2 ImageGen Stable Diffusion 的图像在以假乱真的前提下 又有着脑洞大开的艺术性
  • 我们真的需要复杂的密码吗?

    目录 toc 现状 想写这篇文章很久了 不过作为一个安全行业的从业者 总觉得说出来有些汗颜 我们这个行业的安全人员总是引导甚至强制灌输人们设置复杂密码的做法 让我一直觉得写这篇文章是在对我们的自我否定 自我打脸 所以也就一直没有写 直到我的