移动安全入门

移动安全不仅面临网络安全上的诸多挑战——用户广泛,发展迅速,持续的网络活动——与之而来的还有传统胖客户端应用的风险,如缓冲区管理,本地加密与恶意软件。移动环境下的一大特别之处在于由未知开发者开发的不可信应用被广泛的安装使用。

移动应用攻击面

如下图所示,移动应用攻击包括设备层,网络层,数据中心,或以上所有。平台固有的漏洞与社会工程学持续为网络盗贼提供了机会,也为保护用户数据的人带来了重大挑战。

攻击向量

在移动技术链中存在三个关键点可能被攻击者利用漏洞发起攻击:

  • 设备
  • 网络
  • 数据中心

设备

移动设备对敏感的公司信息构成风险;主要风险包括数据丢失与被盗用。无论iPhone,Android或其他智能手机,攻击者会针对设备的不同入口:

  • 浏览器,邮件,或其他预加载应用
  • 电话/短信
  • 第三方应用
  • 操作系统
  • 像蓝牙、基带等无线通道

基于浏览器的攻击

钓鱼(Phishing) - 涉及通过电子邮件欺骗来伪装为受信任实体来获取个人信息,例如用户名,密码和信用卡详细信息。研究表明,移动用户受骗率是桌面用户的三倍。这很可能是由于移动浏览器运行在一个精简的环境下,由于屏幕限制只能显示一小部分URL内容,有限的警告对话框,缩小的安全图标,并且放弃了许多用户界面的指示器,如STOP图标,高亮地址栏以及其他可见的指示器。

框架(Framing) - 这包括将一个Web/WAP网站包含在一个iFrame里,可能会导致被“包裹”的网站受到点击劫持攻击。

点击劫持(Clickjacking) - 也被称为UI调整,点击劫持涉及欺骗用户揭露机密信息或当用户点击看起来无害的链接或按钮时控制他们的设备。 此攻击采用嵌入式代码或脚本的形式,用户毫不知情。 Clickjacking已被利用于像在Facebook网站上窃取信息或驱使用户去攻击网站。

被迫下载(Drive-by Downloading) - Android用户尤其容易遭受这种攻击,访问一个网站就会在用户不知情的情况下下载,或通过欺骗性的信息诱骗用户下载。下载到的可能是个恶意应用,然后用户被自动弹窗提示安装应用。当Android设备设置为“允许未知来源”时,这些应用就会顺利被安装。

手机木马(MitMo) - 允许恶意用户利用放置在移动设备上的恶意软件绕过通过短信向用户的手机发送代码以进行身份确认的密码验证系统。

基于手机/短信的攻击

基带攻击(Baseband attacks) - 利用在手机GSM / 3GPP基带处理器中发现的漏洞进行攻击,GSM / 3GPP基带处理器是向小区基站发送和接收无线电信号的硬件。

短信钓鱼(SMiShing) - 类似于钓鱼,但使用手机短信代替电子邮件,以提示用户访问非法网站并输入敏感信息,如用户名,密码和信用卡号。

射频攻击(RF Attack) - 蓝牙、NCF攻击,以及其他通常在近场设备通信的各种外围信道中发现的射频利用方法。

基于应用的攻击

敏感数据存储 - 2011年viaForensics采样研究发现83%的流行应用程序采取不安全的数据存储方法。

无/弱加密 - 允许传输未加密或弱加密数据的应用程序容易受到攻击。

SSL验证不正确 - 应用程序的安全套接字层(SSL)验证过程中的错误可能会导致数据安全漏洞。

配置操作 - 包括未经授权访问管理界面,配置存储和检索明文配置数据。

动态运行时注入 - 允许攻击者操纵和滥用应用程序的运行时,绕过安全锁,绕过逻辑检查,访问应用程序的特权部分,甚至窃取存储在内存中的数据。

未预期授权 - 错误配置的应用有时可能会通过授予未预期的权限来打开攻击者的大门。

权限提升 - 利用一个错误,设计缺陷或配置疏忽,以获得通常受应用程序或用户保护的资源。

基于系统的攻击

无密码 - 许多用户选择不设置密码,或使用弱PIN、密码或模式锁定。

iOS越狱 - “越狱”是用于消除制造商和运营商设置的防止未经授权的代码在设备上运行的安全机制的术语。 一旦这些限制被删除,设备可以成为恶意软件和其他攻击的网关。

安卓Root - 类似于越狱,root允许Android用户更改或替换系统应用程序和设置,运行需要管理员级权限的专门应用程序。 同越狱一样,它可能导致敏感数据的暴露。

密码和数据可访问 - 诸如Apple的iOS系列的设备在其用于存储加密密码和数据的加密机制中已经存在漏洞。 具有这些漏洞知识的攻击者可以解密设备的钥匙串,暴露用户密码,加密密钥和其他私人数据。

预安装软件 - 预安装在设备上的软件可能包含安全漏洞。 最近,在Android手机上的一些预加载应用程序被发现包含安全漏洞,可用于擦除手机,窃取数据,甚至窃听电话。

0day攻击 - 攻击经常发生在漏洞被首次利用和软件开发人员能够发布解决问题的版本之间的这段时间。

网络

Wi-Fi无/弱加密 - 当在Wi-Fi网络上使用未实施加密的应用程序时,就会存在恶意攻击者窃听无线连接从而窃取数据的风险。 许多应用程序使用SSL / TLS,这提供了一定程度的保护; 然而一些针对SSL / TLS的攻击也被证明可以将用户关键数据暴露给攻击者。

恶意接入点 - 涉及物理安装的授权多方访问安全网络的未授权无线接入点。

数据包嗅探 - 允许恶意入侵者捕获和分析网络流量,通常包括以明文传输的用户名和密码信息。

中间人(MITM) - 涉及窃听现有网络连接,侵入该连接,拦截消息和选择性修改数据。

SLStrip - 一种中间人攻击的形式,利用网站上SSL / TLS实现的弱点,这可以依赖于用户验证HTTPS连接是否存在。 攻击将连接降级到HTTP,不需要加密,用户很难在移动浏览器中检测到。

会话劫持 - 涉及会话密钥的利用,以获得对用户和网络信息的未经授权的访问。

DNS投毒 - 利用DNS可以将网站用户引导到攻击者选择的另一个网站。 在某些情况下,攻击还可以通过APP注入内容。

伪SSL证书 - 另一个中间人攻击,涉及发出假SSL证书,允许恶意用户拦截假定安全HTTPS连接上的流量。

数据中心

基于Web服务器的攻击

平台漏洞 - 攻击者可利用操作系统,服务器软件或Web服务器上运行的应用程序模块的漏洞。 有时可以通过监视移动设备和web服务器之间的通信来发现脆弱性,以发现协议或访问控制中的弱点。

服务器配置错误 - 配置不当的Web服务器可能会允许未授权访问那些通常受保护的资源。

跨站脚本攻击(XSS) - 跨站脚本攻击是一种涉及将恶意JavaScript代码注入网站的攻击。 容易受到此类攻击的页面会将用户输入返回浏览器,而并未正确地对其进行处理。 此攻击通常用于在用户访问页面时自动运行代码,从而控制用户的浏览器。 在已经建立对浏览器的控制之后,攻击者可以将该控制用于各种攻击,诸如内容注入或恶意软件传播。

跨站请求伪造(CSRF) - 跨站请求伪造涉及攻击者根据特定Web应用程序的功能创建HTTP请求,并诱骗用户或浏览器提交这些请求。如果Web应用程序易受攻击,攻击可以执行似乎来自用户的事务或提交。 CSRF通常在攻击者已经通过XSS,社交工程或其他方法获得对用户会话的控制之后使用。

弱输入验证 - 许多Web服务过度信任来自移动应用程序的输入,依靠应用程序来验证最终用户提供的数据。但是,攻击者可以伪造自己与Web服务器的通信,或完全绕过应用程序的逻辑检查,允许他们利用服务器上缺少的验证逻辑来​​执行未经授权的操作。

暴力攻击 - 暴力攻击只是试图猜测一个字段的有效输入,通常使用高速率的尝试和可能值的字典。暴力攻击的最常见用法是身份验证,但也可用于在Web应用程序中发现其他有效值。

数据库攻击

QL注入 - 没有正确验证用户输入的接口可能导致SQL被注入到无害的应用程序查询中,导致数据库暴露或以其他方式操纵通常应该限制用户或应用程序操纵的数据。

OS命令执行 - 类似于SQL注入,某些数据库系统提供了执行操作系统级命令的方法。 攻击者可以将这些命令插入到查询中,使数据库在服务器上执行这些命令,从而为攻击者提供额外的权限,直至root级别系统访问。

特权提升 - 当攻击利用某些漏洞获得更大的访问权时,会发生这种情况。 在数据库上,这可能导致敏感数据被盗。

数据转储 - 攻击者引导数据库转储库中的一些或所有数据,暴露敏感记录。

移动应用的类型

Web** - 通过网络浏览器操作的应用。有时被称为WAP或移动网站,这些是在过去十年中激增的功能性网络应用程序,提供许多功能,如网上银行和购物。虽然常规网站可以用于移动网络浏览器,但是许多公司会开发单独的移动网络应用以适配移动设备,例如更小的屏幕尺寸,基于触摸的导航和GPS定位。

Native - 已安装的应用程序,可在本机移动设备操作系统上运行,针对特定的移动平台进行编译并利用其API。这些通常(但不总是)通过应用程序市场下载和安装。

包装器 - 通过利用内嵌于原生应用程序包装器(有时也称为“shell应用程序”或“混合应用程序”)中的网页来操作的应用程序。虽然作为最终用户的原生应用程序,其基于Web的功能可导致不同于本地应用程序中发现的漏洞。

results matching ""

    No results matching ""