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

怎样改造登录页使之可以在不安全的环境下用?

  •  
  •   nikoo · 2019-03-24 09:47:09 +08:00 · 1502 次点击
    这是一个创建于 1858 天前的主题,其中的信息可能已经有所发展或是发生改变。
    前提:仅自己使用的后台登录页面,HTTPS
    假设必须要在一台已中毒+键盘监听+录屏的电脑上登录,是否能做到安全登录且不丢登录密码?

    增加 2FA 是可以,但会丢主登录密码

    因为这个不安全环境并不是针对性的监控,并且该后台仅个人使用(=可随便开脑洞)
    有没有什么奇技淫巧可以在这种环境下增加一点安全性?
    16 条回复    2019-03-24 12:41:44 +08:00
    lhx2008
        1
    lhx2008  
       2019-03-24 09:53:45 +08:00 via Android
    参考微信支付宝的登录,检测登录地,必要时手机短信
    nikoo
        2
    nikoo  
    OP
       2019-03-24 09:56:02 +08:00
    @lhx2008 并不是异地 IP,并且短信验证如同 2FA 一样,只是避免后台被破,但会丢主登录密码
    ETiV
        3
    ETiV  
       2019-03-24 10:01:56 +08:00 via iPhone   ❤️ 1
    接入微信、企业微信的扫码登录,或者你愿意的话 telegram 也可以……

    后端的登录态只允许同时存在一个

    同一个账号在别处登录就踢掉之前的 session

    但是不在别处登录,本机的就一直好使的话,偷了你的 cookie 不还是可以为所欲为
    l12ab
        4
    l12ab  
       2019-03-24 10:05:15 +08:00 via iPhone   ❤️ 1
    浏览器自动填充,各种密码插件
    dovme
        5
    dovme  
       2019-03-24 10:07:16 +08:00 via Android
    只要让别人不知道你的密码就可以,第三方登录,短信验证码都可以。
    lhx2008
        6
    lhx2008  
       2019-03-24 10:08:17 +08:00   ❤️ 1
    @nikoo 丢你是说被窃取的意思?这个早期支付宝 /QQ 就是用那种安全控件,加驱看看有没有额外的键盘钩子,或者是加一些干扰字符输入
    nikoo
        7
    nikoo  
    OP
       2019-03-24 10:10:05 +08:00
    @ETiV 谢谢,很有启发!接微信扫码登录不太现实,telegram 可以扫码吗?没看到呢。。
    另外因为不安全环境并不是针对性的监控,所以可忽略偷 cookie,主要就是登录页怎么改可以避免丢密码
    nikoo
        8
    nikoo  
    OP
       2019-03-24 10:12:36 +08:00
    @l12ab 在已中毒的电脑上安装密码管理插件。。。这个。。。
    nikoo
        9
    nikoo  
    OP
       2019-03-24 10:13:41 +08:00
    @lhx2008 这种控件有没有开源的?如何加一些干扰字符输入呢?
    nanaw
        10
    nanaw  
       2019-03-24 10:23:02 +08:00 via Android
    你手写一套扫码登录就 OK 了(
    ETiV
        11
    ETiV  
       2019-03-24 10:25:28 +08:00 via iPhone   ❤️ 1
    企业微信很好弄的 你自己用,不需要认证企业

    telegram 类似上行短信认证:网页上显示一串字符,用户通过 telegram (但其实任意 IM 都行)发消息给特定的服务账号,然后网站程序这边接入一下,就知道发来消息的 telegram 的 user id,就可以实现用户登录了

    你的根本诉求是“不泄露密码”,所以其实验证环节拿掉密码就行了,233 …所以,输入手机号+短信验证码也可以的
    nikoo
        12
    nikoo  
    OP
       2019-03-24 10:29:29 +08:00
    @ETiV 谢谢,是可以这样,就相当于登录页仅保留 2FA 直接去掉密码。。。

    但有没可能仍是密码登录,但输入的密码不会被泄露呢,
    比如在登录页随机显示一个字串,然后我 md5(字串+密码) ,然后用该 md5 值来登录,这是我能想到的,但有点麻烦
    lawler
        13
    lawler  
       2019-03-24 11:23:51 +08:00   ❤️ 1
    两个 0 成本方案:

    1,动态方案:输入账号校验成功,通过 server 酱发送一个校验码,输入正确则登陆成功。
    2,静态方案:参考将军令。如密码 salt 是时间戳的 36 位,1553397760->poupds。
    dream7758522
        14
    dream7758522  
       2019-03-24 11:51:20 +08:00 via Android   ❤️ 1
    最简单的是写一段代码,大致的逻辑如下:
    手机访问 a 网址,获取一段数字,同时服务器端保存数字。
    然后 pc 端用该数字登录,同时服务端销毁该数字。
    dream7758522
        15
    dream7758522  
       2019-03-24 11:52:37 +08:00 via Android
    不考虑界面美观的话,10 分钟就能搞定吧
    lshero
        16
    lshero  
       2019-03-24 12:41:44 +08:00 via Android
    各种防范密码泄露
    最后病毒偷走了 cookie
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3995 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 05:15 · PVG 13:15 · LAX 22:15 · JFK 01:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.