RenzHoly
V2EX  ›  Node.js

极光推送辣鸡

  •  
  •   RenzHoly · Mar 6, 2017 · 5307 views
    This topic created in 3359 days ago, the information mentioned may be changed or developed.

    极光推送官方 Nodejs SDK 竟然 eval 去执行从服务器传回来的代码 还“聪明”地用括号括起来,呵呵 https://github.com/jpush/jpush-api-nodejs-client/blob/master/lib/JPush/JPush.js#L448

    15 replies    2017-03-10 18:29:32 +08:00
    fyibmsd
        1
    fyibmsd  
       Mar 6, 2017
    这代码牛逼坏了
    bdbai
        2
    bdbai  
       Mar 6, 2017 via Android
    在那个 JSON 还没被浏览器广泛兼容的年代, eval 加括号解析 JSON 是很常见的事...
    DoraJDJ
        3
    DoraJDJ  
       Mar 6, 2017 via Android
    @bdbai 不过现在用 JSON.parse 就能解析 JSON 了,如果还在用老掉牙的 eval 会不会造成漏洞利用?
    SourceMan
        4
    SourceMan  
       Mar 6, 2017 via iPhone
    没毛病
    zollum
        5
    zollum  
       Mar 7, 2017
    已经修改了,官方动作有点快
    RenzHoly
        6
    RenzHoly  
    OP
       Mar 7, 2017
    @bdbai 但这里是 node
    qfdk
        7
    qfdk  
    PRO
       Mar 7, 2017
    要是不改 n 个服务器又会背沦陷了 :)
    wangjie
        8
    wangjie  
       Mar 7, 2017 via iPhone
    已经改了 666
    xiezefan
        9
    xiezefan  
       Mar 7, 2017
    原谅提交这行代码的那位可怜的爪哇程序猿......
    coderzheng
        10
    coderzheng  
       Mar 7, 2017
    奇怪, V 站没改主题啊,为啥这个页面打开是黑色背景的。
    run2
        11
    run2  
       Mar 7, 2017
    jych1224
        12
    jych1224  
       Mar 7, 2017
    我想知道你是如何发现的
    bdbai
        13
    bdbai  
       Mar 7, 2017 via Android
    @DoraJDJ @RenzHoly 确实有安全问题,只是看到楼主一脸诧异的样子...
    RenzHoly
        14
    RenzHoly  
    OP
       Mar 9, 2017
    @jych1224 它们的服务器出了问题,发出来一个不完整的 json , eval 出错,导致我们的服务重启。看日志发现的
    Fontaine
        15
    Fontaine  
       Mar 10, 2017
    我想说 468 行 if (method === 'POST' || method === 'post') 你就是不会 method.toLowerCase() === 'post' 吗
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4663 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 57ms · UTC 04:10 · PVG 12:10 · LAX 21:10 · JFK 00:10
    ♥ Do have faith in what you're doing.