美文网首页
Node.js反序列化漏洞(CVE-2017-5941)

Node.js反序列化漏洞(CVE-2017-5941)

作者: Lucifer1993 | 来源:发表于2019-04-17 14:15 被阅读0次

                    Node.js反序列化漏洞(CVE-2017-5941)

    nodejs中的node-serialize模块被爆反序列化漏洞,通过issue可以看出漏洞出在eval函数。

    进入到eval函数需要两点:一个是obj[key]的变量类型是string,另一个是obj[key]要以FUNCFLAG开头,FUNCFLAG在最前面被定义为'_$$ND_FUNC$$_';所以如果我们传入序列化后的字符串例如:{"test":"_$$ND_FUNC$$_function(){console.log('test')}"}再截取子字符串后就变成了eval(function(){console.log('test')})。

    但是这种方法不会立即执行,所以要使用IIFE( Immediately-Invoked Function Expression)来加载payload,例如:

    接下来我们编码构造好的利用代码base64编码一下发送给服务端。

可以看到console已经输出,代码被执行。

接下来利用node_shell.py生成反弹的shellcode。

burpsuite重放后获得shell。

参考:https://hd7exploit.wordpress.com/2017/05/29/exploiting-node-js-deserialization-bug-for-remote-code-execution-cve-2017-5941/

相关文章

网友评论

      本文标题:Node.js反序列化漏洞(CVE-2017-5941)

      本文链接:https://www.haomeiwen.com/subject/qzkgwqtx.html