奇虎360陈思雨:通过漏洞组合利用实现企业内网入侵
|
本地起了 Redis 服务,作为 Celery 的中间件.Celery 通过类型查看,存储的是具体的任务队列,保存在列表中.binding.Celery 字典的形式存在,保存的是路由的信息在里面.MongoDB 中 Celery 表现的形式,有刚刚提到的名称.我们如何结合这些安全问题攻击分析师框架呢? 需要具备几个条件,在使用 Celery 框架实现的应用中,它确实配置了 pickle 的消息封装方式进行处理.但经过了解,在 4.0.0 版本情况下 Celery 使用了 pickle 进行消息封装. 我们有可能控制消息中间件进行消息注入的操作,刚才写到了我们可以在1.5万个 Redis 和1.4万个 MongoDB 中,找出作为 Celery 中间件的应用进行攻击的尝试. 如果这一系列的流程都顺利,Worker 会解析攻击者注入的消息和数据,成功的触发一个反序列化的操作.成功的 Worker 会执行攻击者预先设定的指令和命令,不成功的肯定不受影响. 我们在针对这些命令检测的时候,如何判断漏洞是否有触发呢.我们需要在外网的回联服务器,我们在进行远程命令执行检测的时候,我们会将执行的命令设置为往我们服务器上发连接的具体形式. 我当时在进行全网验证的时候,设置了往我的服务器上进行简单的回联.在所执行的命令中进行标志位的处理,回联回来当时所在的用户是什么,我攻击的中间件IP和类型是什么. 我攻击的类型是 Redis,或者是 MongoDB.前面是 Worker 端执行的时候代表的用户,这是中间件的 IP 地址,这是中间件的具体应用类型. 这是这边的 IP 地址是 Worker 端回联的时候所在的 IP 地址,通过这两条消息的对比,我们可以看到在往 90.156 进行注入的时候,后端有两个不同的 Worker 触发了漏洞,并进行了回联,xx.xx.78.211 和 xx.xx.84.216. (编辑:网站开发网_盐城站长网 ) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

