【问题标题】:vulnerability attack Code Evaluation (Apache Struts)漏洞攻击代码评估(Apache Struts)
【发布时间】:2018-09-15 21:44:33
【问题描述】:

最近我做了一些漏洞扫描并遇到了一些问题。一个关键问题是代码评估 (Apache Struts),即攻击者可以在系统上执行任意 Apache Struts 代码。攻击者也可能能够执行任意系统命令。它还提供了一些解决方案,例如不接受来自最终用户的输入,这些输入将直接解释为源代码。如果这是业务需求,请通过删除任何可直接解释为 Apache Struts 源的数据来验证应用程序的所有输入 代码。

谁能帮我解决这类问题,因为我无法解决这个问题?

【问题讨论】:

    标签: security


    【解决方案1】:

    很多这些问题可以通过升级到最新的 Apache struts 版本来解决。遗憾的是,对于许多使用 struts 构建的遗留应用程序来说,这并不总是可行或容易的。

    对于“不接受将直接解释为源代码的最终用户的输入”

    这与“Struts OGNL 语言”和“REST 插件”漏洞有关。

    这里有一个很好的resource,可以阅读更多关于此类现有漏洞的信息,特别是在描述中查找包含“远程代码执行”的链接。

    问题“无法升级时该怎么办。”

    您可以从转义所有输入开始。 Struts 标签特别是新版的 struts 可以很好地转义 html,但是如果你有类似的 jsp 代码

    <input id="..." class="..." type="text" name="...." value="<%= some wide open ognl expression""%>"/>

    那么这需要被转义。并且从这个输入返回的java中的值需要被沙盒和隔离到最大值。对于通过休息插件的任何休息数据也是如此。即使这样,您也可能不安全,因此请针对从您的应用程序生成的进程访问数据采取适当的措施。

    【讨论】:

      猜你喜欢
      • 2014-09-14
      • 2015-04-16
      • 2017-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多