V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
rocksolid
V2EX  ›  问与答

初始密码通过短消息发送,会有什么安全问题么

  •  1
     
  •   rocksolid · 2022-12-06 11:24:32 +08:00 · 1939 次点击
    这是一个创建于 709 天前的主题,其中的信息可能已经有所发展或是发生改变。
    想问下各位大佬,初始密码通过短消息发送,会有什么安全问题么,现在还有哪家银行会用短信发初始密码么?
    19 条回复    2022-12-06 22:18:18 +08:00
    dunn
        1
    dunn  
       2022-12-06 11:29:53 +08:00 via iPhone
    看你的安全等级了。发送到没关系
    但是大部分用户可能不会更改密码或删除短信。而且还容易忘记密码
    dddd1919
        2
    dddd1919  
       2022-12-06 13:08:12 +08:00
    可能会被有短信权限的 app 读到,如果为了用户能快速登录,用户首次登录最好引导用户设置一个新密码
    hicdn
        3
    hicdn  
       2022-12-06 13:22:08 +08:00 via Android
    不用密码,用短信验证码登录安全性都比用短信发初始密码强。

    万一短信服务商的某个员工看了发送日志,用户又没修改密码,手贱就登录进去了。
    zooo
        4
    zooo  
       2022-12-06 13:30:47 +08:00
    发送初始密码后,首次登陆强制修改密码就好了(一个思路)
    IvanLi127
        5
    IvanLi127  
       2022-12-06 13:44:02 +08:00
    只要收密码的人安全意识高就行,他会立即上线修改密码。

    如果他安全意识不高,那系统就得想逼他提高意识。
    rocksolid
        6
    rocksolid  
    OP
       2022-12-06 13:53:14 +08:00
    @dddd1919 首次肯定是要修改密码的,除了有些 app 会去读取,其他还会有什么安全隐患呢
    rocksolid
        7
    rocksolid  
    OP
       2022-12-06 13:57:39 +08:00
    @IvanLi127 一般都是默认用户没有安全意识
    IvanLi127
        8
    IvanLi127  
       2022-12-06 14:26:26 +08:00
    @rocksolid 是的,所以初始密码一般是一次性的。为了避免发送初始密码开始,到用户上线修改密码这段时间被他人登录,所以得让用户手动请求,再发送这个一次性临时密码。为了识别用户,较少他人误获取这个一次性临时密码,所以申请获取时要求填写完整或部分手机号用来验证当前用户是否是系统的注册用户。最后就成了发短信验证码改密了。。。 所以初始密码用短信发送安全问题还挺多。
    lisxour
        9
    lisxour  
       2022-12-06 14:30:33 +08:00
    一般发送的是一次性临时密码,只能登陆一次,且登陆后必须更改密码
    815979670
        10
    815979670  
       2022-12-06 14:38:46 +08:00
    不如发短信告诉用户初始化成功,首次登陆使用短信验证码 且在登录之后修改密码
    rocksolid
        11
    rocksolid  
    OP
       2022-12-06 14:44:02 +08:00
    @815979670 验证码必然有的,密码加验证码,关键是初始密码通过短信是不是会有安全问题
    leoleoleo
        12
    leoleoleo  
       2022-12-06 14:56:12 +08:00
    这个场景下,前提是用户本身并不会有足够的安全意识,接下来需要关注的几个问题。一是密码泄露的可能性(比较大概率的几个途径,比如你发送短信的业务本身的日志、短信渠道商的系统和用户手机终端本身) 二是密码泄露后产生影响的持续性(这个密码是永久的,还是有时效的,还是一次性的。) 三是如果真的出现泄露,影响的范围和利用的成本。(可以影响多广的范围以及自动化利用的难度是否比较大)四是这个方式的用户体验。

    作为安全工程师的个人建议:发送有时间有效性限制的密码设置链接(有条件的,不同短信渠道,后台做一个标记),且链接使用后立即失效。这样子的益处是:不直接发送密码,泄露后无法直接登录利用,提高自动化利用的成本,而且解决了强制用户修改密码的问题(密码复杂度是另外一个问题)。通过有效时间的控制和使用后立即失效,可以保证在出现泄漏的情况下,除非有极强的自动化利用手段,不然对方很难大范围的利用这个泄漏来搞破坏。如果做了不同短信渠道的标记,也能作为短信渠道信息泄漏的排查线索。

    直接给用户发密码的应用或者业务,除非不得已,不然就不用。
    815979670
        13
    815979670  
       2022-12-06 15:08:07 +08:00
    @rocksolid 我的意思是:第一次发短信,只告诉 "用户初始化成功,可以在登录时通过短信验证码登录" 这些信息,然后用户首次登陆时,临时获取验证码,且设置有效期,登录成功后修改密码。
    rocksolid
        14
    rocksolid  
    OP
       2022-12-06 15:25:38 +08:00
    @leoleoleo 非常感谢 很有启发,我也是觉得明文密码 太多隐患了
    rocksolid
        15
    rocksolid  
    OP
       2022-12-06 15:27:02 +08:00
    @815979670 我明白 我其实不是需要安全的方法,而是觉得短信这种做法不安全,想拒绝掉
    dddd1919
        16
    dddd1919  
       2022-12-06 16:07:48 +08:00
    @rocksolid 不光是安装的 app ,手机系统也会索引短信内容,相当于对手机来说只是个普通的文本信息,而且可能会被上传上去做分析,带来的间接隐患就算不过来了
    xJogger
        17
    xJogger  
       2022-12-06 16:15:37 +08:00
    不如激进一点,用户可以没有密码,每次登录都需要验证码,如果用户觉得每次验证码都烦的话,可以自己设置密码来替代验证码登录。
    缺点是验证码费用会增加,但现在好多 app 不都这么干。
    rocksolid
        18
    rocksolid  
    OP
       2022-12-06 17:11:29 +08:00
    @xJogger 这种不够的,一般都要求多因子验证的
    kaneg
        19
    kaneg  
       2022-12-06 22:18:18 +08:00
    验证码之所以可以用短信发送是因为有时效性,过了一定时间,即便被人知道也没关系。但密码一般有效性没那么短,所以泄露的风险就更大。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1273 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 18:10 · PVG 02:10 · LAX 10:10 · JFK 13:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.