当前位置: 首页 > 知识库问答 >
问题:

使用PhoneGap创建移动应用程序时的安全注意事项

宣弘新
2023-03-14

我是使用phonegap创建移动应用程序的初学者。在使用phonegap创建移动应用程序时,我对安全方面有一些疑问。

>

  • 我想创建一个访问Web服务的应用程序,例如使用Jersey创建的REST服务。现在,我是否正确地认为黑客可以很容易地看到所使用的安全密钥/身份验证机制,以通过服务器(使用REST API)对客户端(在移动应用程序上)进行身份验证?

    一般来说,黑客可以轻松访问移动应用程序(使用phonegap创建)发送的所有数据吗?

    黑客可以拆解phonegap应用程序以获取原始代码吗?他不会得到本机代码(例如ios中的ObjectiveC)吗?或者他可以将其反编译为原始phonegap代码(即html js)?如何防止我的代码被反编译?这种情况是否与大多数其他语言相同,即拥有强大PC的黑客可以侵入几乎任何程序/软件?有什么方法可以防止这种情况发生吗?

  • 共有2个答案

    曾泳
    2023-03-14

    TLDR-考虑到您正在为网站编码,所有代码(html和js)都将在浏览器中使用Crtl Shift i对用户可见,这是确保最大安全性的一些要点

    1. 如果您使用后端,请重新检查来自应用程序的所有内容
    2. 网站上所有可能的攻击(XSS、拒绝恶意webistes、克隆webistes等都是可能的)
    3. 发送到应用程序的所有数据最终将在某些js变量/资源文件中可用,由于黑客可以访问所有变量,因此即使您使用最安全的数据传输机制,发送到应用程序的所有数据也是如此
    4. 正如Simon在他的ans中正确地说过的那样,phonegap或cordova不会将html/js转换为本机代码。Html/Js按原样可用
      Cordova在他们的官方声明中也明确提到了这一点

    不要假设您的源代码是安全的,因为Cordova应用程序是从HTML和JavaScript资产构建的,这些资产打包在本机容器中,所以您不应该认为您的代码是安全的。可以对Cordova应用程序进行反向工程。

    5、主要是网站用来防止代码被克隆/容易理解的所有技术,即使在这里也适用(主要包括将js代码转换为难以阅读的格式-模糊代码)
    6。将本机应用程序与cordova/phonegap应用程序本机应用程序进行比较,我想说,cordova对黑客来说更容易,只是因为cordova开发人员之间缺乏意识,他们没有采取足够的措施来保护它,并且缺乏现成的(一键)机制来直接混淆android proguard中的代码与

    Cordova应用程序黑客攻击示例(注意:Phonegap也以类似方式工作)

    黑客可以简单地替换这两个功能,以便在支付不成功时调用回调。
    在没有其他检查的情况下,黑客已经成功绕过了支付。

    梁丘权
    2023-03-14

    好吧,先深呼吸。你可能不会喜欢我的一些答案,但你将面临与我们所有人相同的问题。

    >

  • 在这种情况下,最好的做法是使用类似KeyChain插件的东西从本机端检索安全密钥。

    您可以排除PhoneGap,因为它适用于在客户端和服务器之间发送未加密数据的任何情况。任何人都可以使用多种工具轻松收听,包括Wireshark或Ethereal。如果需要与服务器通信,则应在加密的HTTPS或SSL连接上完成。

    首先,我认为您误以为PhoneGap会将HTML/JS代码编译成Obj-C。事实并非如此。如果用户解压缩你的应用程序,他们将能够读取你的HTML/JS。此外,他们还可以反编译您的Obj-C代码。这不需要一台功能强大的电脑,甚至不需要一个经验丰富的黑客。几乎任何人都能做到。

    我给你的建议是不要担心它。把你的时间花在创建一个真正伟大的应用程序上。愿意为它付费的人会为它付费。反编译它的人无论如何都不会购买这个应用程序。你花在打击黑客上的时间越多,就会占用你本可以用来让你的应用程序变得更好的时间。此外,大多数反黑客措施只会让你的实际用户的生活更加艰难,因此实际上它们会适得其反。

  •  类似资料:
    • 我目前正在开始使用jQuery mobile构建一个移动应用程序,并将其包装为Phonegap以支持本机应用程序,这是对我们已经存在的用Django编写的桌面应用程序的扩展,我的问题是,将用html5/js/css编写的客户端应用程序连接到服务器端的最佳方式是什么,我会使用JSON发送/接收数据吗,有人写过关于这方面的好文章吗?

    • 我需要将以下HTML应用程序转换为Android、iphone 我已经按照以下链接安装了phonegap的CLI界面:--- http://phonegap.com/install/ 现在我需要一些Android、IOS或windows-8的SDK吗? 或者phonegap CLI不需要任何支持SDK来将HTML应用程序转换为移动应用程序? settings.js文件

    • 我正在使用Moovweb SDK构建我的移动网站。 > 我想将我的移动站点转换为jQuery Mobile Web App。有没有办法用氚语言做到这一点?是否有任何支持jQuery Mobile的氚库? 接下来,我想构建一个Phonegap应用程序(iOS

    • 我是一名网络开发人员,需要构建一个HTML5移动应用程序,我们需要尝试并提交给应用商店,包括苹果的应用商店。因此,我需要以某种方式将我的应用程序包装到本机框架中。 尽管如此,我没有时间去学习Objective-C的本质并把它全部弄清楚。 我正试图决定是使用PhoneGap之类的服务,还是简单地创建一个较小的本机应用程序,并使用webview从我的网站服务器上调出我的移动应用程序。 在这种情况下,我

    • 我们计划使用Phonegap开发一个移动银行应用程序。是否存在任何安全问题,因为我们使用的是Phonegap而不是原生SDK?

    • Web 应用通常面临所有种类的安全问题,并且很难把所有事做的正确。 Flask 试图 为你解决这些事情中的一些,但你仍需要关心更多的问题。 跨站脚本攻击(XSS) 跨站脚本攻击的概念是在一个网站的上下文中注入任意的 HTML (以及附带的 JavaScript )。开发者需要正确地转义文本,使其不能包含任意 HTML 标签来避免 这种攻击。更多的信息请阅读维基百科上关于 Cross-Site Sc