欢迎光临
我们一直在努力

大数据Storm 之RCE实践

日常刷网页的时候,无意中看到一个storm ui 的web页面,搜了一下好像是大数据的框架,顺便看到了aRe00t 师傅的文章《黑掉大数据之spark》蛮有意思的,spark,storm 都有一个很有意思的功能,可以远程提交代码,了解了一番,storm是有专门的安全设置,但是在默认配置情况,nimubs的6627端口是对外开放,若是该端口可任意访问,那我们就可以在任意地方给nimbus 提交代码,然后实现远程命令执行。

临时翻看了一些关于storm 的资料,若有错误,望大神们多多指导。下面是我对strom 实现远程命令执行的一些思路及本地实践。


>>>> >>>> 提前条件<<<< <<<<

1、nimbus 的6627端口可以访问。


>>>> >>>> 步骤<<<< <<<<

1、打包jar包

2、通过storm 客户端将jar包上传到nimbus

3、通过 web ui 观察命令执行情况


>>>> >>>> 执行命令代码<<<< <<


>>>> >>>> 上传jar 包<<<< <<<<

在storm ui上可以看到刚上传的Topology

稍等片刻就可以在storm ui 的日志里面看到命令执行的结果


>>>> >>>> 总结 <<<< <<<<

    

    Storm 远程提交代码给开发人员提供便利的同时,但若部署时配置不当,不做访问限制,就很容易给集群带来风险。类似的安全问题还有redis、memcache等,很多都是因为该服务部署时缺少安全意识未作访问限制也没做权限限制,导致该服务可任意访问使用。那黑客们也就可以随意利用了。




本文转载自微信公众号“新浪安全中心”,原文作者:

浪剑枫



赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。