【问题标题】:What security issues need to be addressed when working with Google App Engine?使用 Google App Engine 时需要解决哪些安全问题?
【发布时间】:2010-10-06 09:12:08
【问题描述】:

我一直在考虑将 Google App Engine 用于一些业余项目。虽然他们不会处理任何敏感数据,但出于多种原因,我仍然想让它们相对安全,例如了解安全性、法律等。

在使用 Google App Engine 时需要解决哪些安全问题?

它们是否与其他应用程序(例如以其他语言编写或以其他方式托管的应用程序)所面临的问题相同?

编辑:我进行了一些搜索,看起来我需要清理XSS and Injection. 的输入,还有哪些需要考虑的事项?

【问题讨论】:

    标签: python google-app-engine web-applications security


    【解决方案1】:

    “清理”输入不是避免查询注入和标记注入问题的方法。 在输出阶段使用正确的转义形式是......或者,甚至更好的是,使用为您处理它的更高级别的工具。

    所以为了防止对 GQL 的查询注入,请使用GqlQuery 的参数绑定接口。为了防止对 HTML 进行标记注入(导致 XSS),请使用您正在使用的任何模板语言的 HTML 转义功能。例如,对于 Django 模板,|escape... 或者更好的是 {% autoescape on %},这样您就不会不小心错过任何一个。

    【讨论】:

    • 感谢您提供的重要信息,这是我一直在寻找的东西。还有其他需要考虑的漏洞吗?
    • 嗯,当然,取决于你在做什么,不是吗?如果您让人们提交链接,您最好检查 URL 是一个已知良好的方案,例如 http 而不是 javascript... 如果您允许文件上传,您最好将它们保存在一个安全的名称下,并且不是用户提交的...不要从您的主主机名提供用户提交的文件...不要在system 命令或eval...等中使用用户提交的数据等
    • 在实践中,即使您的代码相当糟糕,GQL 注入攻击也几乎是不可能的,因为攻击者只能在 SELECT 语句中添加额外的条件。这并不是说您不应该使用参数绑定,但它不像 SQL 那样严重。
    【解决方案2】:

    通常存在相同的问题。此外,谷歌“知道”你的代码,理论上可以监控代码在做什么。因此,如果你想阻止他们读取你的数据是非常困难的。 但我不相信他们有时间和资源来监控你关闭的代码和数据。

    【讨论】:

    • 我并不真正担心谷歌“知道”我的代码或读取我的数据,如果这就是我的问题似乎传达的内容,那么我深表歉意。我对可能使我的应用程序容易被 XSS 和 SQL 注入等漏洞利用的安全问题更感兴趣,特别是 Google App Engine 独有的安全漏洞。你对我如何修改我的问题以更好地沟通有什么建议吗?无论如何感谢您的回答。
    • 我想说的是,对于谷歌应用程序引擎来说,没有特殊的安全风险可以抵消。 Google 只是像任何其他 Hoster 一样托管您的代码。如果他们的系统有漏洞,您将无能为力。
    猜你喜欢
    • 2011-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-28
    • 2012-11-21
    • 2011-02-01
    • 2023-04-07
    • 2011-01-07
    相关资源
    最近更新 更多