首页
学习
活动
专区
圈层
工具
发布

NDSS2019议题解读:通过恶意蓝牙外设打破安卓安全机制

首先假设受害安卓手机上已经装有具备BLUETOOTH和BLUETOOTH_ADMIN蓝牙权限的恶意APP,这两个权限是蓝牙APP的通用权限,恶意应用程序能够发起与蓝牙外设配对的请求并按照配置文件与蓝牙设备建立连接...图 2 攻击链 攻击模型中的两个假设和流程复杂的攻击链很容易让人产生疑问,攻击者已经给安卓手机安装恶意APP了,恶意的APP本身就可以在后台完成很多攻击了,为什么还要使用蓝牙外设?...利用截图的能力,攻击者可以从普通或者系统应用程序中获取非常敏感的信息,如私人电子邮件、短信、联系人、聊天软件记录等,并将其发送出手机(通过Internet发送或者通过Web浏览器打开恶意上传网站上传、电子邮件传输等...图 6 免提场景中的攻击流程 这种攻击场景中,对受害者造成的影响如下: 1 电话控制。HFP定义了两个角色,音频网关(AG)和免提单元(HF)。...默认情况下,即使手机已经安全锁定,此谷歌服务也会允许蓝牙耳机发送语音命令。在这种攻击场景中,恶意的蓝牙外设可以注入任何谷歌语音助手支持的语音命令。

3.3K10

如何使用IMEI号码追踪丢失的安卓手机

由于警察和服务提供者的数据库中这些ID号分为白名单和黑名单,因此所有者可以报告其IMEI号码并将其在盗窃后列入黑名单。...在我们的日常生活中,有些人使用蓝牙追踪器GPS定位器来定位附近的智能手机——但是,这种方法存在距离限制。...请注意,如果您的手机同时支持两个SIM卡,则有两个不同的IMEI号码。...确保您的手机在Android 4.4或更高版本上运行。然后,开始安装该应用程序。 步骤2:完成安装后,运行应用程序。提供IMEI跟踪器应用程序要求的所有权限,包括联系人、电话、存储、SMS和位置。...将微信文章和聊天分开切换显示 随便打开一个聊天界面输入一串代码“//multiwebview”然后点击发送;这个时候点击任务切换按钮;你就会发现聊天和文章已经变成了两个任务栏。

15.4K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    2021移动应用发展趋势

    在类似医疗保健,零售,教育和旅游等行业中,对AR和VR应用程序的需求都在不断的增长。利用这些技术的移动应用程序可以创建增强的用户体验,从而帮助企业提高销售量。...此外,聊天机器人也正在改变客户与企业互动的方式,聊天机器人使移动应用程序服务能够快速响应客户的请求,这些请求包括送餐服务,运输服务和在线购物。...Beacons技术 Beacons 是一种小型蓝牙信号广播基站,通过向其他设备发送蓝牙广播信号来确定用户移动设备的位置。...PWA基本上是模仿原生应用程序行为的一个网站(例如,在发送推送通知、脱机工作,或者只是添加到移动设备的主屏幕上)。...但缺点也很显而易见,你的开发人员需要使用不同的开发语言构建两个独立的应用程序,这需要付出更多的时间、金钱和精力。

    3K30

    基于Windows 10平台的PM2.5检测器制作

    而且,蓝牙是短距离无线连接,可以在室内视距情况下完成数据的发送和接收,不受限于有线连接的形式。经过调研,发现HC-06模块可以满足要求,淘宝上价格一般在20元以下,可以拿来直接当串口蓝牙模块使用。...另外,如果用户在Windows 10 IoT Core上运行应用程序,如树莓派2、MBM板子(高通410c除外,自带了蓝牙4.0模块),同样需要另加一个蓝牙USB Dongle。 3....在该示例程序中,已经包含了串口设备的获取、参数的设置、数据的接收、数据的发送等基本功能。...本应用中不同之处在于以下几点:首先,接收的数据编码不同,示例程序中默认是字符串,而SDS011模块发送的是16进制的数据;其次,SDS011的串口参数为9600波特率,每个一秒发送一次数据,我们的应用程序只负责打开串口...获取字符串数据,并进行数据解析和转换,同时显示到界面上,其关键代码如下:        private async void dataProcessTick(ThreadPoolTimer timer)

    1.5K60

    蓝牙规范中的广播和扫描响应数据格式研究

    这种机制允许蓝牙设备发送比单个PDU容量更大的数据包。 此外,AD结构分段是指一个AD结构(即广播数据或扫描响应数据中的一个数据项)可能会被分割成两个或多个PDU进行发送。...数据为URI字符串,允许设备广播其关联的网络资源或应用程序的链接。 11....字符串终止符:由于蓝牙广播数据中的字符串可能不是以null终止的,我们在复制数据到device_name数组后手动添加了null终止符。...广播频率和功耗 广播频率和功耗是BLE设备设计中的两个重要考虑因素。 较高的广播频率可以增加设备的可发现性,但也会增加功耗。 因此,需要在满足应用需求的同时,仔细权衡广播频率和功耗之间的关系。...同时,随着蓝牙技术的不断发展,广播和扫描响应数据格式也在不断更新和完善,以适应新的应用场景和需求。

    28910

    利用蓝牙功能两秒内攻击解锁Tapplock智能挂锁

    有点不可思议,这段视频引发了我对 Tapplock 智能挂锁的安全性好奇,这款具备指纹识别、手机蓝牙和莫尔斯码解锁的智能挂锁,在方便的同时,它安全性如何呢?...从以上网络分析中可看到,当我每次用BLE连接 Tapplock 时,就会有一个 “随机” 字符串被发送给Tapplock端,这些字符串貌似是与 Tapplock 进行交流的命令。 ?...但也值得注意的是,无论我执行多少次对 Tapplock 的连接请求,这些字符串数据都是不变的。从以下蓝牙利用工具gatttool的命令行执行中可以看到,Tapplock 还容易受到重放攻击。 ?...Tapplock挂锁发送了包含两个双字节数组的固定命令CMD_PAIRING_REGULAR。...后期,我会将该脚本移植到一个Android应用程序中,使整个解锁操作更方便快捷。总体来说,实现对Tapplock挂锁的开锁成本非常低廉。

    1.2K40

    BLE低功耗蓝牙与经典蓝牙(持续更新)

    低功耗蓝牙是不能兼容经典蓝牙的,需要兼容,只能选择双模蓝牙。一个蓝牙主端设备,可同时与7个蓝牙从端设备进行通讯。...传统蓝牙有3个功率级别,Class1,Class2,Class3,分别支持100m,10m,1m的传输距离 双模蓝牙:即在蓝牙模块中兼容BLE和BT 在Android 4.3及更高版本,Android...蓝牙堆栈可提供实现蓝牙低功耗 (BLE) 的功能,在 Android 8.0 中,原生蓝牙堆栈完全符合蓝牙 5.0 的要求。...蓝牙技术联盟所用的基本UUID不能用于任何定制的属性、服务和特性。对于定制的属性,必须使用另外完整的128位UUID。...还可以扩展很多其他功能,比如使用BLE实现蓝牙聊天(google sample里面有经典蓝牙的聊天demo),还可以把手机模拟成iBeacon等等。

    9.9K11

    【Android 应用开发】BluetoothAdapter解析

    权限, 就不能使用BLUETOOTH_ADMIN权限; 二 API详解 1.常量介绍 (1)开关状态值 蓝牙关闭 : int STATE_OFF , 值为10, 蓝牙模块处于关闭状态; 蓝牙打开中 :..., 在查找的过程中, 不能连接远程的蓝牙设备, 已经存在的连接也要限制带宽, 如果想要执行除查找外的其它操作, 之前最好调用cancelDiscovery(); 搜索完成广播 : String ACTION_DISCOVERY_FINISHED...", 默认的可见时间为120s, 可以在广播中添加附加域, 设置任意的可见时间, 附加域为EXTRA_DISCOVERABLE_DURATION, 需要BLUETOOTH权限; 可以在Activity中的..., 蓝牙搜索是一个服务进行, 在搜索中的时候, 不能进行连接; 返回值 : 如果取消成功, 则返回true; 如果取消失败, 返回false; (4)获取扫描模式 public int getScanMode...ACTION_REQUEST_DISCOVERABLE广播, 同时在EXTRA_DISCOVERABLE_DURATION附加域中加入可见时间, 单位是秒; 发送这个广播, 会弹出一个对话框, 显示是否可见

    2.9K40

    ibeacon蓝牙技术简介

    更佳的省电效果:蓝牙2.1版加入了Sniff Subrating的功能,透过设定 在2个装置之间互相确认讯号的发送间隔来达到节省功耗的目的。...蓝牙2.1将装置之间相互确认的讯号发送时间间隔从旧版的0.1秒延长到0.5秒左右,无形中变为手机和蓝牙设备节省了很多电量,大大提升了续航能力。...蓝牙与LTE无线技术可彼此通讯,以确保协同传输,降低近带干扰。可作为IP连接基础,巩固蓝牙技术在物联网无线连接中的重要地位。...BLE设备通信 BLE的通信包括两个主要部分:advertising(通告)和connecting(连接)。 通告(Advertising)是一种单向的发送机制。...为了响应这些事件,应用程序可以发送例如本地推送通知,提示用户打开应用程序相关通告。 替换技术Alternatives iBeacon不是唯一一种基于BLE近距离技术开发的设备。

    4.5K90

    蓝牙在小程序中的应用

    (6) ArrayBuffer:小程序中对蓝牙数据的传递是使用ArrayBuffer的二进制类型来的,所以在我们的使用过程中需要进行转码。...,一旦蓝牙有响应,就可以在onBLECharacteristicValueChange事件中得到消息并打印出来。...这里面有个坑:开启notify以后并不能马上发送消息,蓝牙设备有个准备的过程,需要在setTimeout中延迟1秒以上才能发送,否则会发送失败 let buf = hexStringToArrayBuffer...跳坑总结 (1) 等待响应:很多情况下需要等待设备响应,尤其在IOS环境下,比如 监听到蓝牙开启后,不能马上开始搜索,需要等待2秒 开启notify以后,不能马上发送消息,需要等待1秒 (2)...(3) IOS下只有搜索可以省略,如果你知道了设备的ID,服务ID和各种特征值ID,在安卓下可以直接连接,然后发送消息,省去搜索设备,搜索服务和搜索特征值的过程,但是在IOS下,只能指定设备ID连接,后面的过程是不能省略的

    7K50

    Mesh?无线协议的选择

    不能一概而论。 在 Zigbee,Thread 和蓝牙Mesh之间存在着基本的架构差异。...连接需求应该考虑整个生态系统,从终端设备,到任何网关或中心,到应用程序层和服务提供者。 网络技术,如 Zigbee 和蓝牙网格,不能本地支持 IP 必须首先适应网关的 IP。...对于线程来说,分割是在6LoWPAN 层完成的。 对于这些网络中的单播转发,一旦设备准备好发送,消息就会被转发。...如果使用flooding类型的信息来打开100盏灯,通常不能接受只打开了98或99个开关。 这种类型的问题在10节点网络中很少见,但在100节点网络中可能变得普遍。...对于大型蓝牙Mesh,可以利用中继节点优化来优化性能 当短消息(11B)特别用于多播消息时,蓝牙Mesh效果最好 结论 基于所使用解决方案的理论网络大小不能准确反映网络在实际实现中所需节点的数目。

    1.9K20

    C#编写上位机使用UDP给单片机发送Json格式数据

    而通常我们有几种方式,分别是串口传输、蓝牙传输、UDP和TCP这类WIFI传输等。 在本文就用C#编写上位机使用UDP给单片机发送Json格式数据,进行数据的传输。...UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。 Internet 的传输层有两个主要协议,互为补充。...UDP协议与TCP协议一样用于处理数据包,在OSI模型中,两者都位于传输层,处于IP协议的上一层。...UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。UDP用来支持那些需要在计算机之间传输数据的网络应用。...易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。 JSON 语法规则 JSON是一个标记符的序列。这套标记符包含六个构造字符、字符串、数字和三个字面名。

    1.7K20

    苹果Airplay2学习

    相较经典蓝牙,低功耗蓝牙旨在保持同等通信范围的同时显著降低功耗和成本。 BLE 的英文名全称为 Bluetooth Low Energy,中文名称为蓝牙低功耗。...以太网性能较差,只适合于对网络要求比较低的应用中,如果每个节点配置两个以太网,可以采用双网卡绑定的方法提高性能,性能可以提高 50%∼80%。...在 HPC 领域,并行应用程序通常基于 MPI 开发。因此要优化 HPC 应用程序,了解 MPI 实现的特性是非常关键的。...通常适用于发送比较大的消息。该情况下,发送进程自己不能确认接收进程能够有足够的缓存来接受要发送的信息,必须要借助协议和接收端协调缓存之后才会发送信息。...发送端收到指令后调用 RMDA_Write 将数据直接写入接收端应用程序的缓存,消息发送完成之后,发送端会发出 Fin 指令到接收端告知自己已经将整个信息放入到接收端的应用缓存中。

    2K30

    iOS app中蓝牙的后台处理

    ,但是在新的12.X系统中发现,如果外设在App后台时断连,当系统重连外设时(绑定了ANCS),App并不能收到回调。...数组中的关键包阔一下字符串: bluetooth-central 使用核心蓝牙框架和周边BLE设备通信 bluetooth-peripheral 使用核心蓝牙框架共享数据 **注意:** xcode...这些启动选项键在UIApplicationDelegate协议相关中有详细介绍. 实现合适的保存委托方法 在你的应用程序中重新配置适当的中央和外围管理器后,通过将其状态与蓝牙系统的状态同步来恢复它们。...例如,你的应用程序在探索连接的周边设备的数据的过程中可能已被终止。当你的应用程序使用此外设进行恢复时,它将不知道它在终止时的发现过程有多远。您将需要确保您从发现过程中离开的地方开始。...例如,在centralManagerDidUpdateState:委托方法中初始化您的应用程序时,您可以了解您是否已成功发现已还原外设的特定服务(在应用程序终止之前),如下所示: NSUInteger

    5.6K30

    如何使用BtleJuice黑入BLE智能电灯泡

    BtleJuice由两个组件组成 - 拦截代理和核心。这两个组件需要在两个系统上单独运行,每个系统都连接了蓝牙4.0+适配器。我们将使用一台物理机器和另一台运行在同一主机上的虚拟机(VM)。...Step 3:在虚拟机中启动btlejuice-proxy: ? Step 4:找到VM的IP地址,以便我们可以从主机连接到它。或在终端中运行ifconfig来获取IP: ?...与此同时,在VM中运行的btlejuice-proxy将会显示客户端连接的消息: ?...通过重放GATT操作执行中间人攻击 BtleJuice充当移动应用程序和BLE智能灯泡之间的代理,发送到灯泡的任何命令都将被BtleJuice捕获并被转发给灯泡。...应用程序中显示的颜色的RGB值与捕获中的第二个,第三个和第四个字节匹配。 因此,如果我们更改这些字节然后重放数据包,应该能够获得不同的颜色。

    3.9K21

    蓝牙BLE技术

    当然,续航里程越高,电池消耗就越多,所以在调整你的设备以适应更高的续航里程时要小心。 蓝牙BLE组成 BLE由三个主要构建模块组成:应用程序、主机和控制器。...在本例中,单片机运行应用程序,与连接设备进行通信,连接设备由主机和控制器组成。为此,我们使用SPI进行通信,但是也可以使用不同的接口。...这些信道中的37个用于连接数据,后三个信道(37,38和39)用作广告信道以建立连接和发送广播数据。BLE使用称为跳频扩频的技术,其中无线电在每个连接事件上的信道之间跳跃。...ATT构成了BLE应用程序中数据交换的基础,而SMP提供了一个框架,用于在对等体之间生成和分发安全密钥。我们将SMP排除在本教程之外,因为它现在对我们的项目并不重要。...客户端从服务器请求数据,然后服务器将数据发送给它的客户端。重要的是要记住,如果仍有待处理的请求,则在响应到达之前不能再发送任何请求。

    3.2K20

    无线技术

    ,持续发送数据,易受到干扰,易被拦截 跳频:例如,n个数据包,第一个在1信道,第二个在3信道,第三个在2信道发送。...蓝牙:点对点微型网络,基础数据传输,降低功耗 2.4GHZ-2.4835GHZ 蓝牙在83.5MHZ--->分为79个信道,采用FHSS跳频,抗干扰能力强 蓝牙历史: 1.0 90年代末...10m 单工,用蓝牙耳机就不能传文件 1.2 2003 0.7mpbs 2.0 2004 2-3mpbs 双工,用蓝牙耳机就能传文件 2.1 20-30m 降低功耗2-3mw 3.0...300m 进一步功耗更低,可同时2耳机,或音响,蓝牙信标室内定位,打破8终端限制 蓝牙协议栈: 例如键盘的按键数据经过:蓝牙主机:应用程序-》高层协议-》主机接口-》 蓝牙模块:主机控制器-》链路管理......等等再到天线发射 蓝牙规范:让所有蓝牙设备能通信 立体声规范 打电话蓝牙耳机规范 打印机规范 蓝牙键盘鼠标规范等等 程序员在编写应用时调用规范即可, 任何声音都是模拟信号,采样:把模拟信号中的数据尽可能采样为数字信号

    1.3K30

    【消息序列】详解(3):探究蓝牙 ACL 连接确立后的可选操作

    KeyboardOnly:设备只能接收用户输入,不能显示信息。这通常用于没有显示屏的蓝牙设备,如某些蓝牙耳机。 NoInputNoOutput(NINO):设备既不能显示信息,也不能接收用户输入。...兼容性:不同的蓝牙设备可能支持不同的LMP特性。因此,在设计和实现蓝牙应用程序时,应该考虑到这一点,并确保应用程序能够处理不同设备的特性差异。...因此,在设计和实现蓝牙应用程序时,应该考虑到这一点,并确保应用程序能够处理不同设备的特性差异。...因此,在设计和实现蓝牙应用程序时,应该考虑到这一点,并确保应用程序能够处理不同设备的差异。...然而,在这个特定的场景中,由于两个控制器几乎同时接收到相同的命令,它们可能会同时尝试发起相同的LMP事务(即LMP_SNIFF_REQ)。 17.2.

    20510

    【0x003E0x86】HCI_LE_Set_Periodic_Advertising_Parameters 命令全面解析

    Num_Response_Slots:表示在每个周期性广播子事件中可用于发送响应的时隙数量。在PAwR特性中,同步于周期性广播队列的接收设备可以在响应时隙中发送响应数据包。 2.2....因此,在实际开发中,建议参考最新的蓝牙核心规范和特定蓝牙协议栈的文档来获取最准确和详细的信息。...同时,这两个参数的值不应相同,以便控制器能够根据其他活动确定最佳的广播间隔。...这些响应插槽在广播事件中按顺序排列,每个插槽都提供了一个特定的时间窗口供扫描者发送响应。Response_Slot_Spacing 参数用于确定两个连续响应插槽之间的时间间隔。...这个时间间隔必须足够长,以确保扫描者有足够的时间来准备并发送响应,但也不能太长,以免浪费广播事件中的时间。

    13710
    领券