Android是否存在网络注入攻击?

简介: 本文讲的是Android是否存在网络注入攻击?,如今大多数人都使用网上银行,而黑客正是利用这个机会,通过发动这种网页代码注入攻击,能够修改被感染用户设备浏览器中的银行主页
本文讲的是 Android是否存在网络注入攻击?

Android是否存在网络注入攻击?

Web注入攻击

MiT-browser (MiTB)

如今大多数人都使用网上银行,而黑客正是利用这个机会,通过发动这种网页代码注入攻击,能够修改被感染用户设备浏览器中的银行主页

MiTB攻击就发生在这个时候,攻击者会诱导你下载木马,一旦你访问特定的银行网站的时候,恶意软件就会使用包括注入恶意DLL,恶意扩展或通过欺骗代理服务器或其他方式往你访问的页面注入更复杂的恶意代码,MiTB会把它自己直接集成到网页上,还能保持原有的域名和SSL设置,看起来和真正的网页一样,然后诱导你输入SSN号、ATM PIN码或是银行路由代码,进而拦截银行发给你的一次性SMS消息,收集你的银行详细信息等,比如对Boletos的攻击就是典型的MiTB攻击。

Android是否存在网络注入攻击?

Belotos是巴西最常见的一种支付账单或购买商品的支付手段(类似于中国的支付宝),甚至被政府机构采用。它是巴西市场上一种独特的现象。Boleto是一种特殊的纸质文书,上面包含一个条形码和一串特殊的44位ID代码。用户在使用Beletos购买商品或支付服务时会将该凭证打印出来,接着通过银行、ATM机或在线银行账户扫描条形码或输入ID代码,之后通过现金或数字支付完成交易。每张Boleto的条形码和44位ID代码均不相同,赋予Boleto不同的购买范围,以免出现任何差错。

欺诈过程:大多数在线服务会自动发行Boletos,这种文书及其支付凭证会在用户设备的浏览器中生成。而网络罪犯就是在这一环节介入的。他们会使用多种恶意手段,偷偷更改支付凭证。尤其会更改条形码和ID代码,将支付重定向到不同的银行账户。大多数用户在意识到支付被更改时,已为时已晚。所以,其欺诈过程为:受害者在不知情的情况下,将钱支付给欺诈者的银行账户,而受害者还以为自己进行了正常的购买和支付。

网络罪犯使用的恶意技术. 巴西的网络罪犯会使用大量不同的恶意技术引诱受害者落入Boletos欺诈的圈套。卡巴斯基实验室检测到的最早的案例发生于2013年4月。在这次攻击中,网络罪犯使用木马在受害者的浏览器中注入恶意代码。其攻击原理与知名的SpyEye银行木马相同。

网络罪犯甚至可以使用SSL加密,攻击Boletos的发行服务。卡巴斯基实验室分析的一款恶意软件中使用了一种名为Fiddler的网络调试代理工具。有些Boleto恶意软件使用这种工具拦截SSL通讯,或发动中间人攻击,甚至在Boletos在HTTPS页面生成时,就做了更改。

在另一起攻击案例中,巴西的网络欺诈者借用了加密恶意软件有效负载的技术手段,而这一技术最早被ZeuS/Gameover的开发者所使用。通过使用加密的有效负载,能够让网络罪犯有效地绕过防火墙、网页过滤器、网络入侵检测系统和其他可能存在的防御措施。在这项技术中,网络罪犯会使用一款小体积的木马下载加密文件,之后解密这些文件,完成感染。

此外,还有人发现网络罪犯会使用针对Chrome浏览器的恶意扩展,而且是通过官方Chrome网上应用商店成功进行传播。另外针对Firefox的扩展同样也被使用。

MiTB攻击的目的不同于在社交网络或流行网站上利用广告来吸引用户从而窃取用户的账户信息,它的作案方式更像是Lurk银行木马。

Lurk木马是一种复杂的、通用的、多模块的多功能恶意软件,能够获取受害者计算机的访问权限。Lurk木马非常独特,它的恶意代码不会存储在受害者的计算机中,而是在随机访问存储器(RAM)中。

同时,在俄罗斯,黑客使用MiTB攻击的机会正在减少,因为网络犯罪分子正在选择其他方法和攻击载体来攻击银行用户。根据目前的网络犯罪趋势,使用现成的恶意攻击工具比新开发和实施网络注入工具要容易得多。

尽管如此,我们还是要讨论一下是否有针对Android设备的网络注入攻击?

Android上的Web注入

尽管术语“注入”被用于移动银行木马(有时也被网络犯罪分子用来评价他们的数据窃取技术),但Android恶意软件是一个完全不同的世界。为了在Android环境中实现和计算机上的网络注入工具所带来的相同攻击效果,移动木马的开发者使用一种完全不同的攻击技术:用网络钓鱼窗口覆盖其他应用,并将用户从银行网页重定向到特制网络钓鱼页面。

使用网上诱骗窗口覆盖正常应用窗口

这是最流行的诱骗技术了,几乎所有银行木马都在使用这一招。 2013年, 卡巴斯基实验室第一次遇到一个恶意软件覆盖其他应用程序与其网络钓鱼窗口,这就是Trojan-Banker.AndroidOS.Svpeng。

这款木马之所以危险,不仅是因为它能获取银行登录凭证,还因为它可以拦截并删除银行发送的短信息,此外还假冒银行给用户发送信息。通常情况下,当可疑操作被发现时,银行会给用户发送提醒和通知,但该恶意软件有能力删除此类信息。

除此之外,大多数银行有网上银行交易的安全协议,要求用户验证通过短信息收到的交易码。这种情况下,这款恶意软件可以拦截银行发送的信息,从而给潜在黑客提供需要的所有信息,进行欺诈交易。

Android是否存在网络注入攻击?

今天的移动银行木马经常将自己隐藏在Google Play商店中的其他应用程序中,这是为了窃取用户的银行卡详细信息。

除此之外,这些木马还经常覆盖各种社交媒体和即时通讯应用程序窃取用户的账号和密码。

Android是否存在网络注入攻击?

然而,移动银行木马还是对金融应用程序,主要是银行应用程序最感兴趣。

目前总共有三种针对移动操作系统的MiTB攻击方法:

1.一个特殊的木马窗口(比如假冒的银行窗口),由网络罪犯预先制作,用于覆盖另一个应用程序的窗口。这类木马就会用自己的界面将原有银行app界面整个覆盖掉。只要用户输入登录凭证,恶意软件立即窃取相关的信息。

尤其小心那些要求获得访问短信权限的app,比如Acecard家族的移动银行木马就能模仿超过30种银行app或依照命令覆盖任何app的操作界面。

并可以按照C&C服务器命令覆盖任何应用程序。

#Android trump card: Acecard https://t.co/yHxyACMslU #bankingpic.twitter.com/DmnUAOJvSM
— Kaspersky Lab (@kaspersky) February 22, 2016

Android是否存在网络注入攻击?

2.通过网络钓鱼的方式获取用户的管理权限,比如Marcher家族的木马,原本Marcher只通过假冒的Amazon及Google Play Store app来诱骗用户,但后来研究人员发现Marcher已经可以假冒Android软件的更新方式,它在用户安装Firmware_Update.apk时,欺骗用户说有漏洞,然后要求用户尽快安装升级该应用。而在安装时,Marcher会要求用户修改他们的管理权限。

Android是否存在网络注入攻击?

3.从恶意服务器下载模板页面,向其中添加要攻击应用程序的图标和名称。比如Faketoken木马,这个木马被卡巴斯基发现并命名为。顾名思义,该木马的主要特征是能够生成2000多个金融应用的虚假登录屏幕,从而窃取登录凭证。Faketoken还能够通过向受害者显示钓鱼页面,以窃取信用卡信息。

Android是否存在网络注入攻击?

研究人员注意到,Faketoken木马新版本集成文件加密功能,Faketoken的文件加密功能是在2016年7月以后开始出现的,并且已发布数千个包含新功能的版本。卡巴斯基在博文中表示:“我们已成功检测到数千个能够加密数据的Faketoken安装包,最早的一个可追溯至2016年7月。

“Trojan-Banker.AndroidOS.Faketoken伪装成各种程序和游戏,常常模仿Adobe Flash Player。”

研究人员确认称,受害者人数超过16000名用户。他们监测到了在27个国家的感染,大部分位于俄罗斯、乌克兰、德国和泰国。

应该注意的是,从Android 6开始,为了达到攻击目的,FakeToken木马还必须诱骗用户允许它们使用各种管理权限。

随着新版本的Android越来越受欢迎,越来越多的移动银行木马开始需要请求这样管理权限。

将用户从银行的页面重新定向到网上诱骗页面

目前,卡巴斯基实验室只在Trojan-Banker.AndroidOS.Marcher家族中发现使用了这种技术。据估计,将用户重定向到网上诱骗页面的最早版本应该不早于2016年4月,而最新版本也是2016年11月发布的。

将用户从移动银行的页面重诱骗到网上的过程如下:

首先,Trojan-Banker.AndroidOS.Marcher会修改浏览器书签,其中包括当前打开的页面。这样Trojan-Banker.AndroidOS.Marcher就会知道哪个网页是当前打开的,如果这个页面恰好是攻击目标网页之一,Trojan-Banker.AndroidOS.Marcher就会在同一浏览器中打开相应的仿冒页面,并将用户重定向到那里。目前卡巴斯基实验室已经找到Marcher家族特的100个仿冒页面。

不过在这里,需要注意两点:

1.卡巴斯基实验室能够检测到的Marcher木马,目前已经不再使用此技术。

2.使用这种技术修改的最总目的也是要用钓鱼的方法覆盖其他应用程序。

为什么是将用户从银行的页面重新定向到网上诱骗页面使用率会这么低呢?

1.在Android 6及更高版本中,此技术不再有效,这意味着潜在受害者的数量每天都在减少。例如,使用卡巴斯基实验室移动安全解决方案的用户中,大约30%的用户已经了使用Android 6或更高版本;

2.该技术只适用于有限数量的移动浏览器;

3.用户可以很容易地发现他们正被重定向到网络钓鱼站点,并且他们还可以注意到网页的URL已经改变。

使用root权限启动攻击

如果木马获得了用户的各种权限,那就可以执行任何攻击,包括的恶意注入到浏览器。虽然卡巴斯基实验室目前还无法找到这样一个案例,但已经有一些木马开始尝试这样做了:

1. Backdoor.AndroidOS.Triada,Backdoor.AndroidOS.Triada的一些模块可以替换浏览器中的某些功能,获取用户权限。Triada被下载后,Triada的一些模块会从磁盘中移除,仅保存在内存中,这极大地增加了检测和删除它的困难度。为了在用户设备和其他应用中隐藏各个运行过程,该木马策略性地替代了安卓的返回运行资源列表的功能,安装/运行安装包的安装。专家强调说,这一方案中的恶意模块可被用于执行root权限盗用。

2.Trojan-Banker.AndroidOS.Tordow.a,该恶意软件家族已经开始在四处制造受害者了。他们会感染智能手机,并深度隐藏在设备中,最后窃取用户敏感信息,然后上传至恶意软件开发者服务器上。这一恶意软件家族是在2016年的2月首次出现,当时感染用户的方式主要是通过安卓第三方应用市场。此木马能够偷取联系人信息,打电话,发送,偷取并删除短信。还能下载并在设备上运行文件、安装或卸载应用、屏蔽对于一些特别网页的访问、重命名设备上的文件、将文件上传到某一在线服务器以及重启手机。

总结

Triada和Tordow的例子表明,随着网络攻击者掌握的专业知识越来越多,类似的高复杂性攻击在未来肯定会常态,但是这些木马的创新也是要耗费大量人力和资金的,所以使用一般的钓鱼窗口这样简单而经济的方式会是网络攻击者常用的诈骗选择。我们可以说,就目前的技术能力,针对移动银行的恶意网络注入仍是一个相当昂贵的网络攻击。

建议

虽然我们无法及时掌握最新的黑客攻击技术并作出及时的防护,但这并不意味着我们束手就擒,从以上的分析中,我们可以看出,随着Android版本的提高,未来的攻击会需要大家给予木马们更多的权限,所以大家在安装或升级任何软件时一定要看看是不是需要允许那么的权限,一句话,看好自己的权限,以不变应万变,其次下载应用时,一定要在正规的应用商店下载。




原文发布时间为:2017年1月21日
本文作者:xiaohui
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。
目录
相关文章
|
13天前
|
缓存 网络协议 安全
Android网络面试题之Http基础和Http1.0的特点
**HTTP基础:GET和POST关键差异在于参数传递方式(GET在URL,POST在请求体),安全性(POST更安全),数据大小限制(POST无限制,GET有限制),速度(GET较快)及用途(GET用于获取,POST用于提交)。面试中常强调POST的安全性、数据量、数据类型支持及速度。HTTP 1.0引入了POST和HEAD方法,支持多种数据格式和缓存,但每个请求需新建TCP连接。**
22 5
|
11天前
|
安全 网络协议 算法
Android网络基础面试题之HTTPS的工作流程和原理
HTTPS简述 HTTPS基于TCP 443端口,通过CA证书确保服务器身份,使用DH算法协商对称密钥进行加密通信。流程包括TCP握手、证书验证(公钥解密,哈希对比)和数据加密传输(随机数加密,预主密钥,对称加密)。特点是安全但慢,易受特定攻击,且依赖可信的CA。每次请求可能复用Session ID以减少握手。
18 2
|
17天前
|
缓存 JSON 网络协议
Android面试题:App性能优化之电量优化和网络优化
这篇文章讨论了Android应用的电量和网络优化。电量优化涉及Doze和Standby模式,其中应用可能需要通过用户白名单或电池广播来适应限制。Battery Historian和Android Studio的Energy Profile是电量分析工具。建议减少不必要的操作,延迟非关键任务,合并网络请求。网络优化包括HTTPDNS减少DNS解析延迟,Keep-Alive复用连接,HTTP/2实现多路复用,以及使用protobuf和gzip压缩数据。其他策略如使用WebP图像格式,按网络质量提供不同分辨率的图片,以及启用HTTP缓存也是有效手段。
37 9
|
12天前
|
缓存 网络协议 Android开发
Android网络面试题之Http1.1和Http2.0
HTTP/1.1 引入持久连接和管道机制提升效率,支持分块传输编码和更多请求方式如PUT、PATCH。Host字段指定服务器域名,RANGE用于断点续传。HTTP/2变为二进制协议,实现多工处理,头信息压缩和服务器推送,减少延迟并优化资源加载。HTTP不断发展,从早期的简单传输到后来的高效交互。
18 0
Android网络面试题之Http1.1和Http2.0
|
17天前
|
存储 安全 JavaScript
【网络安全】CSRF攻击详解
【网络安全】CSRF攻击详解
|
17天前
|
JSON Java API
【Android】使用 Retrofit2 发送异步网络请求的简单案例
**摘要:** Retrofit是Android和Java的HTTP客户端库,简化了RESTful API交互。它通过Java接口定义HTTP请求,并提供注解管理参数、HTTP方法等。要使用Retrofit,首先在AndroidManifest.xml中添加`INTERNET`权限,然后在`build.gradle`中引入Retrofit和Gson依赖。创建服务器响应数据类和描述接口的接口,如`Result`和`Api`。通过Retrofit.Builder配置基础URL并构建实例,之后调用接口方法创建Call对象并发送异步请求。
47 1
|
21天前
|
缓存 网络协议 Java
Android面试题之Java网络通信基础知识
Socket是应用与TCP/IP通信的接口,封装了底层细节。网络通信涉及连接、读写数据。BIO是同步阻塞,NIO支持多路复用(如Selector),AIO在某些平台提供异步非阻塞服务。BIO示例中,服务端用固定线程池处理客户端请求,客户端发起连接并读写数据。NIO的关键是Selector监控多个通道的事件,减少线程消耗。书中推荐《Java网络编程》和《UNIX网络编程》。关注公众号AntDream了解更多。
21 2
|
22天前
|
XML JSON Java
Android面试题 之 网络通信基础面试题
序列化对比:Serializable码流大、性能低;XML人机可读但复杂;JSON轻量、兼容性好但空间消耗大;ProtoBuff高效紧凑。支持大量长连接涉及系统限制调整、缓冲区优化。select/poll/epoll是IO多路复用,epoll在高连接数下性能更优且支持边缘触发。水平触发持续通知数据,边缘触发仅通知新数据。直接内存减少一次拷贝,零拷贝技术如sendfile和MMAP提升效率。关注公众号"AntDream"了解更多技术细节。
16 1
|
23天前
|
存储 安全 云计算
网络攻击者在云中发现凭证之后不到10分钟就能发动攻击
网络攻击者在云中发现凭证之后不到10分钟就能发动攻击
|
5天前
|
Web App开发 JavaScript 前端开发
Android端使用WebView注入一段js代码实现js调用android
Android端使用WebView注入一段js代码实现js调用android
20 0