技术解析:锁屏绕过,三星Galaxy系列手机也能“被”呼出电话

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介:
技术解析:锁屏绕过,三星Galaxy系列手机也能“被”呼出电话

近期,由两位安全研究人员,Roberto Paleari及Aristide Fattori,发布了关于三星Galaxy手机设备安全漏洞的技术细节。据称,Galaxy手机可在锁屏状态下被未授权的第三方人员用以进行电话外呼和短信发送。

锁屏绕过概述

根据Roberto Paleari及Aristide Fattori发布的技术细节可知,攻击者可借助对手机设备的临时访问或窃取受害用户手机的方式,通过USB接入手机设备并将之连接到Linux工作平台上,最后发送指令来实现电话呼叫及短信发送。

而该方式并没用利用任何软件的漏洞,即使手机关闭了USB调试功能(ADB, Android调试桥,可帮助用户管理设备或模拟器状态)或者USB网络共享功能,也可以实现上述的电话呼叫及短信发送。

实现工作原理

对于这个漏洞,当前的核心问题是当手机通过USB连接到另外的 Linux系统时,一般情况下都可以通过Linux系统的虚拟USB串行口(主要为/dev/ttyACM0设备),来与手机设备通讯。

根据测试情况,当连接到一个 USB控制器(比如一个普通的笔记本电脑),对于三星Galaxy手机而言,此时会暴露出一个串行接口,而通过利用该接口我们可以与手机的USB modem来进行通信。

” Easy” 模式(针对旧的三星手机和固件版本)

对于旧的三星手机和固件版本,如GT-I9192(三星S4 Mini ,版本序号为I9192XXUBNB1),在将手机接入到Linux主机,确认通过接口连接到USB Modem后,即可尝试发送AT (Attention)命令,据分析,其中一些指令会被传递到基带Modem中,而其他一些指令则被用户空间应用进行处理。

而通过上述的接口来运行及传递简单的AT (Attention)命令,理论上,可让一个技术娴熟的攻击者在手机设备执行各类操作。

小百科

AT ,全称为Attention,由Hayes公司发明的,AT指令集主要使得计算机或终端可以与Modem进行通讯。通过发送AT指令来控制移动台的功能,与GSM网络业务进行交互。用户可以通过AT指令进行呼叫、短信、电话本、数据业务、传真等方面的控制。

”Hard” 模式(针对新的三星手机和固件版本)

而在近期的固件版本(例如最新版本的三星S4和三星S6)中来利用此漏洞相比之下是没那么简单的,因为最近期的固件版本中,其默认配置是,当设备连接到主机,开放給主机的只有MTP接口功能,主要用于文件传输。

但经过测试,我们发现,攻击者仍然可以通过将默认配置切换到第二USB配置,来实现与Modem通讯。因此,假设在这种情况下,攻击者在连接到Modem之前,就需要将默认配置切换到USB 配置 #2 。而这个操作可以通过PC终端来实现,而无需解锁手机设备。以下为默认配置的信息,

复制代码
$ lsusb -v
...
Bus 001 Device 007: ID 04e8:6860 Samsung Electronics Co., Ltd Galaxy (MTP)
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x04e8 Samsung Electronics Co., Ltd
  idProduct          0x6860 Galaxy (MTP)
  ...
  bNumConfigurations      2
  Configuration Descriptor:
  ...
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass         6 Imaging
      bInterfaceSubClass      1 Still Image Capture
      bInterfaceProtocol      1 Picture Transfer Protocol (PIMA 15470)
      iInterface              5 MTP
  ...
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          105
    bNumInterfaces          3
    bConfigurationValue     2
    iConfiguration          0
    bmAttributes         0xc0
      Self Powered
    MaxPower               96mA
    ...
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         2 Communications
      bInterfaceSubClass      2 Abstract (modem)
      bInterfaceProtocol      1 AT-commands (v.25ter)
      iInterface              6 CDC Abstract Control Model (ACM)
    ...
复制代码

在此次PoC中,我们开发了一个简单工具(用C语言编写的),名为usbswitcher。通过该工具,我们可将指定的三星手机设备切换到USB 配置 #2。该工具使用了 libusb 库来实现上述功能。而同样的任务,我们也可以通过使用/sys/bus/usb虚拟文件系统来完成。

我们使用的强制手机切换配置的流程为首先重置 USB设备(通过usb_reset()函数来实现),接着切换配置(通过set_configuration()函数来实现)。而有时候,工具usbswitcher的第一次执行可能不会生效,所以需最好运行两次,确保配置已被切换过来。工具usbswitcher源代码链接地址为:usbswitcher.c

测试结果

我们知道,访问Modem最明显的后果是使拨打电话和发送短信称为了可能。对于前者,即呼出电话,可以通过使用以下命令来实现:

ATD+123456;

该命令实现的效果主要是在锁屏状态下拨打电话号码123456。如以下PoC视频中介绍的一样。

演示视频

对于有些朋友在询问到,是否可以利用该漏洞来获取访问设备的权限,比如访问其通讯录、照片以及内部存储等?对于这个问题,理论上AT命令是可以被基带处理器直接进行处理的,但如我们之前提到的,AT命令在传递的过程中,可能有些AT指令会被用户空间应用解析,所以这种情况下,基带处理器无法处理指令,所以也无法直接实现上述所说的访问权限。

在这个测试中,我们观察到,S4 mini (固件版本序号为 I9192XXUBNB1) 可以支持某些AT指令,这些指令可以用来控制Android系统的设置。比如,在这其中,AT+USBDEBUG指令允许启用USB 调试功能,AT+WIFIVALUE指令可启用或关闭设备Wi-Fi等等。

在近期的手机固件版本,三星可能意识到了这种命令的相关风险,其开始引入一种基于黑名单的过滤机制(由ddexe二进制应用程序来执行),来过滤掉有威胁的命令。举个例子,在测试过程中传递AT+ UsbDebug指令时,我们可以看到以下信息为被记录到Galaxy S6设备的系统日志中,

D/DataRouter(  302): write [151] bytes of data to USB fd[9]
D/DataRouter(  302): After the usb select
D/DataRouter(  302): read usb data[len:12]
D/DataRouter(  302): read usb data message:AT+USBDEBUG
D/DataRouter(  302): Not allowed AT cmd!!#不允许执行AT指令
D/DataRouter(  302): Before the usb select

影响范围

目前,就已经测试过且发现可进行前文所述操作的设备类型包含如下:

复制代码
SM-G920F, 版本序号:G920FXXU2COH2 (Galaxy S6)

SM-N9005, 版本序号:N9005XXUGBOK6 (Galaxy Note 3)

GT-I9192, 版本序号:9192XXUBNB1 (Galaxy S4 mini)

GT-I9195, 版本序号:I9195XXUCOL1 (Galaxy S4 mini LTE)

GT-I9505, 版本序号:I9505XXUHOJ2 (Galaxy S4)
复制代码

*参考来源GitHub,Softpedia


本文转自 K1two2 博客园博客,原文链接:http://www.cnblogs.com/k1two2/p/5399224.html  ,如需转载请自行联系原作者

相关文章
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
AI技术深度解析:从基础到应用的全面介绍
人工智能(AI)技术的迅猛发展,正在深刻改变着我们的生活和工作方式。从自然语言处理(NLP)到机器学习,从神经网络到大型语言模型(LLM),AI技术的每一次进步都带来了前所未有的机遇和挑战。本文将从背景、历史、业务场景、Python代码示例、流程图以及如何上手等多个方面,对AI技术中的关键组件进行深度解析,为读者呈现一个全面而深入的AI技术世界。
51 10
|
11天前
|
机器学习/深度学习 人工智能 自然语言处理
秒级响应 + 99.9%准确率:法律行业文本比对技术解析
本工具基于先进AI技术,采用自然语言处理和语义匹配算法,支持PDF、Word等格式,实现法律文本的智能化比对。具备高精度语义匹配、多格式兼容、高性能架构及智能化标注与可视化等特点,有效解决文本复杂性和法规更新难题,提升法律行业工作效率。
|
8天前
|
数据采集 存储 JavaScript
网页爬虫技术全解析:从基础到实战
在信息爆炸的时代,网页爬虫作为数据采集的重要工具,已成为数据科学家、研究人员和开发者不可或缺的技术。本文全面解析网页爬虫的基础概念、工作原理、技术栈与工具,以及实战案例,探讨其合法性与道德问题,分享爬虫设计与实现的详细步骤,介绍优化与维护的方法,应对反爬虫机制、动态内容加载等挑战,旨在帮助读者深入理解并合理运用网页爬虫技术。
|
14天前
|
机器学习/深度学习 自然语言处理 监控
智能客服系统集成技术解析和价值点梳理
在 2024 年的智能客服系统领域,合力亿捷等服务商凭借其卓越的技术实力引领潮流,它们均积极应用最新的大模型技术,推动智能客服的进步。
49 7
|
20天前
|
负载均衡 网络协议 算法
Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式
本文探讨了Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式,以及软件负载均衡器、云服务负载均衡、容器编排工具等实现手段,强调两者结合的重要性及面临挑战的应对措施。
47 3
|
23天前
|
网络协议 网络性能优化 数据处理
深入解析:TCP与UDP的核心技术差异
在网络通信的世界里,TCP(传输控制协议)和UDP(用户数据报协议)是两种核心的传输层协议,它们在确保数据传输的可靠性、效率和实时性方面扮演着不同的角色。本文将深入探讨这两种协议的技术差异,并探讨它们在不同应用场景下的适用性。
61 4
|
23天前
|
Kubernetes Java 微服务
微服务上下线动态感知实现的技术解析
随着微服务架构的广泛应用,服务的动态管理和监控变得尤为重要。在微服务架构中,服务的上下线是一个常见的操作,如何实时感知这些变化,确保系统的稳定性和可靠性,成为了一个关键技术挑战。本文将深入探讨微服务上下线动态感知的实现方式,从技术基础、场景案例、解决思路和底层原理等多个维度进行阐述,并分别使用Java和Python进行演示介绍。
51 4
|
22天前
|
安全 持续交付 Docker
深入理解并实践容器化技术——Docker 深度解析
深入理解并实践容器化技术——Docker 深度解析
43 2
|
22天前
|
供应链 算法 安全
深度解析区块链技术的分布式共识机制
深度解析区块链技术的分布式共识机制
45 0
|
22天前
|
存储 供应链 算法
深入解析区块链技术的核心原理与应用前景
深入解析区块链技术的核心原理与应用前景
46 0

推荐镜像

更多
下一篇
DataWorks