Play框架任意文件读取漏洞

责声明">
介绍 在研究区块链项目的过程中,360 Redteam发现区块链项目API使用Play Framework框架来构建网站。审核框架后,我们发现了一个通用漏洞。该框架不正确地处理静态文件资源的路径。任何文件读取...
介绍 在研究区块链项目的过程中,360 Redteam发现区块链项目API使用Play Framework框架来构建网站。审核框架后,我们发现了一个通用漏洞。该框架不正确地处理静态文件资源的路径。任何文件读取漏洞都可能在Windows环境中引起。 Play Framework是一个开源的Star10k + Web应用程序框架,由Scala和Java混合编写。该框架具有可扩展性和资源密集性。我们发现该框架涵盖了广泛的知名公司,包括游戏公司EA,LinkedIn,沃尔玛和三星。与此同时,我们发现该框架也用于一些区块链钱包项目,这可能会导致诸如窃取钱包密钥等问题。   漏洞数量 CVE-2018-13864   发现团队 360 RedTeam& 0keeTeam   势力范围 Play Framework 2.6.12-2.6.15   漏洞详细信息 首先,我们可以在Play Framework的 路由 文件中看到静态资源解析路由的配置信息。 #将静态资源从/public文件夹映射到/assets URL路径GET/assets/*文件controllers.Assets.at(path='/public',file) 路由调用  controllers.Assets.at 该函数将 /assets/* 指向文件目录 /public 以解析此目录中的CSS,JS文件等。跟踪controllers.Assets.at 功能 漏洞文件:/framework/src/play/src/main/scala/play/api/controllers/Assets.scala  跟踪  assetAt 功能  这里我们使用  resourceNameAt 函数来获取规范化的文件名,跟踪函数  resourceNameAt 函数首先解码文件路径URL,然后用decodeFile拼接路径,然后使用单斜杠/用  removeExtraSlashes 函数替换双斜杠//以获得最终的绝对路径。 但是,有一个路径标准化判断,它将确定文件路径规范化的前缀是否为 /public / 以及跟踪  fileLikeCanonicalPath 函数,看看做了什么  在函数中,路径以“/”作为分隔符分隔,然后遍历数组。如果遇到“.”,则删除前一个数组元素,并到达标准化路径。  由于代码用“/”分隔,在Windows环境中,我们可以使用反斜杠“\”来绕过,这样就不会删除以前的目录,实现跨目录效果,前缀是仍然是 /public /,以满足标准化路径的判断。 我们发现Scala和Java版本都受此漏洞的影响。   利用 我们在官方网站上下载了Scala版本的聊天室Demo(https://github.com/playframework/play-scala-chatroom-example/tree/2.6.x),并使用sbt在Windows下运行源代码。 获取一个静态文件,然后在编译项目后找到相应的文件路径。  构造有效负载,读取项目目录中的  build.sbt 文件。通常无法访问此文件。  400错误,检查出akkaka http不允许特殊符号,然后我们执行URL编码  成功读取目录中的其他文件。   修理计划 升级到Playframework>=2.6.16   时间线 2018-07-10  360 Redteam报道Playframework官方
2018-07-11  Playframework官方确认漏洞
2018-07-17  Playframework发布了2.6.16版以修复此漏洞   参考链接 https://www.playframework.com/security/vulnerability/CVE-2018-13864-PathTraversal 本文来自原始版本的乘客安全:0keeTeam  
转载,请参阅转载声明,注明来源: https://www.anquanke.com/post/id/152476  黑客业务列表介绍和一般分类: 类别:攻击入侵破解开发 1:攻击业务订单:暂时取消所有此类业务订单[仅销售常规IDC流量] 2:入侵业务清单:包括网站源代码,办公系统,黑色系统,教育系统等。 3:破解业务类:软件,加密文件,二次打包,脱壳等。 4:二次开发业务清单:软件二次开发,源代码二次开发等 5:其他业务订单:特洛伊木马[通过所有防病毒],远程控制,特殊软件等 备注:未提及的业务订单可根据主要类别查询或直接联系客户服务。为避免浪费双方时间,请在咨询前阅读:业务交易流程及相关说明 注意:仅接受正式业务,个人无权接受。收集此内容。
  • 发表于 2018-07-22 00:00
  • 阅读 ( 1515 )
  • 分类:黑客技术

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
不写代码的码农
黑客

2107 篇文章

作家榜 »

  1. 黑客 2107 文章