APP已经成为我们生活中不可或缺的一部分。一提到APP制作的安全问题,首先我们想到的就是金山杀毒软件之类的。
很明显,他们生产杀毒软件,手机中毒了,可以杀毒,这些杀毒软件可以保护用户的手机,保护用户的资料的安全,其实,在APP制作安全领域,还有另一端,那就是开发者的安全。
防止恶意APP 制作开发者也有责任
开发者也需要安全?一些人可能还想不明白。从一个常规流程来说,开发者开发APP,然后推广给用户,一个很完流程,用户如果中毒了,下个杀毒软件查杀即可,用户如果资料丢失了,那要怪就只能怪用户,怪恶意病毒,其实这其中也有开发者的责任,就是开发者开发的APP不够安全,表面上开发者不要承担什么责任,但是你会失去用户,用户会偷偷的卸掉你的APP,对于一个小白用户来说,只知道下了某家的APP中毒,赶紧卸载掉。其实目前很多安全公司喜欢转移用户的视线,出了病毒不怪APP开发者,只怪病毒,目的很明显——推广自己的杀毒软件,久而久之,杀毒软件推广的很快,开发者开发的APP,却下载的越来越少,所以开发者更应该保护自己APP的安全,防止恶意APP,开发者也应有责任。
开发者开发的APP有漏洞
俗话说,开发者开发的APP,理论应是安全的。毕竟自家程序员写的代码,不会内置什么恶意程序,更不会偷用户的资料,所以当然问心无愧。但是,问题出来了,市场上很多恶意APP。那么开发者的开发的APP有漏洞。有哪些漏洞,可以从下面几个方面来说:
1、反编译漏洞
目前很多安卓应用开发所使用的语言都是java,java经过编译后生成一个dex源程序文件,这个文件经过反编译后,可以很轻松的看到源代码,反编译的代码和源代码几乎没有什么区别,一个稍微懂点技术的,使用网上几款流行的反编译程序,把java代码发编译后,即可加入自己的恶意代码,然后经过二次编译,就可以生成一个新的APP,然后提交到应用市场上提供用户下载,这样一个正常的APP就变成了恶意APP,用户只要下载了这个APP就“中招”。
2、内存漏洞
其实大家都知道,APP就是一个程序,下载到手机上之后,就是一个文件,用户在点击启动按钮之后,程序就会启动,会在手机的内存中运行,就会形成一个进程。进程是干嘛的,就是来存储用户数据的,这个存储是动态的,用户在程序的任何操作都会被写进内存里,比如一个游戏的分数,金币等数值,并且存放各种数据进程是独立的,不同进程互相不影响。 这个时候,很明白就会有一个漏洞,什么漏洞,那就是当程序运行时,有个恶意程序修改存储在手机上数据,就像你安心的再做公交车,一个小偷偷偷的把手收到你的口袋里偷走你的钱包一样。每个APP都是一个独立的进程,恶意的代码会偷偷修改其他APP的进程。
3、反调试漏洞
安卓系统允许程序在运行时,通过一个调试程序对APP进行调试,这个调试程序拥有手机高的权限,一般情况下,这个权限只是方便开发者对自己开发的APP进行调试的。可是,一些,却利用这个功能用来搞破坏。比如,当用户使用支付软件的时候,偷走用户的支付口令;当用户在使用发短信功能时候,偷走用户的短信记录……等很多恶意手段都可以利用这个漏洞。
从以上看来,一款APP可能还有其他漏洞,当然上面所提的几个漏洞是主要的,正所谓道高一尺一次魔高一丈,虽然一些开发者在写代码时,做了一些安全保护措施,但是要想真正的做到APP安全,就需要更加专业的手段,甚至需要更加专业的安全公司如梆梆安全来做。
首先,开发者需要专业安全保护。开发者需要哪些安全保护?很明显,针对上述的漏洞的安全保护都需要。首先,针对反编译漏洞,需要代码混淆,更深一个层次的就是代码加密,通过对源代码加密,一方面保护APP源代码的完整性,另一方面,防止了对手机APP制作的破坏,同时数据加密,还可以防止二次打包恶意破坏。
其次,内存漏洞,对一些应用数值做打散处理。比如某个游戏的金币数值为600时,在内存存储时做打散处理,防止一些游戏修改器可以直接读取完整的内存数据做修改。但是打散处理只是增加了修改内存数据的难度,无法从根本上对游戏数据进行保护。
再次,存档数据篡改漏洞,传统校验的处理逻辑很容易被分析出来,只有从更底层的数据加密保护,才能保证数据的安全。
越来越多的企业都推出了自己的APP,但是手机的安全是一大问题。这个是重中之重,是开发者需要重视的。对APP保护好了才能保护移动互联网的健康发展。
西安开发手机APP的公司
西安网站/软件服务相关信息
12小时前
2天前
3天前
11月9日
11月8日
11月7日
11月6日
11月5日
11月4日
11月1日