CN106791168A - 移动终端信息保护方法、装置和移动终端 - Google Patents
移动终端信息保护方法、装置和移动终端 Download PDFInfo
- Publication number
- CN106791168A CN106791168A CN201710025477.9A CN201710025477A CN106791168A CN 106791168 A CN106791168 A CN 106791168A CN 201710025477 A CN201710025477 A CN 201710025477A CN 106791168 A CN106791168 A CN 106791168A
- Authority
- CN
- China
- Prior art keywords
- application
- identity
- information
- caller
- mobile terminal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72448—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
- H04M1/72463—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions to restrict the functionality of the device
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephone Function (AREA)
Abstract
本发明提供一种移动终端信息保护方法和装置,监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为,***保护模式下,配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问;当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口的调用者身份信息;依据调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。该方法和装置有效避免不法应用偷偷截屏等操作,从而减少信息泄露和资金被盗风险,可以有效提高***安全性。此外还提供了一种移动终端。
Description
技术领域
本发明涉及移动终端安全技术领域,具体而言,本发明涉及一种移动终端信息保护方法、装置和移动终端。
背景技术
一些移动终端出于安全考虑,设置了相应的***保护模式,以保护用户在网上交易、网上支付、银行查询等等场合的安全。例如,360手机的财产隔离***,该***一方面通过内置安全应用商店的方式来防止盗取木马、仿冒应用的入侵,从源头上保证了应用的来源安全;另一方面还通过构建专门网络通道,对账户密码等数据进行加密传输,确保数据在传输过程中的安全。同时,还将金融理财等数据进行***隔离,禁止恶意应用非法读取,从根本上保障了用户支付环境的安全。
传统的移动终端,如果***保护模式下被用户无意间安装了不法应用,如果不法应用对支付相关、理财相关和银行相关的等等应用的个人信息页面偷偷进行截屏,则网上交易时、网上支付时、银行查询时等等情况下都会存在信息泄露甚至资金被盗的风险,安全性有待提高。
发明内容
本发明的目的旨在至少能解决上述的技术缺陷之一,特别是安全性较低的技术缺陷。
本发明提供一种移动终端信息保护方法,包括如下步骤:
监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为,***保护模式下,配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问;
当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口的调用者身份信息;
依据所述调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。
在其中一个实施例中,所述预定应用包括支付相关的应用、理财相关的应用和银行相关的应用中的至少其中一种。
在其中一个实施例中,所述运行资源包括该应用程序本身、该应用配置数据和该应用用户数据其中至少一种,所述安全空间包括存储空间。
在其中一个实施例中,所述运行资源包括运行保护策略,所述安全空间包括存储空间及其相应的运行保护策略配置环境。
在其中一个实施例中,所述屏幕捕捉接口用于截屏或录屏。
在其中一个实施例中,所述***为安卓***,所述屏幕捕捉接口包括adb shellscreencap命令或screenshot()方法。
在其中一个实施例中,所述调用者身份信息根据登录***的所述普通用户账号而确定;当所述普通用户账号为预定义的非法用户账户时,判定所述普通用户账号为非法身份,否则判定为合法身份。
在其中一个实施例中,所述***为安卓***,所述调用者身份信息包括所述普通用户账号的用户身份证明UID。
在其中一个实施例中,所述***为安卓***,依据所述调用者身份信息判断调用者身份是否合法的过程包括:通过setScreenCaptureDisabled()方法判断所述普通用户账号的用户身份证明UID是否是非法身份的用户身份证明UID并在确定后拒绝捕捉屏幕。
在其中一个实施例中,所述调用者身份信息根据调用行为的实施者进程所属应用程序而确定。
在其中一个实施例中,所述***为安卓***,所述调用者身份信息包括调用应用的包名或调用应用的用户身份证明UID;当调用应用的包名为预定义的非法包名或调用应用的用户身份证明UID为预定义的非法用户身份证明UID时,判定该调用应用的包名或调用应用的用户身份证明UID为非法身份,否则判定为合法身份。
在其中一个实施例中,所述获取调用屏幕捕捉接口的调用者身份信息的过程包括:
获取调用应用的进程识别号PID,然后通过所述调用应用的进程识别号PID获取调用应用的包名或调用应用的用户身份证明UID。
在其中一个实施例中,通过getCallingPid()方法获取所述调用应用的进程识别号PID。
在其中一个实施例中,依据所述调用者身份信息判断调用者身份是否合法的过程包括:通过预建的白名单或黑名单来判断所述调用应用是否为合法身份或非法身份的应用。
在其中一个实施例中,所述白名单中包含有***应用。
在其中一个实施例中,所述***为安卓***,将用户身份证明UID为1000的应用识别为***应用列入白名单。
在其中一个实施例中,所述白名单或黑名单中的信息根据服务器的更新信息而更新。
在其中一个实施例中,若根据历史记录确定所述调用应用被拒绝捕捉屏幕的次数达到预设阈值,则发出警示信息。
本发明公开一种移动终端信息保护装置,包括:
监听模块,用于监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为,***保护模式下,配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问;
获取模块,用于当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口调用者身份信息;
处理模块,依据所述调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。
在其中一个实施例中,所述预定应用包括支付相关的应用、理财相关的应用和银行相关的应用中的至少其中一种。
在其中一个实施例中,所述运行资源包括该应用程序本身、该应用配置数据和该应用用户数据其中至少一种,所述安全空间包括存储空间。
在其中一个实施例中,所述运行资源包括运行保护策略,所述安全空间包括存储空间及其相应的运行保护策略配置环境。
在其中一个实施例中,所述屏幕捕捉接口用于截屏或录屏。
在其中一个实施例中,所述***为安卓***,所述屏幕捕捉接口包括adb shellscreencap命令或screenshot()方法。
在其中一个实施例中,所述调用者身份信息根据登录***的所述普通用户账号而确定;当所述普通用户账号为预定义的非法用户账户时,判定所述普通用户账号为非法身份,否则判定为合法身份。
在其中一个实施例中,所述***为安卓***,所述调用者身份信息包括所述普通用户账号的用户身份证明UID。
在其中一个实施例中,所述***为安卓***,所述处理模块用于:通过setScreenCaptureDisabled()方法判断所述普通用户账号的用户身份证明UID是否是非法身份的用户身份证明UID并在确定后拒绝捕捉屏幕。
在其中一个实施例中,所述调用者身份信息根据调用行为的实施者进程所属应用程序而确定。
在其中一个实施例中,所述***为安卓***,所述调用者身份信息包括调用应用的包名或调用应用的用户身份证明UID;当调用应用的包名为预定义的非法包名或调用应用的用户身份证明UID为预定义的非法用户身份证明UID时,判定该调用应用的包名或调用应用的用户身份证明UID为非法身份,否则判定为合法身份。
在其中一个实施例中,所述获取模块用于:
获取调用应用的进程识别号PID,然后通过所述调用应用的进程识别号PID获取调用应用的包名或调用应用的用户身份证明UID。
在其中一个实施例中,通过getCallingPid()方法获取所述调用应用的进程识别号PID。
在其中一个实施例中,所述处理模块通过预建的白名单或黑名单来判断所述调用应用是否为合法身份或非法身份的应用。
在其中一个实施例中,所述白名单中包含有***应用。
在其中一个实施例中,所述***为安卓***,将用户身份证明UID为1000的应用识别为***应用列入白名单。
在其中一个实施例中,所述白名单或黑名单中的信息根据服务器的更新信息而更新。
在其中一个实施例中,所述保护装置还包括警示模块;所述警示模块用于:若根据历史记录确定所述调用应用被拒绝捕捉屏幕的次数达到预设阈值,则发出警示信息。
本发明还提供一种移动终端,其包括:
触敏显示器;
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行任一实施例所述的移动终端信息保护方法。
上述的移动终端信息保护方法、装置和移动终端,监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为,***保护模式下,配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问;当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口的调用者身份信息;依据调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。当屏幕捕捉接口被调用时,通过判断调用者身份是否合法来确定是否允许调用者捕捉屏幕,能有效避免不法应用偷偷截屏等操作,从而减少信息泄露和资金被盗风险,可以有效提高***安全性。
例如,当屏幕捕捉接口被调用时,通过判断调用应用是否为合法身份或非法身份的应用(例如可以设置白名单或黑名单)来确定是否允许捕捉屏幕,可以有效避免不法应用偷偷截屏等操作;或者,可以设置所有运行于***保护模式下的应用都禁止截屏,即当屏幕捕捉接口被调用时,通过判断调用应用所处的登录状态所对应的普通用户账号的用户身份证明UID来确定是否允许捕捉屏幕(例如运行在用户身份证明UID=10的普通用户账号下的应用都禁止截屏),也能有效避免不法应用偷偷截屏等操作,从而减少信息泄露和资金被盗风险,可以有效提高***安全性。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为一个实施例的移动终端信息保护方法流程图;
图2为一个实施例的移动终端信息保护装置模块示意图;
图3示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(Personal Communications Service,个人通信***),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global Positioning System,全球定位***)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
本技术领域技术人员可以理解,这里所使用的远端网络设备,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云。在此,云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。本发明的实施例中,远端网络设备、终端设备与WNS服务器之间可通过任何通信方式实现通信,包括但不限于,基于3GPP、LTE、WIMAX的移动通信、基于TCP/IP、UDP协议的计算机网络通信以及基于蓝牙、红外传输标准的近距无线传输方式。
在以下的描述中,***是移动终端的操作***,例如安卓***、iOS移动操作***等等。在以下的描述中,以安卓***作为示例性说明,移动终端可以是手机、平板电脑等智能终端。
图1为一个实施例的移动终端信息保护方法流程图。
本发明提供一种移动终端信息保护方法,包括如下步骤:
步骤S100:监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为。其中,该***保护模式下配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问。
在***保护模式下,预定应用将会在运行保护策略下进行严格的安全检测,一切有关资金的交易操作、支付操作都会受到严格监控,并且会严密保护用户的个人信息,防止例如聊天记录、短信验证码等等的用户信息泄露。其中,预定应用包括支付相关的应用(例如微信APP、支付宝APP)、理财相关的应用(例如陆金所APP)和银行相关的应用(例如工商银行APP)中的至少其中一种,以保护用户的资金安全和信息安全,当然预定应用还可以包括所有安装于***保护模式下安全空间的应用。
这里所述的运行资源,既可以是理解为该应用程序本身,也可以理解为该应用配置数据(应用程序的配置数据),还可以理解为该应用用户数据(用户的个人数据),在这些情况下,所述的安全空间就可以理解为存储空间。当然,运行资源还可以理解为运行保护策略,所述的安全空间就可以理解为存储空间及其相应的运行保护策略配置环境,运行保护策略配置环境为:在运行该应用时启动杀毒、查杀木马等等安全保护措施的配置环境。
在传统的技术中,***保护模式可以是以常规“沙箱”隔离技术实现。但是在本实施例中,是以多用户模式来实现的。安卓***中支持多用户模式,与WINDOWS***的多用户模式类似,不同用户登陆下的***中的用户数据相互独立,相互间不受影响。因此,***处于管理员账号(通常用户身份证明UID=0)登陆时为***普通模式,***处于普通用户账号(例如用户身份证明UID=10)登录时为***保护模式,***从***普通模式进入***保护模式即相当于***从管理员模式切换到普通用户模式。由于多用户模式可以实现用户间一定的数据隔离,从而可以实现用户在保护模式下的***安全(应用安装安全、交易安全、用户信息安全),实现安全隔离,在一定情况下比“沙箱”隔离技术更加安全。
因此,该***从普通模式切换到保护模式的过程相当于该***从管理员账号切换到普通用户账号。在安卓***中,通过调用ActivityManager类中的switchUser()方法以从管理员账号切换到普通用户账号。在***处于***保护模式相对应的普通用户账号登录状态时,监听屏幕捕捉接口。
屏幕捕捉接口用于截屏或录屏,例如可以是一个命令或者一个方法。在本实施例中,屏幕捕捉接口包括adb shell screencap命令或screenshot()方法,它们都可以用于截屏。在安卓***中,adb shell screencap命令通常是在PC连接移动终端进行截屏时用到的命令,因此如果移动终端在连接PC时,通过监听adb shell screencap命令可以防止PC端对移动终端的***保护模式下的应用进行非法截屏。而screenshot()方法则通常是在移动终端一端截屏时用到的方法,这个方法属于SurfaceControl类中。
而在安卓5.0以上***,MediaProjection可以用来捕捉屏幕,具体来说可以截屏和录屏。MediaProjection由MediaProjectionManager来管理和获取。截屏需要用到ImageReader类,这个类的getSurface()方法获取到surface直接传入MediaProjection.createVirtualDisplay()方法中,此时就可以执行截取。通过ImageReader.acquireLatestImage()方法即可获取当前屏幕的Image,经过简单处理之后即可保存为Bitmap文件。录屏需要用到MediaCodec类,这个类将原始的屏幕数据编码,再通过MediaMuxer类封装为mp4格式文件保存。MediaCodec.createInputSurface()获取一个surface对象将其传入MediaProjection.createVirtualDisplay()即可获取屏幕原始多媒体数据,之后读取MediaCodec编码输出数据经过MediaMuxer封装处理为mp4即可播放,从而实现录屏。因此,屏幕捕捉接口还可以是上述ImageReader.acquireLatestImage()、MediaProjection.createVirtualDisplay()等等方法。
在以下的描述中,捕捉屏幕以截屏为例。
步骤S200:当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口的调用者身份信息。
调用者身份信息可以是调用应用信息或普通用户账号的用户身份证明UID(USERIdentifier,用户ID),而调用应用信息可以包括调用应用的包名或调用应用的用户身份证明UID。即所述调用者身份信息根据登录***的用户账户(即该普通用户账号)而确定,也可以根据调用行为的实施者进程(例如安卓***中的进程识别号PID)所属应用程序而确定。在这里,对于禁止哪些应用获取屏幕,介绍两种方案。
第一种方案:通过判断该调用应用是否为合法身份或非法身份的应用(例如可以设置白名单或黑名单)来确定是否允许捕捉屏幕。即可以通过白名单机制来允许部分应用截屏,或者通过黑名单机制来禁止部分应用截屏,或者通过白名单和黑名单相结合的方式,因而需要获取调用应用信息来判断是禁止捕捉屏幕的应用还是允许捕捉屏幕的应用。
该调用应用信息可以包括调用应用的包名(Package Name)或调用应用的用户身份证明UID。在安卓***,获取调用屏幕捕捉接口的调用应用信息的过程包括:获取调用应用的进程识别号PID(PROCESS Identifier,进程ID),然后通过调用应用的进程识别号PID获取调用应用的包名或调用应用的用户身份证明UID。Binder.getCallingPid()方法用于获取当前调用应用的进程识别号PID,因此可以通过Binder.getCallingPid()方法获取调用应用的进程识别号PID。Binder是Android中的一个类,它继承了IBinder接口,它是Android***进程间通信(IPC)方式之一,而getCallingPid()方法是Binder类下获取当前调用应用的进程识别号PID的方法。
以下提供一段通过该调用应用的进程识别号PID获取调用应用的包名实现代码:
第二种方案:可以设置所有运行于***保护模式下的应用都禁止截屏,即当屏幕捕捉接口被调用时,通过判断调用应用所处的登录状态所对应的普通用户账号的用户身份证明UID来确定是否允许捕捉屏幕(例如运行在用户身份证明UID=10的普通用户账号下的应用都禁止截屏)。因而需要获取当前***保护模式相对应的普通用户账号的用户身份证明UID,从而将该普通用户账号下安装或运行的应用全部都禁止截屏操作。登录***的用户账户的用户身份证明UID符合条件,则安装在该用户账号下的应用就是合法的调用者,否则就是非法的调用者。
获取调用屏幕捕捉接口的调用者身份信息后,执行步骤S300。
步骤S300:依据所述调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。拒绝该调用行为,可以理解为拒绝调用屏幕捕捉接口,或者拒绝执行调用的指令,或者显示提示用户的“错误”信息或“无权”信息,或者直接显示空白页面,此处不做限定。继续以截屏为例,在以下描述,通过白名单或黑名单的方式来实现上述判断调用者身份。
例如***建立一个白名单,在白名单中预先添加了***应用。由于在安卓***中***应用的用户身份证明UID都是1000,因此将用户身份证明UID为1000的应用识别为***应用列入白名单。这样,在获取调用屏幕捕捉接口的调用应用的用户身份证明UID后即可判断调用应用是否***应用。运行***应用截屏是因为***应用足够安全,本发明只是为了防止非法应用偷偷截屏行为,而不防止***应用的截屏行为,例如用户通过物理按键(例如音量下键+电源键)、下拉托盘截屏按钮和手势截屏(例如三指截屏或者指关节截屏)等等通过用户手动操作实现的截屏,这些截屏方式最终都需要通过SystemUI实现截屏,而SystemUI属于***应用,其用户身份证明UID为1000。当然,白名单中可以添加***设计方认为安全的第三方应用,还可以由用户自行添加其认为安全的第三方应用,从而在这些用户添加的第三方应用进行截屏时放行。黑名单还可以连接服务器进行数据更新,即黑名单的信息可以根据服务器的更新信息而更新。这些列入白名单的应用就是具有合法身份的调用者。
又例如***建立一个黑名单,在黑名单中添加***设计方认为不安全的第三方应用,还可以由用户自行添加其认为不安全的第三方应用,从而在这些第三方应用请求截屏时拒绝截屏,进一步的,***还可以发出用于提示用户的提示信息。黑名单还可以连接服务器进行数据更新,即黑名单的信息也可以根据服务器的更新信息而更新。这些列入黑名单的应用就是非法身份的调用者。进一步的,如果某些第三方应用经常请求截屏,则可以向用户发出警示信息,例如建议用户从***保护模式下的安全空间卸载该应用。因此,若根据历史记录确定调用应用被拒绝捕捉屏幕的次数达到预设阈值(例如10次),则发出警示信息。
因此,依据所述调用者身份信息判断调用者身份是否合法的过程可以是:通过预建的白名单或黑名单来判断所述调用应用是否是合法身份或非法身份的应用。该调用者身份信息包括调用应用的包名或调用应用的用户身份证明UID。当该调用应用的包名为预定义的非法包名或调用应用的用户身份证明UID为预定义的非法用户身份证明UID时,判定该调用应用的包名或调用应用的用户身份证明UID为非法身份,否则判定为合法身份。例如,预定义的非法包名或预定义的非法用户身份证明UID可以是上述的设计方认为不安全的第三方应用的包名或用户身份证明UID,预先列入黑名单中,且黑名单可以连接服务器进行数据更新。
又例如,可以设置所有运行于***保护模式下的应用都禁止截屏,即当屏幕捕捉接口被调用时,通过判断调用应用所处的登录状态所对应的普通用户账号的用户身份证明UID来确定是否允许捕捉屏幕(例如运行在用户身份证明UID=10的普通用户账号下的应用都禁止截屏)。
***为安卓***时,可以通过setScreenCaptureDisabled()方法判断普通用户账号的用户身份证明UID是否是被禁止捕捉屏幕的用户身份证明UID并在确定后拒绝捕捉屏幕。例如当前***保护模式所对应的该普通用户账号的用户身份证明UID=10,则可以通过public void setScreenCaptureDisabled(int userId,boolean disabled)来实现***保护模式下的全部应用禁止截屏。其中括号内的第一个参数userId为参数域的ID,第二个参数disabled是状态。可以在该方法中设置userId=10的应用都禁止截屏。
因此,依据所述调用者身份信息判断调用者身份是否合法的过程还可以是:通过setScreenCaptureDisabled()方法判断所述普通用户账号的用户身份证明UID是否是非法身份的用户身份证明UID并在确定后拒绝捕捉屏幕。该调用者身份信息可以根据登录***的该普通用户账号而确定,当该普通用户账号为预定义的非法用户账户时,判定该普通用户账号为非法身份,否则判定为合法身份。
至此,通过对***保护模式下的应用进行截屏监听和把关,可以避免某些非法应用偷偷截屏,提高了***安全性。
图2为一个实施例的移动终端信息保护装置模块示意图。
与上述的移动终端信息保护方法相对应,本发明还提供一种移动终端信息保护装置,其包括:监听模块100、获取模块200和处理模块300。
监听模块100用于监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为。其中,该***保护模式下配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问;获取模块200用于当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口的调用者身份信息;处理模块300用于依据所述调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。
在***处于***保护模式相对应的普通用户账号登录状态时,监听模块100监听屏幕捕捉接口。其中,该***保护模式配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问。
在***保护模式下,预定应用将会在运行保护策略下进行严格的安全检测,一切有关资金的交易操作、支付操作都会受到严格监控,并且会严密保护用户的个人信息,防止例如聊天记录、短信验证码等等的用户信息泄露。其中,预定应用包括支付相关的应用(例如微信APP、支付宝APP)、理财相关的应用(例如陆金所APP)和银行相关的应用(例如工商银行APP)中的至少其中一种,以保护用户的资金安全和信息安全,当然预定应用还可以包括所有安装于***保护模式下安全空间的应用。
这里所述的运行资源,既可以是理解为该应用程序本身,也可以理解为该应用配置数据(应用程序的配置数据),还可以理解为该应用用户数据(用户的个人数据),在这些情况下,所述的安全空间就可以理解为存储空间。当然,运行资源还可以理解为运行保护策略,所述的安全空间就可以理解为存储空间及其相应的运行保护策略配置环境,运行保护策略配置环境为:在运行该应用时启动杀毒、查杀木马等等安全保护措施的配置环境。
在传统的技术中,***保护模式可以是以常规“沙箱”隔离技术实现。但是在本实施例中,是以多用户模式来实现的。安卓***中支持多用户模式,与WINDOWS***的多用户模式类似,不同用户登陆下的***中的用户数据相互独立,相互间不受影响。因此,***处于管理员账号(通常用户身份证明UID=0)登陆时为***普通模式,***处于普通用户账号(例如用户身份证明UID=10)登录时为***保护模式,***从***普通模式进入***保护模式即相当于***从管理员模式切换到普通用户模式。由于多用户模式可以实现用户间一定的数据隔离,从而可以实现用户在保护模式下的***安全(应用安装安全、交易安全、用户信息安全),实现安全隔离,在一定情况下比“沙箱”隔离技术更加安全。
因此,该***从普通模式切换到保护模式的过程相当于该***从管理员账号切换到普通用户账号。在安卓***中,通过调用ActivityManager类中的switchUser()方法以从管理员账号切换到普通用户账号。在***处于***保护模式相对应的普通用户账号登录状态时,监听模块100则监听屏幕捕捉接口。
屏幕捕捉接口用于截屏或录屏,例如可以是一个命令或者一个方法。在本实施例中,屏幕捕捉接口包括adb shell screencap命令或screenshot()方法,它们都可以用于截屏。在安卓***中,adb shell screencap命令通常是在PC连接移动终端进行截屏时用到的命令,因此如果移动终端在连接PC时,通过监听adb shell screencap命令可以防止PC端对移动终端的***保护模式下的应用进行非法截屏。而screenshot()方法则通常是在移动终端一端截屏时用到的方法,这个方法属于SurfaceControl类中。
而在安卓5.0以上***,MediaProjection可以用来捕捉屏幕,具体来说可以截屏和录屏。MediaProjection由MediaProjectionManager来管理和获取。截屏需要用到ImageReader类,这个类的getSurface()方法获取到surface直接传入MediaProjection.createVirtualDisplay()方法中,此时就可以执行截取。通过ImageReader.acquireLatestImage()方法即可获取当前屏幕的Image,经过简单处理之后即可保存为Bitmap文件。录屏需要用到MediaCodec类,这个类将原始的屏幕数据编码,再通过MediaMuxer类封装为mp4格式文件保存。MediaCodec.createInputSurface()获取一个surface对象将其传入MediaProjection.createVirtualDisplay()即可获取屏幕原始多媒体数据,之后读取MediaCodec编码输出数据经过MediaMuxer封装处理为mp4即可播放,从而实现录屏。因此,屏幕捕捉接口还可以是上述ImageReader.acquireLatestImage()、MediaProjection.createVirtualDisplay()等等方法。
在以下的描述中,捕捉屏幕以截屏为例。
当屏幕捕捉接口被调用时,获取模块200获取调用屏幕捕捉接口的调用者身份信息。
调用者身份信息可以是调用应用信息或普通用户账号的用户身份证明UID(USERIdentifier,用户ID),而调用应用信息可以包括调用应用的包名或调用应用的用户身份证明UID。即所述调用者身份信息根据登录***的用户账户(即该普通用户账号)而确定,也可以根据调用行为的实施者进程(例如安卓***中的进程识别号PID)所属应用程序而确定。在这里,对于禁止哪些应用获取屏幕,介绍两种方案。
第一种方案:处理模块300通过判断该调用应用是否为合法身份或非法身份的应用(例如可以设置白名单或黑名单)来确定是否允许捕捉屏幕。即处理模块300可以通过白名单机制来允许部分应用截屏,或者通过黑名单机制来禁止部分应用截屏,或者通过白名单和黑名单相结合的方式,因而需要获取调用应用信息来判断是禁止捕捉屏幕的应用还是允许捕捉屏幕的应用。
该调用应用信息可以包括调用应用的包名(Package Name)或调用应用的用户身份证明UID。在安卓***,获取模块200获取调用屏幕捕捉接口的调用应用信息的过程包括:获取调用应用的进程识别号PID(PROCESS Identifier,进程ID),然后通过调用应用的进程识别号PID获取调用应用的包名或调用应用的用户身份证明UID。Binder.getCallingPid()方法用于获取当前调用应用的进程识别号PID,因此获取模块200可以通过Binder.getCalling进程识别号PID()方法获取调用应用的进程识别号PID。Binder是Android中的一个类,它继承了IBinder接口,它是Android***进程间通信(IPC)方式之一,而getCallingPid()方法是Binder类下获取当前调用应用的进程识别号PID的方法。
以下提供一段通过该调用应用的进程识别号PID获取调用应用的包名实现代码:
第二种方案:处理模块300可以设置所有运行于***保护模式下的应用都禁止截屏,即当屏幕捕捉接口被调用时,通过判断调用应用所处的登录状态所对应的普通用户账号的用户身份证明UID来确定是否允许捕捉屏幕(例如运行在用户身份证明UID=10的普通用户账号下的应用都禁止截屏)。因而获取模块200需要获取当前***保护模式相对应的普通用户账号的用户身份证明UID,从而处理模块300可以将该普通用户账号下安装或运行的应用全部都禁止截屏操作。登录***的用户账户的用户身份证明UID符合条件,则安装在该用户账号下的应用就是合法的调用者,否则就是非法的调用者。
获取模块200获取调用应用信息或普通用户账号的用户身份证明UID后,处理模块300依据所述调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。拒绝该调用行为,可以理解为拒绝调用屏幕捕捉接口,或者拒绝执行调用的指令,或者显示提示用户的“错误”信息或“无权”信息,或者直接显示空白页面,此处不做限定。继续以截屏为例,在以下描述,通过白名单或黑名单的方式来实现上述判断调用者身份。
例如***建立一个白名单,在白名单中预先添加了***应用。由于在安卓***中***应用的用户身份证明UID都是1000,因此将用户身份证明UID为1000的应用识别为***应用列入白名单。这样,获取模块200在获取调用屏幕捕捉接口的调用应用的用户身份证明UID后,处理模块300即可判断调用应用是否***应用。运行***应用截屏是因为***应用足够安全,本发明只是为了防止非法应用偷偷截屏行为,而不防止***应用的截屏行为,例如用户通过物理按键(例如音量下键+电源键)、下拉托盘截屏按钮和手势截屏(例如三指截屏或者指关节截屏)等等通过用户手动操作实现的截屏,这些截屏方式最终都需要通过SystemUI实现截屏,而SystemUI属于***应用,其用户身份证明UID为1000。当然,白名单中可以添加***设计方认为安全的第三方应用,还可以由用户自行添加其认为安全的第三方应用,从而在这些用户添加的第三方应用进行截屏时放行。黑名单还可以连接服务器进行数据更新,即黑名单的信息可以根据服务器的更新信息而更新。这些列入白名单的应用就是具有合法身份的调用者。
又例如***建立一个黑名单,在黑名单中添加***设计方认为不安全的第三方应用,还可以由用户自行添加其认为不安全的第三方应用,从而处理模块300在这些第三方应用请求截屏时拒绝截屏,进一步的,***还可以发出用于提示用户的提示信息。黑名单还可以连接服务器进行数据更新,即黑名单的信息也可以根据服务器的更新信息而更新。这些列入黑名单的应用就是非法身份的调用者。进一步的,移动终端信息保护装置还可以包括警示模块(图未示出)。如果某些第三方应用经常请求截屏,则警示模块可以向用户发出警示信息,例如建议用户从***保护模式下的安全空间卸载该应用。因此,若根据历史记录确定调用应用被拒绝捕捉屏幕的次数达到预设阈值(例如10次),警示模块则发出警示信息。
因此,依据所述调用者身份信息判断调用者身份是否合法的过程可以是:通过预建的白名单或黑名单来判断所述调用应用是否是合法身份或非法身份的应用。该调用者身份信息包括调用应用的包名或调用应用的用户身份证明UID。当该调用应用的包名为预定义的非法包名或调用应用的用户身份证明UID为预定义的非法用户身份证明UID时,判定该调用应用的包名或调用应用的用户身份证明UID为非法身份,否则判定为合法身份。例如,预定义的非法包名或预定义的非法用户身份证明UID可以是上述的设计方认为不安全的第三方应用的包名或用户身份证明UID,预先列入黑名单中,且黑名单可以连接服务器进行数据更新。
又例如,处理模块300可以设置所有运行于***保护模式下的应用都禁止截屏,即当屏幕捕捉接口被调用时,通过判断调用应用所处的登录状态所对应的普通用户账号的用户身份证明UID来确定是否允许捕捉屏幕(例如运行在用户身份证明UID=10的普通用户账号下的应用都禁止截屏)。
***为安卓***时,处理模块300可以通过setScreenCaptureDisabled()方法判断普通用户账号的用户身份证明UID是否是被禁止捕捉屏幕的用户身份证明UID并在确定后拒绝捕捉屏幕。例如当前***保护模式所对应的该普通用户账号的用户身份证明UID=10,则可以通过public void setScreenCaptureDisabled(int userId,booleandisabled)来实现***保护模式下的全部应用禁止截屏。其中括号内的第一个参数userId为参数域的ID,第二个参数disabled是状态。可以在该方法中设置userId=10的应用都禁止截屏。
因此,依据所述调用者身份信息判断调用者身份是否合法的过程还可以是:通过setScreenCaptureDisabled()方法判断所述普通用户账号的用户身份证明UID是否是非法身份的用户身份证明UID并在确定后拒绝捕捉屏幕。该调用者身份信息可以根据登录***的该普通用户账号而确定,当该普通用户账号为预定义的非法用户账户时,判定该普通用户账号为非法身份,否则判定为合法身份。
本发明实施例还提供了移动终端,如图3所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、PDA(Personal DigitalAssistant,个人数字助理)、POS(Point ofSales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:
图3示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图3,手机包括:射频(Radio Frequency,RF)电路1510、存储器1520、输入单元1530、显示单元1540、传感器1550、音频电路1560、无线保真(wireless fidelity,Wi-Fi)模块1570、处理器1580、以及电源1590等部件。本领域技术人员可以理解,图3中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图3对手机的各个构成部件进行具体的介绍:
RF电路1510可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1580处理;另外,将设计上行的数据发送给基站。通常,RF电路1510包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路1510还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯***(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器1520可用于存储软件程序以及模块,处理器1580通过运行存储在存储器1520的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元1530可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1530可包括触控面板1531以及其他输入设备1532。触控面板1531,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1531上或在触控面板1531附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1531可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1580,并能接收处理器1580发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1531。除了触控面板1531,输入单元1530还可以包括其他输入设备1532。具体地,其他输入设备1532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1540可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1540可包括显示面板1541,可选的,可以采用液晶显示器(LiquidCrystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板1541。进一步的,触控面板1531可覆盖显示面板1541,当触控面板1531检测到在其上或附近的触摸操作后,传送给处理器1580以确定触摸事件的类型,随后处理器1580根据触摸事件的类型在显示面板1541上提供相应的视觉输出。虽然在图3中,触控面板1531与显示面板1541是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1531与显示面板1541集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器1550,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1541的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1541和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1560、扬声器1561,传声器1562可提供用户与手机之间的音频接口。音频电路1560可将接收到的音频数据转换后的电信号,传输到扬声器1561,由扬声器1561转换为声音信号输出;另一方面,传声器1562将收集的声音信号转换为电信号,由音频电路1560接收后转换为音频数据,再将音频数据输出处理器1580处理后,经RF电路1510以发送给比如另一手机,或者将音频数据输出至存储器1520以便进一步处理。
Wi-Fi属于短距离无线传输技术,手机通过Wi-Fi模块1570可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图3示出了Wi-Fi模块1570,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1580是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1520内的软件程序和/或模块,以及调用存储在存储器1520内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1580可包括一个或多个处理单元;优选的,处理器1580可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1580中。
手机还包括给各个部件供电的电源1590(比如电池),优选的,电源可以通过电源管理***与处理器1580逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本发明实施例中,该终端所包括的处理器1580还具有以下功能:监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为,***保护模式下,配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问;当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口的调用者身份信息;依据调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。也即处理器1580具备执行上述的移动终端信息保护方法,在此不再赘述。
上述的移动终端信息保护方法、装置和移动终端,监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为,***保护模式下,配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问;当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口的调用者身份信息;依据调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。当屏幕捕捉接口被调用时,通过判断调用者身份是否合法来确定是否允许调用者捕捉屏幕,能有效避免不法应用偷偷截屏等操作,从而减少信息泄露和资金被盗风险,可以有效提高***安全性。
例如,当屏幕捕捉接口被调用时,通过判断调用应用是否为合法身份或非法身份的应用(例如可以设置白名单或黑名单)来确定是否允许捕捉屏幕,可以有效避免不法应用偷偷截屏等操作;或者,可以设置所有运行于***保护模式下的应用都禁止截屏,即当屏幕捕捉接口被调用时,通过判断调用应用所处的登录状态所对应的普通用户账号的UID来确定是否允许捕捉屏幕(例如运行在UID=10的普通用户账号下的应用都禁止截屏),也能有效避免不法应用偷偷截屏等操作,从而减少信息泄露和资金被盗风险,可以有效提高***安全性。
本发明公开了如下方案:
A1、一种移动终端信息保护方法,包括如下步骤:
监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为,***保护模式下,配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问;
当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口的调用者身份信息;
依据所述调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。
A2、根据A1所述的移动终端信息保护方法,所述预定应用包括支付相关的应用、理财相关的应用和银行相关的应用中的至少其中一种。
A3、根据A1所述的移动终端信息保护方法,所述运行资源包括该应用程序本身、该应用配置数据和该应用用户数据其中至少一种,所述安全空间包括存储空间。
A4、根据A1所述的移动终端信息保护方法,所述运行资源包括运行保护策略,所述安全空间包括存储空间及其相应的运行保护策略配置环境。
A5、根据A1所述的移动终端信息保护方法,所述屏幕捕捉接口用于截屏或录屏。
A6、根据A1所述的移动终端信息保护方法,所述***为安卓***,所述屏幕捕捉接口包括adb shell screencap命令或screenshot()方法。
A7、根据A1所述的移动终端信息保护方法,所述调用者身份信息根据登录***的所述普通用户账号而确定;当所述普通用户账号为预定义的非法用户账户时,判定所述普通用户账号为非法身份,否则判定为合法身份。
A8、根据A7所述的移动终端信息保护方法,所述***为安卓***,所述调用者身份信息包括所述普通用户账号的用户身份证明UID。
A9、根据A8所述的移动终端信息保护方法,所述***为安卓***,依据所述调用者身份信息判断调用者身份是否合法的过程包括:通过setScreenCaptureDisabled()方法判断所述普通用户账号的用户身份证明UID是否是非法身份的用户身份证明UID并在确定后拒绝捕捉屏幕。
A10、根据A1所述的移动终端信息保护方法,所述调用者身份信息根据调用行为的实施者进程所属应用程序而确定。
A11、根据A10所述的移动终端信息保护方法,所述***为安卓***,所述调用者身份信息包括调用应用的包名或调用应用的用户身份证明UID;当调用应用的包名为预定义的非法包名或调用应用的用户身份证明UID为预定义的非法用户身份证明UID时,判定该调用应用的包名或调用应用的用户身份证明UID为非法身份,否则判定为合法身份。
A12、根据A11所述的移动终端信息保护方法,所述获取调用屏幕捕捉接口的调用者身份信息的过程包括:
获取调用应用的进程识别号PID,然后通过所述调用应用的进程识别号PID获取调用应用的包名或调用应用的用户身份证明UID。
A13、根据A12所述的移动终端信息保护方法,通过getCallingPid()方法获取所述调用应用的进程识别号PID。
A14、根据A1所述的移动终端信息保护方法,依据所述调用者身份信息判断调用者身份是否合法的过程包括:通过预建的白名单或黑名单来判断所述调用应用是否为合法身份或非法身份的应用。
A15、根据A14所述的移动终端信息保护方法,所述白名单中包含有***应用。
A16、根据A15所述的移动终端信息保护方法,所述***为安卓***,将用户身份证明UID为1000的应用识别为***应用列入白名单。
A17、根据A14所述的移动终端信息保护方法,所述白名单或黑名单中的信息根据服务器的更新信息而更新。
A18、根据A14所述的移动终端信息保护方法,若根据历史记录确定所述调用应用被拒绝捕捉屏幕的次数达到预设阈值,则发出警示信息。
B19、一种移动终端信息保护装置,包括:
监听模块,用于监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为,***保护模式下,配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问;
获取模块,用于当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口调用者身份信息;
处理模块,依据所述调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。
B20、根据B19所述的移动终端信息保护装置,所述预定应用包括支付相关的应用、理财相关的应用和银行相关的应用中的至少其中一种。
B21、根据B19所述的移动终端信息保护装置,所述运行资源包括该应用程序本身、该应用配置数据和该应用用户数据其中至少一种,所述安全空间包括存储空间。
B22、根据B19所述的移动终端信息保护装置,所述运行资源包括运行保护策略,所述安全空间包括存储空间及其相应的运行保护策略配置环境。
B23、根据B19所述的移动终端信息保护装置,所述屏幕捕捉接口用于截屏或录屏。
B24、根据B19所述的移动终端信息保护装置,所述***为安卓***,所述屏幕捕捉接口包括adb shell screencap命令或screenshot()方法。
B25、根据B19所述的移动终端信息保护装置,所述调用者身份信息根据登录***的所述普通用户账号而确定;当所述普通用户账号为预定义的非法用户账户时,判定所述普通用户账号为非法身份,否则判定为合法身份。
B26、根据B25所述的移动终端信息保护装置,所述***为安卓***,所述调用者身份信息包括所述普通用户账号的用户身份证明UID。
B27、根据B26所述的移动终端信息保护装置,所述***为安卓***,所述处理模块用于:通过setScreenCaptureDisabled()方法判断所述普通用户账号的用户身份证明UID是否是非法身份的用户身份证明UID并在确定后拒绝捕捉屏幕。
B28、根据B19所述的移动终端信息保护装置,所述调用者身份信息根据调用行为的实施者进程所属应用程序而确定。
B29、根据B18所述的移动终端信息保护装置,所述***为安卓***,所述调用者身份信息包括调用应用的包名或调用应用的用户身份证明UID;当调用应用的包名为预定义的非法包名或调用应用的用户身份证明UID为预定义的非法用户身份证明UID时,判定该调用应用的包名或调用应用的用户身份证明UID为非法身份,否则判定为合法身份。
B30、根据B29所述的移动终端信息保护装置,所述获取模块用于:
获取调用应用的进程识别号PID,然后通过所述调用应用的进程识别号PID获取调用应用的包名或调用应用的用户身份证明UID。
B31、根据B30所述的移动终端信息保护装置,通过getCallingPid()方法获取所述调用应用的进程识别号PID。
B32、根据B19所述的移动终端信息保护装置,所述处理模块通过预建的白名单或黑名单来判断所述调用应用是否为合法身份或非法身份的应用。
B33、根据B32所述的移动终端信息保护装置,所述白名单中包含有***应用。
B34、根据B33所述的移动终端信息保护装置,所述***为安卓***,将用户身份证明UID为1000的应用识别为***应用列入白名单。
B35、根据B32所述的移动终端信息保护装置,所述白名单或黑名单中的信息根据服务器的更新信息而更新。
B36、根据B32所述的移动终端信息保护装置,所述保护装置还包括警示模块;所述警示模块用于:若根据历史记录确定所述调用应用被拒绝捕捉屏幕的次数达到预设阈值,则发出警示信息。
C37、一种移动终端,其包括:
触敏显示器;
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如A1至A18任一所述的移动终端信息保护方法。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种移动终端信息保护方法,其特征在于,包括如下步骤:
监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为,***保护模式下,配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问;
当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口的调用者身份信息;
依据所述调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。
2.根据权利要求1所述的移动终端信息保护方法,其特征在于,所述预定应用包括支付相关的应用、理财相关的应用和银行相关的应用中的至少其中一种。
3.根据权利要求1所述的移动终端信息保护方法,其特征在于,所述运行资源包括该应用程序本身、该应用配置数据和该应用用户数据其中至少一种,所述安全空间包括存储空间。
4.根据权利要求1所述的移动终端信息保护方法,其特征在于,所述运行资源包括运行保护策略,所述安全空间包括存储空间及其相应的运行保护策略配置环境。
5.根据权利要求1所述的移动终端信息保护方法,其特征在于,所述屏幕捕捉接口用于截屏或录屏。
6.根据权利要求1所述的移动终端信息保护方法,其特征在于,所述***为安卓***,所述屏幕捕捉接口包括adb shell screencap命令或screenshot()方法。
7.根据权利要求1所述的移动终端信息保护方法,其特征在于,所述调用者身份信息根据登录***的所述普通用户账号而确定;当所述普通用户账号为预定义的非法用户账户时,判定所述普通用户账号为非法身份,否则判定为合法身份。
8.根据权利要求7所述的移动终端信息保护方法,其特征在于,所述***为安卓***,所述调用者身份信息包括所述普通用户账号的用户身份证明UID。
9.一种移动终端信息保护装置,其特征在于,包括:
监听模块,用于监听在以普通用户账户身份登录的***保护模式下触发的对屏幕捕捉接口的调用行为,***保护模式下,配置有用于为预定应用的运行提供运行资源的安全空间,该安全空间在***普通模式下不可访问;
获取模块,用于当屏幕捕捉接口被调用时,获取调用屏幕捕捉接口调用者身份信息;
处理模块,依据所述调用者身份信息判断调用者身份是否合法,当调用者为非法身份时,拒绝该调用行为从而禁止该调用者捕捉屏幕。
10.一种移动终端,其特征在于,其包括:
触敏显示器;
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1至8任一所述的移动终端信息保护方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710025477.9A CN106791168A (zh) | 2017-01-13 | 2017-01-13 | 移动终端信息保护方法、装置和移动终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710025477.9A CN106791168A (zh) | 2017-01-13 | 2017-01-13 | 移动终端信息保护方法、装置和移动终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106791168A true CN106791168A (zh) | 2017-05-31 |
Family
ID=58946715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710025477.9A Pending CN106791168A (zh) | 2017-01-13 | 2017-01-13 | 移动终端信息保护方法、装置和移动终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106791168A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107682892A (zh) * | 2017-09-30 | 2018-02-09 | 广东欧珀移动通信有限公司 | 流量控制方法和装置、计算机设备、计算机可读存储介质 |
CN108520186A (zh) * | 2018-03-09 | 2018-09-11 | 广东欧珀移动通信有限公司 | 录屏方法、移动终端及计算机可读存储介质 |
CN110414224A (zh) * | 2019-07-15 | 2019-11-05 | 维沃移动通信有限公司 | 一种数据处理方法及移动终端 |
CN110413366A (zh) * | 2019-07-30 | 2019-11-05 | 深圳市乘法信息技术有限公司 | 一种基于区块链的截屏方法、装置、设备及存储介质 |
CN110430315A (zh) * | 2019-06-20 | 2019-11-08 | 努比亚技术有限公司 | 一种安全控制方法、终端及计算机可读存储介质 |
CN111340808A (zh) * | 2020-05-20 | 2020-06-26 | 北京小米移动软件有限公司 | 屏幕显示监控方法及装置、电子设备、存储介质 |
CN111796989A (zh) * | 2020-09-09 | 2020-10-20 | 北京志翔科技股份有限公司 | Linux***下防止截屏的方法及计算机可读存储介质 |
CN112131597A (zh) * | 2019-10-22 | 2020-12-25 | 刘高峰 | 一种生成加密信息的方法、装置和智能设备 |
CN113836547A (zh) * | 2021-08-30 | 2021-12-24 | 济南浪潮数据技术有限公司 | 一种限制普通用户登陆监控平台的方法、***及监控平台 |
CN114547632A (zh) * | 2020-11-19 | 2022-05-27 | 成都鼎桥通信技术有限公司 | 信息保护方法、装置、设备及存储介质 |
CN115167747A (zh) * | 2021-03-18 | 2022-10-11 | 华为技术有限公司 | 截屏方法、电子设备及存储介质 |
WO2024128679A1 (ko) * | 2022-12-16 | 2024-06-20 | 주식회사 안랩 | 원격제어 앱 탐지 방법 및 장치 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101310254A (zh) * | 2005-10-17 | 2008-11-19 | 法国电信公司 | 用于管理移动终端中的应用程序的方法和*** |
CN102622558A (zh) * | 2012-03-01 | 2012-08-01 | 北京邮电大学 | 一种二进制程序漏洞的挖掘装置和方法 |
CN103123602A (zh) * | 2011-11-18 | 2013-05-29 | 阿里巴巴集团控股有限公司 | 基于java的异常报警监控方法及其装置 |
CN103699835A (zh) * | 2013-12-11 | 2014-04-02 | 西安交通大学 | 一种面向Android***资源的访问控制方法 |
CN104239764A (zh) * | 2014-10-15 | 2014-12-24 | 北京奇虎科技有限公司 | 终端设备及其***功能的管控方法和装置 |
CN105335631A (zh) * | 2015-09-25 | 2016-02-17 | 宇龙计算机通信科技(深圳)有限公司 | 一种登录信息的配置方法、装置和移动终端 |
CN105550584A (zh) * | 2015-12-31 | 2016-05-04 | 北京工业大学 | 一种Android平台下基于RBAC的恶意程序拦截及处置方法 |
EP3098794A1 (en) * | 2014-01-20 | 2016-11-30 | Dr. Security S.L. | Security and surveillance system based on intelligent mobile devices |
CN106201468A (zh) * | 2016-06-28 | 2016-12-07 | 北京金山安全软件有限公司 | 一种截屏的处理方法、装置及电子设备 |
-
2017
- 2017-01-13 CN CN201710025477.9A patent/CN106791168A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101310254A (zh) * | 2005-10-17 | 2008-11-19 | 法国电信公司 | 用于管理移动终端中的应用程序的方法和*** |
CN103123602A (zh) * | 2011-11-18 | 2013-05-29 | 阿里巴巴集团控股有限公司 | 基于java的异常报警监控方法及其装置 |
CN102622558A (zh) * | 2012-03-01 | 2012-08-01 | 北京邮电大学 | 一种二进制程序漏洞的挖掘装置和方法 |
CN103699835A (zh) * | 2013-12-11 | 2014-04-02 | 西安交通大学 | 一种面向Android***资源的访问控制方法 |
EP3098794A1 (en) * | 2014-01-20 | 2016-11-30 | Dr. Security S.L. | Security and surveillance system based on intelligent mobile devices |
CN104239764A (zh) * | 2014-10-15 | 2014-12-24 | 北京奇虎科技有限公司 | 终端设备及其***功能的管控方法和装置 |
CN105335631A (zh) * | 2015-09-25 | 2016-02-17 | 宇龙计算机通信科技(深圳)有限公司 | 一种登录信息的配置方法、装置和移动终端 |
CN105550584A (zh) * | 2015-12-31 | 2016-05-04 | 北京工业大学 | 一种Android平台下基于RBAC的恶意程序拦截及处置方法 |
CN106201468A (zh) * | 2016-06-28 | 2016-12-07 | 北京金山安全软件有限公司 | 一种截屏的处理方法、装置及电子设备 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107682892A (zh) * | 2017-09-30 | 2018-02-09 | 广东欧珀移动通信有限公司 | 流量控制方法和装置、计算机设备、计算机可读存储介质 |
CN107682892B (zh) * | 2017-09-30 | 2021-06-25 | Oppo广东移动通信有限公司 | 流量控制方法和装置、计算机设备、计算机可读存储介质 |
CN108520186A (zh) * | 2018-03-09 | 2018-09-11 | 广东欧珀移动通信有限公司 | 录屏方法、移动终端及计算机可读存储介质 |
CN110430315A (zh) * | 2019-06-20 | 2019-11-08 | 努比亚技术有限公司 | 一种安全控制方法、终端及计算机可读存储介质 |
CN110414224A (zh) * | 2019-07-15 | 2019-11-05 | 维沃移动通信有限公司 | 一种数据处理方法及移动终端 |
CN110413366A (zh) * | 2019-07-30 | 2019-11-05 | 深圳市乘法信息技术有限公司 | 一种基于区块链的截屏方法、装置、设备及存储介质 |
CN110413366B (zh) * | 2019-07-30 | 2023-10-31 | 深圳市乘法信息技术有限公司 | 一种基于区块链的截屏方法、装置、设备及存储介质 |
CN112131597A (zh) * | 2019-10-22 | 2020-12-25 | 刘高峰 | 一种生成加密信息的方法、装置和智能设备 |
CN111340808A (zh) * | 2020-05-20 | 2020-06-26 | 北京小米移动软件有限公司 | 屏幕显示监控方法及装置、电子设备、存储介质 |
CN111796989A (zh) * | 2020-09-09 | 2020-10-20 | 北京志翔科技股份有限公司 | Linux***下防止截屏的方法及计算机可读存储介质 |
CN114547632A (zh) * | 2020-11-19 | 2022-05-27 | 成都鼎桥通信技术有限公司 | 信息保护方法、装置、设备及存储介质 |
CN114547632B (zh) * | 2020-11-19 | 2023-10-13 | 成都鼎桥通信技术有限公司 | 信息保护方法、装置、设备及存储介质 |
CN115167747A (zh) * | 2021-03-18 | 2022-10-11 | 华为技术有限公司 | 截屏方法、电子设备及存储介质 |
CN113836547A (zh) * | 2021-08-30 | 2021-12-24 | 济南浪潮数据技术有限公司 | 一种限制普通用户登陆监控平台的方法、***及监控平台 |
CN113836547B (zh) * | 2021-08-30 | 2023-12-22 | 济南浪潮数据技术有限公司 | 一种限制普通用户登陆监控平台的方法、***及监控平台 |
WO2024128679A1 (ko) * | 2022-12-16 | 2024-06-20 | 주식회사 안랩 | 원격제어 앱 탐지 방법 및 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106791168A (zh) | 移动终端信息保护方法、装置和移动终端 | |
US9703971B2 (en) | Sensitive operation verification method, terminal device, server, and verification system | |
CN103368958A (zh) | 一种网页检测方法、装置和*** | |
CN104901805B (zh) | 一种身份鉴权方法、装置和*** | |
CN109416800B (zh) | 一种移动终端的认证方法及移动终端 | |
CN108475304B (zh) | 一种关联应用程序和生物特征的方法、装置以及移动终端 | |
CN108536783A (zh) | 数据处理方法和装置、终端、计算机可读存储介质 | |
CN109992965B (zh) | 进程处理方法和装置、电子设备、计算机可读存储介质 | |
CN106874037A (zh) | 应用程序安装方法、装置及移动终端 | |
CN106327193B (zh) | 一种***解锁方法和设备 | |
CN106713266B (zh) | 一种防止信息泄露的方法、装置、终端及*** | |
CN106534324A (zh) | 一种数据共享方法及云服务器 | |
CN106130735A (zh) | 一种通信信息的处理方法、装置和移动终端 | |
CN109446834A (zh) | 一种应用程序的权限管理方法及移动终端 | |
CN107609407A (zh) | 一种用户终端中信息安全的保护方法及装置 | |
CN110191465A (zh) | 权限控制方法、移动终端及计算机可读存储介质 | |
CN107240157A (zh) | 近场通信安全控制方法、移动终端及计算机可读存储介质 | |
CN109687974A (zh) | Apk验证方法、装置、移动终端及可读存储介质 | |
CN106210285A (zh) | 一种录音安全控制方法、装置和设备 | |
CN104426848B (zh) | 登录网页应用的方法和*** | |
CN107622213A (zh) | 一种数据访问方法、终端和计算机可读存储介质 | |
CN106933633A (zh) | 权限管理方法、装置和移动终端 | |
CN107426441A (zh) | 一种终端显示方法、终端和计算机可读存储介质 | |
CN108319432A (zh) | 一种应用运行方法及终端 | |
CN106980778A (zh) | 信息鉴定方法、装置和终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20170719 Address after: 100102, 18 floor, building 2, Wangjing street, Beijing, Chaoyang District, 1801 Applicant after: BEIJING ANYUN SHIJI SCIENCE AND TECHNOLOGY CO., LTD. Address before: 100088 Beijing city Xicheng District xinjiekouwai Street 28, block D room 112 (Desheng Park) Applicant before: Beijing Qihu Technology Co., Ltd. |
|
TA01 | Transfer of patent application right | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170531 |
|
RJ01 | Rejection of invention patent application after publication |