Android安全问题 抢先拦截短信】的更多相关文章

同上篇文章一样,这里只陈述结果,代码分析稍后给出 导读:本文叙述如何先于某些伪杀毒软件.病毒.常规软件获取到短信 众所周知,android系统在收到短信息的时候会发送广播,但是此广播是有序广播,也就是说:先接收到广播的人,如果心情不好,它就不会向后传递此广播,后面的人就不会知道有短信到来 这与无序广播不同,无序广播并不是真的没有顺序(只是似乎大家习惯这么叫而已),无序广播的接收者也是排队等待广播的,只不过是在传递过程中,大家必须遵守规则,一直把消息传递给最后一个人才可以 关于无序广播与静态接收器…
导读:本文说明系统是如何注册动态广播以及静态广播,这里主要注意其注册的顺序 这篇文章主要是针对我前两篇文章 android安全问题  抢先开机启动 - 结果篇 android安全问题  抢先拦截短信 - 结果篇 之前只给出了结果,并没有给出代码分析,现在给出第一步分的分析 大家都知道,广播接收器分为动态注册和静态注册两种 静态接收,就是配置到manifest.xml文件中,PackageManagerService扫描后记录其信息…… 动态接收,就是从代码中注册,通过调用下面的方法实现 Inte…
安卓手势触摸滑动: package com.itheima52.mobilesafe.activity; import android.app.Activity; import android.content.SharedPreferences; import android.os.Bundle; import android.view.GestureDetector; import android.view.GestureDetector.SimpleOnGestureListener; im…
导读:本文说明系统发送广播的部分流程,如何利用Intent查找到对应接收器.我们依然只关注接收器的排序问题 这篇文章主要是针对我前两篇文章 android安全问题(四) 抢先开机启动 - 结果篇 android安全问题(五) 抢先拦截短信 - 结果篇 现在给出第二步分的分析 下面就来看看发送广播的流程 Context中的sendBroadCast函数的实现是在ContextImpl中,和发送广播相关的有如下六个函数 void android.app.ContextImpl.sendBroadca…
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46994097 这里.向大家简介通过BroadcastReceiver来拦截短信的方法 1.创建短信广播接收者SmsRecevier 这个类是BroadcastReceiver的子类,详细的拦截操作在这个类中实现.我在这里仅仅是简单的介绍一下方法,把获取到的短信打印信息出来. 详细的业务逻辑就要大家自己去实现了. 详细代码例如以下: package com.lyz.receiver…
public class SMSMess extends BroadcastReceiver { @Override public void onReceive(Context arg0, Intent arg1) { Bundle b=arg1.getExtras(); if (b!=null){ //从data对象里获取所有的短信,并把每一条短信转成Object对象 Object[] pud_sms = (Object[])b.get("pdus"); //准备一个SmsMessa…
导读:我们以如何抢先开机启动为例,来说明接收无序广播的静态广播接收器的接收顺序 (注意,文本只是陈述结果,所以叫结果篇,之后的文章再给出源码分析) 首先先说一下android中的广播和广播接收器 广播可以分为有序.无序和sticky共三种 广播接收器可以分为静态和动态两种 首先我们要明确两个问题1.接收无序广播的接收器接收到广播的顺序是有序的 2.接收无序广播的接收器也一样可以设置优先级的 这里主要说一下多个应用中的静态广播接收器(优先级都相同的情况下 )接收无序广播时的接收顺序 注意:这里主要…
在一些应用上,比如手机银行,QQ,微信等,很多时候我们都需要通过发送验证码到手机上,然后把验证码填上去,然后才能成功地继续去做下面一步事情. 而如果每次我们都要离开当前界面,然后去查收短信,记住验证码,然后再回来输入到控件中,这感觉就会很麻烦,用户体验就会很差,而像微信等一些应用,则会在手机接到短信 后,将信息中的验证码给抽出来,帮我们将其填到对应的控件中,多方便,对吧. 这个功能就是通过ContentObserver来实现的.顾名思义,Content Observer,就是内容监听,它实现的功…
之前在写通讯录应用时,将整体的代码写完后,自测时发现非常非常多的问题,其中一个非常重要严重的就是可以发出短信,但收不到任何的短信息,这搞的我好捉鸡啊!后来调试发现是由于没有收到短信的消息导致的,然后将自己手机中的QQ通讯录尝试着卸载掉,这时就可以收到了. 后来有时间了在网上查找相关资料,并且按照网上的理论编写了代码测试,解决了这个问题,在这里通过博客把解决的方法记录下来. 首先要知道广播分为无序,有序,sticky三种广播 无序广播应该最常用的,就是普通的广播,任何BroadcastReceiv…
导读:本文利用android4.0的一个原生漏洞来伪造短信.无须声明任何权限即可伪造发送方为任何号码的短信给用户. android4.0发布已经是很久很久很久很久以前的事情了,这个漏洞早就报了出来,之所以现在才写这篇文章,就是觉得,该升级的基本已经都升级了,该打补丁的基本都已经打了补丁,所以现在差不多是时候了. 原生android4.0系统中,Mms.apk的manifest有这样一段 <service android:name=".transaction.SmsReceiverServi…
由于监听系统短信广播受到权限的限制,所以很多手机可能使用这种方式没法监听广播,从而没办法获取到系统短信,所以又重新开辟一条路. Android监听系统短信数据库内容变化使用场景: 1.监听短信数据库的变化,添加删除修改,变化的时候会回调onChange方法 2.提取刚刚变化的那条短信的内容 备注: 1.这种方式虽然一开始能够监听到数据变化,但是要判断是刚刚接手到的短信,还需要做一些处理,具体看代码 2.这种方式需要从数据库里面去读取刚刚加入的那条短信,所以需要读取数据库权限,会弹出系统的权限申请…
PS:最近很多事情都拖拖拉拉的..都什么办事效率啊!!! 还得吐槽一下移动运营商,验证码超过五次的时候,直接把我的手机号封闭.真是受够了. 学习笔记: 1.Android之如何获取短信验证码. 2.如何读取刚收到的短信的相关内容.  现如今,验证码在Android的客户端还是非常普遍的.通过手机账号和验证码直接去注册应用账户的信息.很多应用都以这种方式来完成注册.简单的介绍一下吧.  Android获取短信验证码还是比较简单的,通过Mob官网提供的ShareSDK,调用其中内部的方法,就可以获取…
8.2    接收和发送短信 收发短信应该是每个手机最基本的功能之一了,即使是许多年前的老手机也都会具备这 项功能,而 Android 作为出色的智能手机操作系统,自然也少不了在这方面的支持.每个 Android 手机都会内置一个短信应用程序,使用它就可以轻松地完成收发短信的操作,如 图 8.4 所示. 图   8.4 不过作为一名开发者,仅仅满足于此显然是不够的.你要知道,Android 还提供了一系 列的 API,使得我们甚至可以在自己的应用程序里接收和发送短信.也就是说,只要你有足 够的信…
打电话: Intent intent = newIntent(Intent.ACTION_CALL,Uri.parse("tel:"+"156666666666")); this.startActivity(intent); 加上打电话的权限:<uses-permissionandroid:name="android.permission.CALL_PHONE" 发短信: //发短信 String content ="111111…
导读:文本介绍一种钓鱼应用,讲述如何骗取用户的用户名和密码,无须root 这个话题是继续android安全问题(二) 程序锁延伸的 之前我已经展示了如何制作程序锁.当打开指定应用的时候,弹出一个密码页面. 程序锁的话题虽然是和安全相关,但是这应该属于防范的范围,如果被人恶意利用,那么后果…… 这期我来揭示一下一种钓鱼程序的原理,希望广大用户不要上当受骗,最主要的是:希望大家意识到安全问 之前我用定时扫描activity的方法来检查打开的页面是不是我们所需要的页面 ComponentName to…
Android下调用收发短信邮件等 1,调web浏览器Uri myBlogUri = Uri.parse("http://xxxxx.com");returnIt = new Intent(Intent.ACTION_VIEW, myBlogUri);2,地图Uri mapUri = Uri.parse("geo:38.899533,-77.036476");returnIt = new Intent(Intent.ACTION_VIEW, mapUri);3,调拨…
android 4.4之后非默认的短信应用已经没有办法删除短信了.像以前那样用如下方法是不会没法删除短信的(即使在xml中配置了短信的读写权限),同时也不会有报错或其他提示. public void deleteSMS() { try { ContentResolver CR = getContentResolver(); // Query SMS Uri uriSms = Uri.parse("content://sms/inbox"); Cursor c = CR.query(ur…
在开发android应用程序时,有时候需要测试一下向android手机拨打电话发送短信时该应用程序的反应.譬如编写一个广播接收器,来提示用户有短信收到或者处理短信,就需要向该手机发送短信来进行测试.这里介绍一种简单的向android模拟器打电话发短信的方法. 该方法利用了eclipse ADT的DDMS来实现,首先点击打开DDMS,在eclipse界面的右上角,如图: 如果找不到,就点左边的图标,再点击others就会看到. 打开之后,在界面的左边中部会看见有一个Emulator Control…
前言:android应用的自动化测试必然会涉及到注册登录功能,而许多的注册登录或修改密码功能常常需要输入短信验证码,因此有必要能够自动获得下发的短信验证码. 主要就是实时获取短信信息. android上获取短信信息主要有BroadcastReceiver方式与数据库方式,要实时的话就BroadcastReceiver比较方便 public class SMSReceiver extends BroadcastReceiver{ private String verifyCode="";…
如何去理解BroadcastReceiver(广播)?其实可以这样想,首先我们要有一个发送广播的"媒体",在这个例子中,我们暂且用activity组件作为这个媒体,当然以后会用到service,或者随机启动方式来发送广播,这看业务需求来决定.在这个例子中,当点击按钮的时候,一条广播就发送了出去,同样用到了意图对象Intent.和启动activity和service一样,我们需要为意图对象设置"标记"和"包裹",它就像个基站,向世界发送信号.而对于…
1. 启动Android Emulator, 查看标题栏找出端口.一般是android emulator(5554),其中5554就是端口. 2. 打开命令行,输入telnet localhost 5554.程序将会连接到android emulator,控制台会返回 Android Console: type 'help' for a list of commands OK (win7的话,需要telnet命令的支持) 3. 模拟电话打入.输入gsm call <模拟打进的电话号码>.如:g…
导读:本文介绍如何实现对应用加锁的功能,无须root权限 某些人有时候会有这样一种需求,小A下载了个软件,只是软件中的美女过于诱惑与暴露,所以他不想让别人知道这是个什么软件,起码不想让别人打开浏 览.而这款软件又没有锁,任何人都可以打开,肿么办呢?如果打开它的时候需要输入密码,那该多好阿!于是,程序锁这种应用就产生了 程序锁不是最近才有的,很久之前android就有这种apk了 这一期我们来苛刻如何实现程序加锁功能 首先,我们先明确一下我们要做的程序具有什么功能 1可以选择需要加锁的程序 2可以…
之前写过一些android手机root之后的安全问题的(文章列表见末尾),其实我是想到哪就写到了,今天整理硬盘,发现一年之前写过一段代码,所以今天我们就一起来讨论一下. 注:这里不是讨论多nb的技术,而是希望不了解android风险的人了解我们所处的状态 导读: 本文介绍了所谓的静音拍照是如何实现的(当然这也是一种恶意软件,只不过受害的不是用户),和用户自己如何被恶意软件拍照的 由于iteye不允许偷和拍放到一起,所以……静音拍照,大家懂的,静音拍照?不就是…… 今天的主题是静音拍照与被拍 当然…
android中发送短信很简单, 首先要在Mainfest.xml中加入所需要的权限: ? 1 2 3 <uses-permission android:name="android.permission.SEND_SMS"></uses-permission> <uses-permission android:name="android.permission.READ_SMS"></uses-permission> &…
本实例通过SmsManager的sendTextMessage方法实现发送短信关于SmsManager的具体解释大家能够參照:Android开发之SmsManager具体解释 实例执行效果图: 程序代码: package com.jph.sendmsg; import android.os.Bundle; import android.app.Activity; import android.app.PendingIntent; import android.content.Intent; im…
之前一直以为是应用本身在对图标进行修改,看了源码之后发现其实主要的工作并不是应用自己完成的,主要的工作在是launcher里面完成的. 关于系统里面类似未读短信的具体处理流程如下, 原理 一个应用要实现这个效果,就要在自己有未读的消息的时候发送一个广播告诉系统我有未处理的事件了(例如:短信,电话和邮件等),同时将相关的信息进行保存,比如应用的名称(这里指的是ComponentName)和未处理事件的数量.系统将提升用户有待处理的事件交给Launcher去处理,launcher会接收到对应的广播,…
效果图: manifest.xml 文件中加入  <uses-permission android:name="android.permission.SEND_SMS"/> <?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">sms</string> <string…
当设备接收到一条新的SMS消息时,就会广播一个包括了android.provider.Telephony.SMS_RECEIVED动作的Intent. 注意,这个动作是一个字符串值,SDK 1.0不再包括对这个字符串的引用.因此,在你的应用程序中.你须要显式的指定它. 对于应用程序监听SMS Intent广播,首先须要加入RECEIVE_SMS权限.通过在应用程序manifest中加入一个uses-permission,如以下的片段所看到的: <uses-permission android:n…
好久没写了,最近学习Android的相关知识,包括UI组件与布局.Activity生命周期等,而这次要讲的是,Broadcast Receiver的相关知识,主要是接收发短信,SmsManager.SmsManages的使用.还有就是这里涉及到的权限问题,在清单文件中加入相关的权限,还有就是运行权限.具体请看下面例子: 发短信(SmsManager): 发短信比较简单,我们可以定义一个类,通过传参(包括号码与内容)的方式进行进一步操作. import android.telephony.SmsM…
转载地址:http://hi.baidu.com/jeremylai/item/420f9c9fe4881fccb62531f7 1. 启动Android Emulator, 查看标题栏找出端口.一般是android emulator(5554),其中5554就是端口. 2. 打开命令行,输入telnet localhost 5554.程序将会连接到android emulator,控制台会返回 Android Console: type ‘help’ for a list of command…