移动安全性:攻击来自何处?
如今,我们的智能手机包含着我们日常生活中的大量信息,因此保护它们免受恶意人员攻击变得至关重要。 智能手机可以视为一把双刃剑。 一方面,我们得益于其易于使用的方式来与家人保持联系,检查我们的银行帐户,邮件等。另一方面,恶意人员很容易通过窃取您的钱来实现自己的目标,凭证,私人生活等。因此,每个智能手机用户都必须意识到自己可能会遇到的危险,以保护自己。
本文旨在通过展示一些攻击或安全漏洞的示例,使智能手机用户对其安全敏感。 目的不是要吓the读者,而是要进行教育,以便他采取更好的预防措施。
让我们先退后一步,分析移动应用程序的生命周期。
- 开发人员下载SDK
- 开发人员开发的应用程序可以完成出色的工作
- 开发人员打包应用程序并将其提交到商店
- 用户解锁手机
- 用户在智能手机上下载应用程序
- 用户使用该应用程序
简化的生命周期的每个步骤都可能受到恶意攻击,如下图所示。 开发人员使用的SDK会影响问题根源的私有数据,这似乎很不可思议。 但不幸的是,这确实发生了。 实际上,有一个名为“ Xcode Ghost”的Xcode修改器版本,它在生成的程序包中添加了间谍软件代码。 修改后的程序包甚至通过了Apple认证!
这里是其他生命周期步骤的更多攻击示例。
攻击和漏洞的一些例子
开发人员开发执行出色功能的应用程序
攻击者可以侦听移动应用程序与服务器之间的网络通信,以拦截敏感信息。 以下是一些攻击示例:
- 网络欺骗
- 中间人袭击
- 对网络交换的其他攻击:https://www.youtube.com/watch?v=8oI_laHhGjE&list=PLSKUhDnoJjYn0TV9V84C4Wr2DjKPc492c&feature=player_embedded
- 使用不受信任的或公共的Wi-Fi接入点
攻击者可以以表格形式输入恶意数据,以获取对服务器数据库的更高访问权限(SQL注入)
- http://artechtalks.blogspot.fr/2013/10/sql-injection-in-android-applications.html
开发人员打包应用程序并生成IPA
- 从iTunes下载IPA并提取plist文件以搜索密码和开发URL
- 反编译IPA以访问源代码http://reverseengineering.stackexchange.com/questions/1594/possibilities-for-reverse-engineering-an-ipa-file-to-its-source
- Xcode幽灵:https://en.wikipedia.org/wiki/XcodeGhost
用户解锁手机
- 即使设备被锁定,对设备具有物理访问权限的恶意人员有时也可以访问该应用程序的禁止访问部分。 http://www.telegraph.co.uk/technology/apple/iphone/11887252/iOS-9-hack-allows-strangers-to-access-photos-and-contacts-from-a-locked-iPhone。 -how-to-protect-yourself.html
用户在智能手机上下载应用程序
- 恶意软件可以通过下载链接或第三方商店提供经过修改的应用程序。 http://www.cnet.com/how-to/how-to-avoid-pokemon-go-malware/
用户使用该应用程序:用户使用其智能手机和应用程序的方式容易受到多种攻击。
攻击者甚至可以伪造触摸ID传感器来强行使用用户密码
- 网络钓鱼:攻击者可以说服用户向其提供密码
- 该工具会在不知不觉中允许恶意应用访问私有数据
- 攻击者可以在另一个用户中找到用户的密码
- 恶意人员可以在有限或无限的时间内物理访问用户的设备。 这使攻击者几乎可以访问设备上的所有信息。 即使使用指纹锁定的设备也不会保存。
这是可以在物理设备上执行的攻击的另外两个示例:
- 越狱:它允许访问操作系统的许多或所有锁定部分,例如RAM,文件系统等。
- 有些攻击甚至不需要越狱或解锁设备http://www.techtimes.com/articles/88939/20150929/ios-9-security-flaw-hackers-can-access-your-messages-photos-and-与siri.htm的帮助联系
我们可以注意到,攻击的可能性非常广泛。 根据攻击的类型,所有这些攻击或缺陷都可能以不同的方式伤害用户。 下一节简要给出一些示例。
对用户有什么风险
这是成功利用攻击或漏洞后的后果。
- 将个人数据发送到未经授权的实体
- 应用程序不可用
- 凭证和/或金钱盗窃
- 机密信息广播和盗窃
- 敲诈
- 无法使用设备
希望,执行窃取用户凭据和金钱的攻击相对困难。 他们通常需要访问设备或服务器数据库,或者欺骗用户提供其凭据。
在上述生命周期的每个步骤中,完美安全的环境必须绝对安全。 对此,我认为这不可能实现完美的安全性。 但是我们可以通过采取预防措施来阻止攻击者。 以下是一些预防措施的示例:
- 用户应从知名开发商那里下载应用程序
- 用户应为每个帐户使用不同的强密码
- 开发人员应在提交前查看其应用程序的安全性
- 开发人员应加密所有关键数据和所有网络交换
- 应用商店应评估其应用的安全性
- 检查报告漏洞的网站,例如https://cve.mitre.org/
下一节总结了本文。
结论
没有应用程序是真正安全的。 如果有人决心和足够聪明,他们就会在您的应用中发现漏洞。 没有保证的方法可以防止对应用程序逻辑的攻击。 但是,有一些技巧和推荐的习惯可以阻止,挫败攻击者,甚至让他们放弃。
请记住,攻击者始终以脆弱且知情的猎物为目标!
链接:
iOS开发人员速查表– OWASP
毫无疑问,移动设备消费者面临的最大风险来自丢失或被盗的设备。 信息…… www.owasp.org iOS应用安全性和分析:第1/2部分
您已经为应用程序进行了艰苦的努力,并且已在商店中。 也许有应用内购买,或者您正在存储用户…… www.raywenderlich.com 安全编码指南简介
描述使代码更安全免受攻击的使用技术和考虑因素。 developer.apple.com 安全编码指南简介
描述使代码更安全免受攻击的使用技术和考虑因素。 developer.apple.com 安全编码指南简介
描述使代码更安全免受攻击的使用技术和考虑因素。 developer.apple.com 安全编码指南简介
描述使代码更安全免受攻击的使用技术和考虑因素。 developer.apple.com 如何破解移动应用程序:这比您想像的要容易!
我们生活在一个移动的个人世界中,每年有近十亿部新手机发售。 最重要的企业… securityintelligence.com
- 自定义扩展文件未在iMessage中打开
- 在imageView中的CATransform3dTranslate问题
- Objective-C / iOS:为自定义视图创build子类UITableViewController
- iOS 9和WatchOS 2上的NSUserDefaults(suiteName :) – 不工作?
- 后台应用程序刷新启动应用程序在被用户杀死后进行刷新?
- iOS:Google Maps API – markerInfoWindow vs markerInfoContents
- 如何在swift中用多个参数创buildselect器
- iOS SDK。 显示通话中状态栏
- 比较目标C – ARC不允许将’int’隐式转换为’id’