您现在的位置是:首页 > 教程资讯

Node.js运用的反方向shell

作者:果E安全网时间:2020-10-25 21:35:39分类:教程资讯

简介*文中中牵涉到的有关系统漏洞已申报生产商并获得恢复,文中只限技术性科学研究与探讨,禁止用以不法主要用途,不然造成的一切不良影响自主担负。一个中小型Web开发者精英团队曾授权委托大家对她们的移动智能终端开展安全风险评估,该运用的后端开发是一个RESTAPI。该运用的构架非常简单,只由3台linux服务器构成:Node.js

*文中中牵涉到的有关系统漏洞已申报生产商并获得恢复,文中只限技术性科学研究与探讨,禁止用以不法主要用途,不然造成的一切不良影响自主担负。

一个中小型Web开发者精英团队曾授权委托大家对她们的移动智能终端开展安全风险评估,该运用的后端开发是一个REST API。该运用的构架非常简单,只由3台linux服务器构成:

Node.js

MongoDB

Redis

最先不在触碰源代码的状况下大家对运用开展了一番检测,結果发觉在一些插口假如接受来到出现意外的数据信息便会造成 后端开发程序流程奔溃,大家还发觉redis在外网地址就能开展浏览,而且沒有身份验证。

接下去我们要做的便是财务审计Node.js API的编码,理清晰奔溃的原因是什么。

大家建立了一个简约的含有系统漏洞的Node.js运用,你也能够自身构建试着利用。

这一Node.js运用会监视客户的要求,例如http://target.tld//?name=do*,获得到name主要参数的值后会查看相匹配搭配的动物名称。

在对编码开展了十多分钟的剖析后,大家就发觉了开发者一个很不好的习惯,这一不良习惯将会造成 远程连接命令执行。

stringToRegexp涵数会建立出一个RegExp对象来对客户的键入数据信息开展检验,并利用这一正则表达式对象来检索数组中的数据信息原素。

我们可以在output这一自变量中插进随意的Javascript编码而且执行。

stringToRegexp涵数会过虑一些独特的标识符而且对output自变量开展核查。

浏览以下的连接将会在服务器终端设备复印一条信息内容

那样大家就可以执行编码,随后获得到服务器的互动Shell(例如/bin/sh)。

以下的Javascript便是一个Node.js的反方向联接shell。

这一payload将会形成一个/bin/sh的shell,建立一个TCP联接到网络攻击的服务器,而且在通讯数据流分析中关联shell指令。

为了更好地雅致的执行payload,大家还必须一些小窍门,大家将反方向联接shell的payload用16进制开展编号,随后再用Node.js的Buffer对象来对其开展编解码实际操作。

大家明显的提议开发者们防止在JavaScript新项目中应用eval涵数,而恢复的方式也非常简单,立即应用RegExp对象来对数据信息开展实际操作就可以。

?*参照来源于:wiremask.eu,FB我东二门冠希哥编译程序,转截请标明来源于联合利华信息平台网网络黑客与极客(联合利华信息平台网.COM)

郑重声明:

果E安全网所有活动均为互联网所得,如有侵权请联系本站删除处理,转载请注明本站地址。

我来说两句