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

原来本地的所有软件都是可以知道当前登录了啥 qq 号的

  •  1
     
  •   cy97cool · 2019-01-13 14:32:27 +08:00 · 3879 次点击
    这是一个创建于 2126 天前的主题,其中的信息可能已经有所发展或是发生改变。
    curl 'https://localhost.ptlogin2.qq.com:4301/pt_get_uins?callback=c&pt_local_tk=.' -H 'Cookie: pt_local_token=.;' -H 'Referer: qq.com' -k
    

    返回信息包含当前登录的 qq 号,昵称

    但其他网站并不能拿到你的 qq 号:

    • pt_local_tk 起到一个 csrf_token 的效果 需要与 cookie 一致,跨域请求只有知道预先 qq.com 的 cookie 才能通过这个验证
    • Referer 中的域名必须以 qq.com 结尾

    然而这些限制在运行在客户端的软件而言都没任何作用

    credit: https://blog.caoyue.me/post/how-qq-quick-signin

    11 条回复    2019-01-14 18:24:28 +08:00
    chinvo
        1
    chinvo  
       2019-01-13 14:34:51 +08:00
    > HTTP/1.1 400 Bad Request

    并没有用,这个 tk 不止和 pt_local_token cookie 相关
    cy97cool
        2
    cy97cool  
    OP
       2019-01-13 14:36:35 +08:00
    https://imgcache.qq.com/ptlogin/ver/10291/js/c_login_2.js

    r = "http" + (pt.ptui.isHttps ? "s" : "") + "://localhost.ptlogin2." + pt.ptui.domain + ":[port]/" + t + "&r=" + Math.random() + "&pt_local_tk=" + $.cookie.get("pt_local_token");
    qiayue
        3
    qiayue  
       2019-01-13 14:37:48 +08:00 via Android
    你想太简单了,如果真有这样的漏洞也早补上了,不会留到 2019 年
    mercury233
        4
    mercury233  
       2019-01-13 14:41:30 +08:00
    如果你用 chrome 记住了密码,那所有软件都能直接读取的
    crab
        5
    crab  
       2019-01-13 14:43:54 +08:00
    都能本地运行软件了,窗口类名枚举也可以。
    qq292382270
        6
    qq292382270  
       2019-01-13 15:05:24 +08:00
    本地软件,最简单的就是检测 QQ 号文件夹状态都可以知道当前哪些号登陆了. 这是很正常的事 .
    yunye
        7
    yunye  
       2019-01-13 15:30:48 +08:00
    QQ 安装目录下的 QQ 号文件夹,看最近修改的是哪个,就知道是登的哪个 QQ 了
    99junlin99
        8
    99junlin99  
       2019-01-14 00:23:32 +08:00 via Android
    @mercury233 ???这么恐怖?
    mercury233
        9
    mercury233  
       2019-01-14 01:06:30 +08:00
    @99junlin99 nirsoft 的 chromepass 了解一下。chrome 就是这个思路,同步的密码几乎明文的在本地存了一份,大概因为你电脑已经被入侵的话怎么加密都没意义
    GDC
        10
    GDC  
       2019-01-14 12:34:59 +08:00
    @crab
    @qq292382270
    @yunye

    不需要这么麻烦,本地软件模拟一个浏览器运行窗口,比如 C# Winform 的 WebBrowser,打开 https://id.qq.com/login/ptlogin.html 过一会解析页面上的元素就好了… 把控件弄隐藏,再加个模拟点击,还能拿到 cookies 呢…
    Les1ie
        11
    Les1ie  
       2019-01-14 18:24:28 +08:00
    QQ 用了 oicq 协议,发送的数据包里面包含了本地登录的 QQ 号
    QQ 发送的图片是明文传输

    不止本地客户端,链路上经过的设备也知道你发送的图,你的 QQ 号

    另外,同意 9 楼 的看法,如果电脑被入侵了,这些措施是没意义的。

    如果能在本地执行程序了,盗取 QQkey 比获取你的 QQ 号更有价值

    @mercury233 #9
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2543 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 66ms · UTC 01:34 · PVG 09:34 · LAX 17:34 · JFK 20:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.