V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
qinxs
V2EX  ›  程序员

疑惑: 二次验证的状态是如何保存的?

  •  
  •   qinxs · 314 天前 · 1140 次点击
    这是一个创建于 314 天前的主题,其中的信息可能已经有所发展或是发生改变。

    问题描述

    是腾讯云函数对 https://www.baacloud34.com 自动签到时遇到的问题
    之前一直正常,但最近这个网站增加了邮件的二次签到,导致了不能自动签到了

    已知情况

    在请求 https://www.baacloud34.com/modules/_login.php 时,返回值如下

    已二次验证

      code: "1"
      ok: "1"
      msg: "欢迎回来"
      url: "/modules/"
    

    未二次验证

      code: "1"
      ok: "1"
      msg: "欢迎回来"
      url: "/modules/[email protected]&password=XXXXXX"
    

    测试情况

    1. 清除 该网站所有数据(包括 Cookie )后 重新请求 二次验证的状态依然存在(返回值中 url 为 "/modules/")
    2. 换浏览器请求 需要二次验证;使用相同浏览器的新建隐身窗口 不需要二次验证
    3. (在浏览器端 已通过二次验证后)开启抓包软件 需要重新二次验证

    调用栈.png

    猜测应该是把当前的环境数据发送到服务器 根据在服务器端判断
    能否得到这些关键数据 用于 python 中?

    7 条回复    2021-09-09 19:50:14 +08:00
    Leegod
        1
    Leegod  
       313 天前
    公司网站后台也有这个需求,我是直接数据库存浏览器 ua,登陆的时候对比一次
    2i2Re2PLMaDnghL
        2
    2i2Re2PLMaDnghL  
       313 天前
    开启抓包软件是指 Fiddler 之类的中间人吗?
    这样的话我怀疑还包括 TLS 指纹,你可能只能上无头浏览器或者在 Python 中触发二次请求并写个 IMAP 客户端自动收信。
    zhhww57
        3
    zhhww57  
       313 天前
    localstorage 检查了没有?
    qinxs
        4
    qinxs  
    OP
       312 天前
    @Leegod
    模拟请求时,UA 设置一样,还是无效

    @2i2Re2PLMaDnghL
    就是使用 Fiddler
    感觉原来像很多 APP 的信任设备(我查下 TLS 指纹);实在不行,只能尝试从邮件读取验证码了

    @zhhww57
    不是 localstorage,浏览器端的几个信息都检查了的
    phpnote
        5
    phpnote  
       312 天前
    隐身窗口都能通过验证,这就有点神奇了
    zhhww57
        6
    zhhww57  
       307 天前
    这个验证有点像当初阿里云的验证,开两个隐身窗口,结果第二个里面也显示登录了
    qinxs
        7
    qinxs  
    OP
       297 天前
    半个月过去了
    这问题 最终还是 通过从邮箱读取验证码 解决了~
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4205 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 08:16 · PVG 16:16 · LAX 01:16 · JFK 04:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.