Android安全——Activity劫持

安全 终端安全
android运行时,会在很多activity中进行切换,它自身维护着一个activity的历史栈,用于在用户点击back时,恢复前一个activity,栈顶指向当前显示的activity。

一、activity劫持简介

DEFCON-19上公布的https://www.trustwave.com/spiderlabs/advisories/TWSL2011-008.txt

android运行时,会在很多activity中进行切换,它自身维护着一个activity的历史栈,用于在用户点击back时,恢复前一个activity,栈顶指向当前显示的activity。

http://developer.android.com/guide/topics/fundamentals/tasks-and-back-stack.html

在我们使用intent开启activity时,intent有一个选项FLAG_ACTIVITY_NEW_TASK,可以使得这个activity位于栈顶

http://developer.android.com/reference/android/content/Intent.html

#FLAG_ACTIVITY_NEW_TASK

如果我们注册一个receiver,响应android.intent.action.BOOT_COMPLETED,使得开启启动一个service;这个service,会启动一个计时器,不停枚举当前进程中是否有预设的进程启动,如果发现有预设进程,则使用FLAG_ACTIVITY_NEW_TASK启动自己的钓鱼界面,截获正常应用的登录凭证。
 

 二、实例

androidmanifest.xml

 

 

HijackReceiver.java用于开机启动HijackService

 

HijackService.java用于判断正常应用是否启动,如果启动则开启劫持activity

 

 

 

AlipayLogin.java是伪造的界面,用于获取用户凭证并发送到指定地址,并返回正常应用

 

 

 

演示效果如下:

启动正常应用

这时恶意的后台service启动了伪造的activity

当用户输入凭证之后

恶意activity记录下凭证,并跳回到正常应用

在远端服务器已经记录下了用户凭证


 

 

责任编辑:于爽 来源: www.sectop.com
相关推荐

2015-11-09 14:28:06

Adroid安全

2015-11-09 14:37:45

Android安全

2014-07-22 13:52:45

2015-11-09 14:46:49

Android安全

2016-10-10 13:51:42

2015-11-09 14:17:51

2015-10-20 15:54:16

android源码滑动关闭

2013-01-08 13:33:07

Android开发Activity入门指南

2021-08-16 12:09:12

恶意软件AndroidFacebook

2021-04-09 09:02:00

恶意软件Android劫持会话

2011-06-02 11:13:10

Android Activity

2011-04-12 17:16:52

Activity跳转开发实例Android学习笔记

2014-08-08 10:36:12

ActivityAndroid

2009-09-02 20:18:17

域名劫持域名安全

2010-02-06 10:14:36

Android Act

2017-07-06 10:35:54

Web前端劫持

2011-02-15 10:22:35

2014-08-21 11:07:40

AndroidActivity销毁

2013-02-01 13:47:47

Android开发Activity

2010-01-25 17:21:34

Android Act
点赞
收藏

51CTO技术栈公众号