极光推送官方 Nodejs SDK 竟然 eval 去执行从服务器传回来的代码 还“聪明”地用括号括起来,呵呵 https://github.com/jpush/jpush-api-nodejs-client/blob/master/lib/JPush/JPush.js#L448
1
fyibmsd 2017-03-06 23:20:26 +08:00
这代码牛逼坏了
|
2
bdbai 2017-03-06 23:37:01 +08:00 via Android
在那个 JSON 还没被浏览器广泛兼容的年代, eval 加括号解析 JSON 是很常见的事...
|
3
DoraJDJ 2017-03-06 23:40:05 +08:00 via Android
@bdbai 不过现在用 JSON.parse 就能解析 JSON 了,如果还在用老掉牙的 eval 会不会造成漏洞利用?
|
4
SourceMan 2017-03-06 23:45:54 +08:00 via iPhone
没毛病
|
5
iamaprin 2017-03-07 00:10:21 +08:00
已经修改了,官方动作有点快
|
7
qfdk 2017-03-07 00:25:54 +08:00
要是不改 n 个服务器又会背沦陷了 :)
|
8
wangjie 2017-03-07 00:33:03 +08:00 via iPhone
已经改了 666
|
9
xiezefan 2017-03-07 01:35:02 +08:00
原谅提交这行代码的那位可怜的爪哇程序猿......
|
10
coderzheng 2017-03-07 10:03:38 +08:00
奇怪, V 站没改主题啊,为啥这个页面打开是黑色背景的。
|
11
sobigfish 2017-03-07 12:20:09 +08:00
@coderzheng #9 节点自带主题
blame 找到了的“罪魁祸首” https://github.com/jpush/jpush-api-nodejs-client/commit/d2b5ce94c9f2cc240c602f49a00cfb9005b47970 |
12
jych1224 2017-03-07 16:43:25 +08:00
我想知道你是如何发现的
|
14
RenzHoly OP @jych1224 它们的服务器出了问题,发出来一个不完整的 json , eval 出错,导致我们的服务重启。看日志发现的
|
15
Fontaine 2017-03-10 18:29:32 +08:00
我想说 468 行 if (method === 'POST' || method === 'post') 你就是不会 method.toLowerCase() === 'post' 吗
|