极光推送与Nodejs集成问题探讨
极光推送与Nodejs集成问题探讨
极光推送官方 Nodejs SDK 竟然 eval 去执行从服务器传回来的代码 还“聪明”地用括号括起来,呵呵 https://github.com/jpush/jpush-api-nodejs-client/blob/master/lib/JPush/JPush.js#L448
这代码牛逼坏了
在那个 JSON 还没被浏览器广泛兼容的年代, eval 加括号解析 JSON 是很常见的事…
不过现在用 JSON.parse 就能解析 JSON 了,如果还在用老掉牙的 eval 会不会造成漏洞利用?
没毛病
已经修改了,官方动作有点快
但这里是 node
要是不改 n 个服务器又会背沦陷了 :)
已经改了 666
原谅提交这行代码的那位可怜的爪哇程序猿…
奇怪, V 站没改主题啊,为啥这个页面打开是黑色背景的。
#9 节点自带主题
blame 找到了的“罪魁祸首”
https://github.com/jpush/jpush-api-nodejs-client/commit/d2b5ce94c9f2cc240c602f49a00cfb9005b47970
我想知道你是如何发现的
确实有安全问题,只是看到楼主一脸诧异的样子…
它们的服务器出了问题,发出来一个不完整的 json , eval 出错,导致我们的服务重启。看日志发现的
我想说 468 行 if (method === ‘POST’ || method === ‘post’) 你就是不会 method.toLowerCase() === ‘post’ 吗