【问题标题】:Flash security questionFlash安全问题
【发布时间】:2023-03-29 07:45:01
【问题描述】:

我听说在 Flash 中检查硬编码密码是一个很大的安全禁忌,因为用户可以反编译 SWF 并找到硬编码密码。我很好奇是否可以反编译 SWF、进行更改、重新编译然后重新插入网页?

例如:

假设我在 Flash 应用程序中将当前用户名传递给 Web 服务并获取用户所属组的列表。基于这些组显示某些内容。基本上这些步骤:

  1. 将用户名传递给 Web 服务。
  2. 从 Web 服务获取组列表。
  3. 根据这些组显示内容。

是否有人可以将 Flash 应用程序更改为只显示所有内容,而不管他们属于哪个组?像这样的:

  1. 将用户名传递给 Web 服务。
  2. 返回组列表 来自网络服务。
  3. 显示内容基于 那些团体。
  4. 显示所有内容

【问题讨论】:

  • 我可以查看浏览器发出的请求并访问所有原始数据。然后我可以使用原始数据并用它做任何我想做的事情。

标签: flash security


【解决方案1】:

他们为什么要费心更改 Flash 应用程序,而不是直接查询 Web 服务?但是,是的,有人可以更改 Flash 应用程序。

编辑:如果您谈论的是正在显示的 Flash 应用程序中的内容(不是来自 Web 服务的内容),那么他们还可以模拟 Web 服务。 SSL/TLS 在这里并没有真正的帮助(用户可以只接受无效的证书,或者加载他自己的 CA)。

您可以通过对内容进行加密并让 Web 服务提供相关的加密密钥来使这种情况发挥作用。当然,一旦交付了密钥,用户就拥有了它:您无法安全地撤消访问权限。

【讨论】:

  • 您将如何更改 Flash 应用程序,然后在网页中使用它?我已经看到使用 HTTP 代理和 javascript 完成了类似的事情,但我不知道如何使用 swf?
  • 更改 HTML 中的链接?您可以通过设置自己的 Web 服务器或让代理来轻松地做到这一点。您还可以在原始 URL 处为您的自定义 .swf 提供代理源。但更大的一点是你不需要。您可以直接查询网络服务。
  • @Abe Miessler:我可能会误解,如果网络服务实际上并没有提供内容,而只是提供组列表,那么请查看我的编辑...
【解决方案2】:

对于中间人类型的攻击,一切皆有可能。安全地执行此操作的方法是实际从 Web 服务获取内容。

【讨论】:

    【解决方案3】:

    他们可以反编译 Flash 应用程序吗?是的,很容易。

    反编译后,他们是否可以不再需要联系服务器?是的,再次轻松。

    他们能否从根本上对您的 Flash 应用程序进行中性处理,使其显示所有内容,而无需费心从您的网络服务中获取组列表?再次,轻松。

    那你该怎么办?

    Flash 应用不应在其代码中嵌入所有内容。相反,您应该让他们登录并仅将部分交付给他们授权的浏览器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-29
      • 2011-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多