2013-06-03 67 views
1

如果我的应用程序以swf的形式附加在我的网页上,任何人都可以获取swf的url并下载它 - 反编译它...我可以做些什么来阻止它,或者使如果有敏感数据,我的应用程序会更安全吗?如何防止我的应用程序反编译

+0

是仅针对敏感数据的问题,还是关于保护源代码的问题? –

+0

我猜都是:),我认为保存敏感数据在服务器端更好,但是例如,如果我向应用程序中的某些“秘密”url发布了请求,我不想让任何人知道所有的秘密密钥都会被看到...... –

+0

为了满足对你来说很重要的一切,不要将你的安全建立在URL的“秘密”之上。你甚至不需要反编译工具来查看应用程序正在使用的URL,任何嗅探器(fiddler,wireshark)都会显示它们。地狱,甚至浏览器可能会在F12的新闻界展示给他们。是的,他们也可以看到查询字符串。 – Renan

回答

2

简短的回答是,你不能。用户看到的任何内容都已存在于他们的机器中。你不能阻止它们反编译你的应用程序,就像你无法阻止某人在Windows应用程序中反编译DLL一样。

如果您希望让敏感数据远离客户端,您可以拥有客户端 - 服务器体系结构。只服务于你不介意被反向设计的东西。

+1

我的一个想法是在阅读完这个问题之后,“如果你从不以任何方式分发你的应用程序,你可以防止用户反编译你的应用程序。”但是,这个答案可能更相关;所以+1。 – JeffryHouser

0

您不应该将敏感数据放在客户端。保持敏感的数据服务器端,并让服务器对其进行任何比较,仅向客户端返回true/false。我不认为有一个安全/安全的方式来存储和访问它的客户端。当访问时,可以检测并读出该时刻。

编辑:关于您的源代码,足够好的编译器会使代码在反编译后非常难以阅读。但我认为,你不能从那里走得更远。

+0

混淆只是一个无聊,闲置黑客的轻微障碍。千万不要把它看作一种安全形式。 – Renan

+0

@Ranan确定它是一种安全形式。这不是很有效。当涉及到保护你的动作源代码时,它甚至可以达到它的效果。 –

0

使用混淆器,一件事。我没有亲自尝试过,但是通过在网络上进行一些研究,SecureSWF尤其是irrFuscator可能会成为您最好的赌注。正如一些人已经注意到的那样,将敏感内容放在服务器上并且不要使用swf,因为你不会完全阻止人们对这些东西进行反向工程。

+2

每次有人将混淆与安全性联系起来,神会杀死一只小猫。 – Renan

+2

总比没有好,老兄。据说锁是为了诚实的人,但这并不意味着你不应该使用它们。 – Panzercrisis

+1

授予。它会让12岁的剧本小子出去。一段时间。但是,仍然是好点,并提高(评论)。 – Renan

相关问题