CN104378388B - 可执行文件运行控制方法及装置 - Google Patents

可执行文件运行控制方法及装置 Download PDF

Info

Publication number
CN104378388B
CN104378388B CN201410751258.5A CN201410751258A CN104378388B CN 104378388 B CN104378388 B CN 104378388B CN 201410751258 A CN201410751258 A CN 201410751258A CN 104378388 B CN104378388 B CN 104378388B
Authority
CN
China
Prior art keywords
executable file
close string
functional module
calling
close
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.)
Active
Application number
CN201410751258.5A
Other languages
English (en)
Other versions
CN104378388A (zh
Inventor
胡超博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
360 Digital Security Technology Group Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201410751258.5A priority Critical patent/CN104378388B/zh
Publication of CN104378388A publication Critical patent/CN104378388A/zh
Application granted granted Critical
Publication of CN104378388B publication Critical patent/CN104378388B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提供一种可执行文件运行控制方法,包括以下步骤:通过远程通信端口校验并确认本机已经合法授权;通过本机维持的通信链路向目标终端推送可执行文件以备执行;通过通信链路调用可执行文件以运行其第一功能模块,在第一功能模块校验并确认调用合法时,可执行文件的第二功能模块运行。本发明还提供一种可执行文件运行控制装置。通过上述方式,能够对可执行文件的运行进行控制,通过校验防止可执行文件被非法运行,进而实现对可执行文件的保护,避免其被破解和滥用。

Description

可执行文件运行控制方法及装置
技术领域
本发明涉及计算机领域,具体而言,本发明涉及一种可执行文件运行控制方法及装置。
背景技术
随着互联网技术的不断发展,各种应用程序被开发应用,应用程序在运行过程中,当存在数据交互时,通常对交互双方进行合法性验证以确保交互的安全。目前,当两个应用程序进行交互时,一般通过调用签名来验证对方的合法性。
应用程序的可执行文件为操作的真正执行者,可执行文件是一种可在操作***存储空间中浮动定位的可直接运行的程序,如:Microsoft操作***,其可执行文件格式包括MZ、NE、PE;Linux操作***,其可执行文件格式包括a.out、COFF、ELF。可执行文件与安装包相比,其不需要安装,可直接运行,但直接运行会导致可执行文件的滥用,给程序开发者带来损失。
发明内容
本发明的目的旨在至少解决上述技术缺陷之一,特别是能够对可执行文件的运行进行控制,防止可执行文件被非法运行。
本发明提供一种可执行文件运行控制方法,包括以下步骤:通过远程通信端口校验并确认本机已经合法授权;通过本机维持的通信链路向目标终端推送可执行文件以备执行;通过通信链路调用可执行文件以运行其第一功能模块,在第一功能模块校验并确认调用合法时,可执行文件的第二功能模块运行。
其中,校验并确认本机已经合法授权的步骤,具体为:发送包含本机特征信息的请求,获取响应于该请求的本机特征信息位于白名单中的本机合法消息。
其中,本机特征信息为唯一标识本机特征的加密信息。
其中,推送可执行文件并将其修改为可执行,以备执行。
其中,通过通信链路调用可执行文件以运行其第一功能模块的步骤,具体包括:调用可执行文件以运行其第一功能模块,获取第一功能模块返回的包括调用时间及目标终端标识的密串,对密串加密,再次调用可执行文件以运行其第一功能模块并发送加密后的密串至可执行文件。
其中,第一功能模块用于产生密串,其校验加密后的密串与再次调用产生的密串中的调用时间间隔在预设时间内、目标终端标识一致时,可执行文件的第二功能模块运行。
其中,第二功能模块用于获取目标终端的Root权限。
其中,本机具有与目标终端建立通信链路的连接端口。
其中,连接端口为蓝牙、WiFi和/或USB接口。
其中,确认本机已经合法授权的步骤或确认调用合法的步骤,当无法确认时,终止执行各自后续的步骤。
本发明还提供一种可执行文件运行控制方法,包括以下步骤:通过本地维持的通信链路接收调用可执行文件的命令;根据调用命令,校验并确认调用是否合法;在校验并确认调用合法时,执行可执行文件的功能。
其中,根据调用命令,校验并确认调用是否合法的步骤,具体包括:根据调用获取包括调用时间及本地标识的密串,通过通信链路发送密串,接收该通信链路返回的加密后的密串并根据再次调用获取包括调用时间及本地标识的密串,解密加密后的密串,校验解密后的密串与再次调用获取的密串中的调用时间间隔是否在预设时间内、本地标识是否一致。
其中,当调用时间间隔不在预设时间内,终止本地标识的校验。
其中,执行可执行文件的功能的步骤后,显示执行成功与否的信息或通过通信链路反馈执行成功与否的信息。
本发明提供一种可执行文件运行控制装置,包括:校验模块,用于通过远程通信端口校验并确认本机已经合法授权;推送模块,用于校验模块确认本机已经合法授权时,通过本机维持的通信链路向目标终端推送可执行文件以备执行;调用模块,用于通过通信链路调用可执行文件以运行其第一功能模块,在第一功能模块校验并确认调用合法时,可执行文件的第二功能模块运行。
其中,校验模块具体用于:发送包含本机特征信息的请求,获取响应于该请求的本机特征信息位于白名单中的本机合法消息。
其中,本机特征信息为唯一标识本机特征的加密信息。
其中,推送模块进一步用于:推送可执行文件并将其修改为可执行,以备执行。
其中,调用模块具体用于:调用可执行文件以运行其第一功能模块,获取第一功能模块返回的包括调用时间及目标终端标识的密串,对密串加密,再次调用可执行文件以运行其第一功能模块并发送加密后的密串至可执行文件。
其中,第一功能模块用于产生密串,其校验加密后的密串与再次调用产生的密串中的调用时间间隔在预设时间内、目标终端标识一致时,可执行文件的第二功能模块运行。
其中,第二功能模块用于获取目标终端的Root权限。
其中,本机具有与目标终端建立通信链路的连接端口。
其中,连接端口为蓝牙、WiFi和/或USB接口。
本发明还提供一种可执行文件运行控制装置,包括:接收模块,用于通过本地维持的通信链路接收调用可执行文件的命令;第一功能模块,用于根据调用命令,校验并确认调用是否合法;第二功能模块,用于在校验并确认调用合法时,执行可执行文件的功能。
其中,第一功能模块具体用于:根据调用获取包括调用时间及本地标识的密串,通过通信链路发送密串,接收该通信链路返回的加密后的密串并根据再次调用获取包括调用时间及本地标识的密串,解密加密后的密串,校验解密后的密串与再次调用获取的密串中的调用时间间隔是否在预设时间内、本地标识是否一致。
其中,当调用时间间隔不在预设时间内,本地标识的校验终止。
其中,装置包括:反馈模块,用于第二功能模块执行可执行文件的功能后,显示执行成功与否的信息或通过通信链路反馈执行成功与否的信息。
相较于现有技术,本发明具有以下优点:
1.对应用程序所在客户端的合法性进行校验,即对应用程序的运行环境进行校验,可确保应用程序运行在授权的客户端上,避免应用程序被随意安装使用。
2.应用程序发送可执行文件至目标终端,在可执行文件执行前,校验其运行是否为应用程序调用,只有应用程序的调用,才能运行可执行文件,此校验可防止可执行文件被随意抠出,任意滥用。
在校验过程中,两次调用可执行文件,应用程序对其首次调用可执行文件返回的密串进行加密,可执行文件再对加密的密串进行解密,比较解密后的密串与再次调用可执行文件产生的密串中的目标终端标识的一致性。通过上述加密解密、一致性判断增强校验的准确性。
3.设置多重校验,一是校验应用程序的运行环境是否合法,二是校验应用程序是否合法,三是校验使可执行文件执行的命令是否合法,通过三重校验,增加校验的层数和难度,保护程序开发者的利益。
4.应用程序可对多个目标终端发送可执行文件,即对多个目标终端进行批量处理,以提高应用程序的使用效率。
简而言之,本发明控制可执行文件运行的方法可对应用程序及其推送的可执行文件进行高效保护,避免破解和滥用。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明***结构原理图;
图2为本发明可执行文件运行控制方法一实施例的流程示意图;
图3为本发明可执行文件运行控制方法另一实施例的流程示意图;
图4为本发明可执行文件运行控制方法再一实施例的流程示意图;
图5为本发明可执行文件运行控制装置一实施例的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;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协议的计算机网络通信以及基于蓝牙、红外传输标准的近距无线传输方式。
本领域技术人员应当理解,本发明所称的“应用”、“应用程序”、“应用软件”以及类似表述的概念,是业内技术人员所公知的相同概念,是指由一系列计算机指令及相关数据资源有机构造的适于电子运行的计算机软件。除非特别指定,这种命名本身不受编程语言种类、级别,也不受其赖以运行的操作***或平台所限制。理所当然地,此类概念也不受任何形式的终端所限制。
请参阅图1,图1为本发明***结构原理图,如图1所示,包括服务器端11、客户端12及目标终端13。
图1所示***为基于网络环境所构建的***,服务器端11实现对客户端12的校验,客户端12为安装有本发明应用程序的电脑,目标终端13为执行应用程序功能的移动终端(如:手机)。其中,服务器端11可为云端,客户端12为运行Linux***的电脑,目标终端13为运行Android***的终端。
本实施例涉及Linux***、Android***,但不局限于该***,本领域技术人员可以合理预见,诸如Windows、苹果等操作***,均可适用本实施例所构思的方案。且客户端12还可为ARM机,与多个手机相连接。
客户端12通过远程通信端口与服务器端11连接,且通过通信链路与至少一个目标终端13连接。客户端12为与目标终端13通信,在客户端12中配置有相应的目标终端13驱动程序和adb(Android Debug Bridge,安卓调试桥)等相关程序,且客户端12具有与目标终端13建立通信链路的连接端口,如蓝牙、WiFi和/或USB接口。
请参阅图2,图2为本发明可执行文件运行控制方法一实施例的流程示意图,如图2所示,包括以下步骤:
S21,通过远程通信端口校验并确认本机已经合法授权。
本实施例的本机为安装有本发明应用程序的电脑,本机通过其远程通信端口与服务器交互,通过服务器来校验其是否为合法的客户端,只有授权的客户端才能运行该应用程序。
S22,通过本机维持的通信链路向目标终端推送可执行文件以备执行。
当本机被确认为合法,其可向目标终端推送可执行文件,由可执行文件完成其功能。
S23,通过通信链路调用可执行文件以运行其第一功能模块,在第一功能模块校验并确认调用合法时,可执行文件的第二功能模块运行。
在可执行文件执行其第二功能模块前,即执行应用程序的功能前,需校验对可执行文件的调用是否由应用程序发出,当确认对可执行文件的调用是由应用程序发出时,第二功能模块才运行。具体为,利用本机对第一功能模块的调用及第一功能模块的判断,实现调用是否合法的校验。
请参阅图3,图3为本发明可执行文件运行控制方法另一实施例的流程示意图,如图3所示,包括以下步骤:
S31,通过本地维持的通信链路接收调用可执行文件的命令。
S32,根据调用命令,校验并确认调用是否合法。
S33,在校验并确认调用合法时,执行可执行文件的功能。
与图2所示的实施例结合,本实施例目标终端的可执行文件与图2所示实施例中的本机配合,完成调用是否合法的校验,当调用命令由图2所示实施例的应用程序发出时,执行可执行文件需对目标终端实现的功能。
请参阅图4,图4为本发明可执行文件运行控制方法再一实施例的流程示意图,如图4所示,包括以下步骤:
S41,通过远程通信端口校验并确认本机已经合法授权。
本实施例的方法基于图1所示的***,客户端12分别与服务器端11和目标终端13交互。本实施例所述的本机为客户端12,在客户端12中的应用程序启动时,需向服务器端11请求,校验其运行环境是否合法。
其中,客户端12的工作具体如下:
A.发送包含客户端12特征信息的校验请求。
特征信息为唯一标识客户端12的信息,包括mac地址、主板ID号和/或硬盘序列号。客户端12具有诸多特征信息,并不局限于上述所列的几种。本实施例选定特征信息的标准较为灵活,以利用这些信息可以识别客户端12即可,优选mac地址。但可以将多个特征信息进行结合,以提高识别的准确性。
该特征信息的获取由应用程序实现,当应用运行时,获取特征信息并发送至服务器端11以判断其运行环境是否合法。
B.获取响应于该请求的客户端12合法的消息。
其中,服务器端11的校验过程具体如下:
A.通过远程通信端口获取包含客户端12特征信息的请求。
B.判断特征信息是否在预设的白名单中。
服务器端11中预设有白名单,白名单中有授权运行应用程序的客户端信息,各客户端信息均包括唯一标识客户端特征的信息。服务器端11收到客户端12发送的请求后,在白名单中查找是否存在请求中的特征信息。
C.当特征信息在预设的白名单中时,确认客户端12合法授权,并通过远程通信端口返回客户端12合法的消息。
当白名单中没有特征信息时,同样通过远程通信端口返回客户端12不合法的消息。
通过上述阐述,客户端12与服务器端11交互,可完成客户端12是否合法的校验。当客户端12中的应用程序接收到服务器端11返回的消息后,若客户端12是非法的,则停止运行。此校验使该应用程序运行在特定的客户端上,白名单外的客户端,则不允许其使用该应用程序。
在此校验过程中,对应用程序发送的特征信息进行加密,即应用程序发送的请求为加密请求,服务器端11接收该请求后,进行解密,然后再判断特征信息是否在预设的白名单中。且服务器端11返回消息时,也可对消息进行加密。其中,不同的应用程序具有不同的Key。
在其他实施例中,也可请求不加密,只对服务器端11返回的消息进行加密,客户端12进行解密。
上述加密采用AES(Advanced Encryption Standard,高级加密标准)进行加密,为对称加密,加密和解密双方的密钥相同。AES在软件和硬件上都能快速地加解密,易于实作且需要很少的存储器。
采用上述加密,可验证应用程序的合法性,同时还可对交互的数据进行保护。
S42,通过本机维持的通信链路向目标终端推送可执行文件以备执行。
当应用程序接收到服务器端11返回的客户端12合法的消息时,确认本机已经合法授权,继续运行。检测是否有目标终端13与客户端12连接,当目标终端13与客户端12之间存在通信链路时,应用程序发送可执行文件至目标终端13,存放在/bin目录。其中,应用程序可同时给多个目标终端发送可执行文件。其中,可执行文件为加密文件,可防止在传输过程中或在目标终端13被破解。
推送可执行文件后,需将其属性修改为可执行,以便可执行文件的运行。对于Microsoft操作***的可执行文件,是通过识别文件后缀来判断文件是否可执行的,因此不需要修改属性。
在本实施例中,本实施例的方法用于获取目标终端13的Root权限,因此,应用程序为Root软件,其包括Root方案,Root方案为可执行文件。众所周知,可执行文件的功能可以为多种,因此应用程序不限于Root软件。
目前有多种提权方案用于获取Android***的Root权限,依提权后权限作用的生命周期来看,包括永久Root权限和临时Root权限。永久Root权限情况下,应用程序一经Root授权,以后可不必再进行Root提权;而临时Root权限情况下,权限作用的生命周期只是操作***的一次从开机到关机的过程,下次开机依然需要进行Root。
无论采用何种Root方式,提权的基本原理均是通过向***植入用于接收权限请求的su,再结合SuperUser.apk应用程序实现人机交互。Root提权操作的过程具体为:把su文件放到/system/bin/中,把Superuser.apk放到system/app下面,前者用于监听用户的权限请求并与后者通信,后者主要是在与前者通信的基础上实现人机交互,从而允许用户做出相关指示。理论上,如果su可以实现默认通过所有权限请求,则SuperUser.apk可以舍弃。此外还需要设置/system/bin/su可以让任意用户可运行,使其具有set uid和set gid的权限,具体可通过在android机器上运行命令:adb shell chmod 4755/system/bin/su实现。
对于Root方案,应理解为包括:与破解相关的代码文件及其配置参数,以“su”、“SuperUser.apk”命名或实现的文件。
S43,通过通信链路调用可执行文件。
S44,目标终端通过本地维持的通信链路接收调用可执行文件的命令。
S45,根据调用命令,校验并确认调用是否合法。
可执行文件为二进制文件,为防止其被获得后滥用,需校验是否是客户端12中的应用程序调用其执行功能。具体的校验过程包括步骤S43、S44、S45,下面对该校验进行详细阐述:
本实施例的可执行文件包括第一功能模块和第二功能模块,第一功能模块用于产生包括调用时间及目标终端13标识的串,且对该串进行加密;第二功能模块用于执行获取Root权限的工作。
首先,应用程序调用可执行文件以运行其第一功能模块,第一功能模块产生密串,并返回至应用程序,应用程序对该密串进行二次加密;然后,应用程序再次调用可执行文件以运行其第一功能模块,并发送加密后的密串至可执行文件,第一功能模块再次产生密串;再者,第一功能模块将获得的加密后的密串进行解密,并将解密后的密串与再次产生的密串进行比较,以校验调用命令是否由应用程序发出。
具体的比较过程为:由于两次调用存在时间差,首先比较两个密串中的时间间隔是否在预设的时间内,若时间间隔超过预设时间,则终止可执行文件的运行;若时间间隔在预设时间内,则继续比较两个密串中的目标终端13标识是否一致,若一致,则说明发送至应用程序的密串确实由目标终端13发出,最终确认调用命令由应用程序发出,即调用是合法的。
上述验证过程主要原理为:应用程序对首次调用的密串进行加密,可执行文件对加密的密串进行解密,且解密后的密串与再次调用的密串中的标识一致,以此来确定调用命令是由应用程序发出。通过该验证可避免可执行文件被获取而对任意的手机进行Root,实现对可执行文件的保护。
S46,在校验并确认调用合法时,执行可执行文件的功能。
当校验并确认调用合法时,运行可执行文件的第二功能模块,对目标终端13进行Root,Root方式为临时Root或永久Root。
当Root流程完成后,可在目标终端13上显示执行成功与否的信息或通过通信链路反馈执行成功与否的信息至客户端12。
需要指出的是,在本实施例的方法流程中,任何校验步骤无法确认时,自动终止后续的步骤。
以上所述,为保护应用程序,控制可执行文件的运行,设置多重校验,一是校验应用程序的运行环境是否合法,二是校验应用程序是否合法,三是校验使可执行文件执行的命令是否合法,通过三重校验,增加校验的层数和难度,防止应用程序被破解和滥用,保护程序开发者的利益。
请参阅图5,图5为本发明可执行文件运行控制装置一实施例的结构示意图,如图5所示,包括:校验模块51、推送模块52、调用模块53、接收模块54、第一功能模块55、第二功能模块56及反馈模块57。
上述各模块的功能如下:
校验模块51用于通过远程通信端口校验并确认本机已经合法授权。推送模块52用于校验模块51确认本机已经合法授权时,通过本机维持的通信链路向目标终端推送可执行文件以备执行。调用模块53用于通过通信链路调用可执行文件以运行其第一功能模块55,在第一功能模块55校验并确认调用合法时,可执行文件的第二功能模块56运行。
接收模块54用于通过本地维持的通信链路接收调用可执行文件的命令。第一功能模块55用于根据调用命令,校验并确认调用是否合法。第二功能模块56用于在校验并确认调用合法时,执行可执行文件的功能。反馈模块57用于第二功能模块56执行可执行文件的功能后,显示执行成功与否的信息或通过通信链路反馈执行成功与否的信息。
在本实施例中,结合图1,校验模块51、推送模块52及调用模块53位于客户端12,接收模块54、第一功能模块55、第二功能模块56及反馈模块57位于目标终端13。客户端12与目标终端13相互交互,下面详细阐述在交互过程中,各模块的工作过程。
客户端12中的应用程序启动时,其校验模块51发送包含客户端12特征信息的请求至服务器端11,当服务器端11判断该请求中的特征信息在其白名单中时,返回客户端12合法的消息,校验模块51获取返回的消息,以确认客户端12合法授权。当客户端12合法时,应用程序的推送模块52推送其可执行文件至目标终端13,为保护该可执行文件不被滥用,在可执行文件执行其需在目标终端13上实现的功能前,需校验可执行文件的运行是否为应用程序调用。具体为:应用程序的调用模块53调用可执行文件以运行其第一功能模块55;可执行文件的接收模块54接收到该调用命令后,第一功能模块55获取包括调用时间及目标终端13标识的密串并返回至调用模块53;调用模块53获取密串后,对密串进行二次加密,并再次调用可执行文件以运行其第一功能模块55且发送加密后的密串至可执行文件;第一功能模块55接收返回的加密后的密串并根据再次调用获取包括调用时间及目标终端13标识的密串,解密加密后的密串,校验解密后的密串与再次调用获取的密串中的调用时间间隔是否在预设时间内、目标终端13标识是否一致;当第一功能模块55校验调用时间间隔在预设时间内、目标终端13标识一致时,确认可执行文件的运行由应用程序调用,该调用合法。当确认调用合法时,第二功能模块56执行其功能。第二功能模块56运行完成后,显示执行成功与否的信息或将该信息反馈至客户端12。
其中,客户端12的特征信息为唯一标识本机特征的信息,还可对该特征信息进行加密,通过服务器端11的解密以进一步确认客户端12中的应用程序的合法性。
其中,当目标终端13为Android***时,需将可执行文件的属性修改为可执行。
其中,第二功能模块56可用于获取目标终端13的Root权限。
其中,第一功能模块55在校验调用时间间隔是否在预设时间内、目标终端13标识是否一致的过程中,当调用时间间隔不在预设时间内时,标识的校验终止。
以上所述,本实施例装置可对本发明应用程序的运行环境进行校验,以避免应用程序被随意安装使用;对可执行文件的运行调用进行校验,以避免可执行文件被随意抠出,任意滥用;通过多重校验,以保护应用程序,防止其被破解。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (27)

1.一种可执行文件运行控制方法,其特征在于,包括以下步骤:
通过远程通信端口校验并确认本机已经合法授权;
通过本机维持的通信链路向目标终端推送所述可执行文件以备执行;
通过所述通信链路调用所述可执行文件以运行其第一功能模块产生密串,并返回至应用程序,应用程序对该密串进行二次加密;应用程序再次调用所述可执行文件以运行其第一功能模块,并发送加密后的密串至所述可执行文件,第一功能模块再次产生密串;第一功能模块将获得的加密后的密串进行解密,并将解密后的密串与再次产生的密串进行比较,以校验并确认所述调用是否合法;其中,第一功能模块校验加密后的密串与再次调用产生的密串中的调用时间间隔在预设时间内、目标终端标识一致时,确认所述调用合法;
在第一功能模块校验并确认所述调用合法时,所述可执行文件的第二功能模块运行。
2.根据权利要求1所述的可执行文件运行控制方法,其特征在于,校验并确认本机已经合法授权的步骤,具体为:发送包含本机特征信息的请求,获取响应于该请求的本机特征信息位于白名单中的本机合法消息。
3.根据权利要求2所述的可执行文件运行控制方法,其特征在于,所述本机特征信息为唯一标识本机特征的加密信息。
4.根据权利要求1所述的可执行文件运行控制方法,其特征在于,推送所述可执行文件并将其修改为可执行,以备执行。
5.根据权利要求2所述的可执行文件运行控制方法,其特征在于,通过所述通信链路调用所述可执行文件以运行其第一功能模块的步骤,具体包括:调用所述可执行文件以运行其第一功能模块,获取第一功能模块返回的包括调用时间及目标终端标识的密串,对所述密串加密,再次调用所述可执行文件以运行其第一功能模块并发送加密后的密串至可执行文件。
6.根据权利要求5所述的可执行文件运行控制方法,其特征在于,所述第一功能模块用于产生密串,其校验加密后的密串与再次调用产生的密串中的调用时间间隔在预设时间内、目标终端标识一致时,所述可执行文件的第二功能模块运行。
7.根据权利要求6所述的可执行文件运行控制方法,其特征在于,所述第二功能模块用于获取目标终端的Root权限。
8.根据权利要求1所述的可执行文件运行控制方法,其特征在于,所述本机具有与目标终端建立所述通信链路的连接端口。
9.根据权利要求8所述的可执行文件运行控制方法,其特征在于,所述连接端口为蓝牙、WiFi和/或USB接口。
10.根据权利要求1所述的可执行文件运行控制方法,其特征在于,确认本机已经合法授权的步骤或确认所述调用合法的步骤,当无法确认时,终止执行各自后续的步骤。
11.一种可执行文件运行控制方法,其特征在于,包括以下步骤:
通过本地维持的通信链路接收调用可执行文件的命令;
根据调用命令,获取调用产生的密串后进行二次加密,接收再次调用可执行文件的命令,获取调用再次产生的密串;获取所述再次产生的密串与二次加密的密串解密后的密串间比较后校验并确认的所述调用的合法性结果;
在校验并确认所述调用合法时,执行可执行文件的功能;其中,调用产生的密串与再次调用产生的密串中的调用时间间隔在预设时间内、目标终端标识一致时,确认所述调用合法。
12.根据权利要求11所述的可执行文件运行控制方法,其特征在于,根据调用命令,校验并确认所述调用是否合法的步骤,具体包括:根据调用获取包括调用时间及本地标识的密串,通过所述通信链路发送所述密串,接收该通信链路返回的加密后的所述密串并根据再次调用获取包括调用时间及本地标识的密串,解密加密后的密串,校验解密后的密串与再次调用获取的密串中的调用时间间隔是否在预设时间内、本地标识是否一致。
13.根据权利要求12所述的可执行文件运行控制方法,其特征在于,当调用时间间隔不在预设时间内,终止本地标识的校验。
14.根据权利要求13所述的可执行文件运行控制方法,其特征在于,执行可执行文件的功能的步骤后,显示执行成功与否的信息或通过所述通信链路反馈执行成功与否的信息。
15.一种可执行文件运行控制装置,其特征在于,包括:
校验模块,用于通过远程通信端口校验并确认本机已经合法授权;
推送模块,用于所述校验模块确认本机已经合法授权时,通过本机维持的通信链路向目标终端推送所述可执行文件以备执行;
调用模块,用于通过所述通信链路调用所述可执行文件以运行其第一功能模块产生密串,并返回至应用程序,应用程序对该密串进行二次加密;应用程序再次调用所述可执行文件以运行其第一功能模块,并发送加密后的密串至所述可执行文件,第一功能模块再次产生密串;第一功能模块将获得的加密后的密串进行解密,并将解密后的密串与再次产生的密串进行比较,以校验并确认所述调用是否合法;其中,第一功能模块校验加密后的密串与再次调用产生的密串中的调用时间间隔在预设时间内、目标终端标识一致时,确认所述调用是否合法;
在第一功能模块校验并确认所述调用合法时,所述可执行文件的第二功能模块运行。
16.根据权利要求15所述的可执行文件运行控制装置,其特征在于,所述校验模块具体用于:
发送包含本机特征信息的请求,获取响应于该请求的本机特征信息位于白名单中的本机合法消息。
17.根据权利要求16所述的可执行文件运行控制装置,其特征在于,所述本机特征信息为唯一标识本机特征的加密信息。
18.根据权利要求15所述的可执行文件运行控制装置,其特征在于,所述推送模块进一步用于:
推送所述可执行文件并将其修改为可执行,以备执行。
19.根据权利要求16所述的可执行文件运行控制装置,其特征在于,所述调用模块具体用于:
调用所述可执行文件以运行其第一功能模块,获取第一功能模块返回的包括调用时间及目标终端标识的密串,对所述密串加密,再次调用所述可执行文件以运行其第一功能模块并发送加密后的密串至可执行文件。
20.根据权利要求19所述的可执行文件运行控制装置,其特征在于,所述第一功能模块用于产生密串,其校验加密后的密串与再次调用产生的密串中的调用时间间隔在预设时间内、目标终端标识一致时,所述可执行文件的第二功能模块运行。
21.根据权利要求20所述的可执行文件运行控制装置,其特征在于,所述第二功能模块用于获取目标终端的Root权限。
22.根据权利要求15所述的可执行文件运行控制装置,其特征在于,所述本机具有与目标终端建立所述通信链路的连接端口。
23.根据权利要求22所述的可执行文件运行控制装置,其特征在于,所述连接端口为蓝牙、WiFi和/或USB接口。
24.一种可执行文件运行控制装置,其特征在于,包括:
接收模块,用于通过本地维持的通信链路接收调用可执行文件的命令;
第一功能模块,用于根据调用命令,获取调用产生的密串后进行二次加密,接收再次调用可执行文件的命令,获取调用再次产生的密串;获取所述再次产生的密串与二次加密的密串解密后的密串间比较后校验并确认的所述调用的合法性结果;
第二功能模块,用于在校验并确认所述调用合法时,执行可执行文件的功能;其中,第一功能模块调用产生的密串与再次调用产生的密串中的调用时间间隔在预设时间内、目标终端标识一致时,确认所述调用合法。
25.根据权利要求24所述的可执行文件运行控制装置,其特征在于,所述第一功能模块具体用于:
根据调用获取包括调用时间及本地标识的密串,通过所述通信链路发送所述密串,接收该通信链路返回的加密后的所述密串并根据再次调用获取包括调用时间及本地标识的密串,解密加密后的密串,校验解密后的密串与再次调用获取的密串中的调用时间间隔是否在预设时间内、本地标识是否一致。
26.根据权利要求25所述的可执行文件运行控制装置,其特征在于,当调用时间间隔不在预设时间内,本地标识的校验终止。
27.根据权利要求26所述的可执行文件运行控制装置,其特征在于,所述装置包括:
反馈模块,用于所述第二功能模块执行可执行文件的功能后,显示执行成功与否的信息或通过所述通信链路反馈执行成功与否的信息。
CN201410751258.5A 2014-12-09 2014-12-09 可执行文件运行控制方法及装置 Active CN104378388B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410751258.5A CN104378388B (zh) 2014-12-09 2014-12-09 可执行文件运行控制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410751258.5A CN104378388B (zh) 2014-12-09 2014-12-09 可执行文件运行控制方法及装置

Publications (2)

Publication Number Publication Date
CN104378388A CN104378388A (zh) 2015-02-25
CN104378388B true CN104378388B (zh) 2018-02-27

Family

ID=52557044

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410751258.5A Active CN104378388B (zh) 2014-12-09 2014-12-09 可执行文件运行控制方法及装置

Country Status (1)

Country Link
CN (1) CN104378388B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106156034A (zh) * 2015-03-26 2016-11-23 北京畅游天下网络技术有限公司 一种可执行文件的展示方法和装置
CN107864036A (zh) * 2017-11-20 2018-03-30 安徽亿联智能有限公司 一种具有高安全性能的电脑读取盒子关键数据记录方式
CN108287997B (zh) * 2018-01-10 2020-07-31 武汉斗鱼网络科技有限公司 目标应用程序的宿主环境识别方法、装置、介质及设备
CN108270574B (zh) * 2018-02-11 2021-02-09 浙江中控技术股份有限公司 一种白名单库文件的安全加载方法及装置
CN110245464B (zh) * 2018-10-10 2021-08-27 爱信诺征信有限公司 保护文件的方法和装置
CN111935061B (zh) * 2019-12-26 2021-06-11 长扬科技(北京)有限公司 一种工控主机的网络安全防护实现方法及工控主机
CN113536242A (zh) * 2021-07-09 2021-10-22 深圳市元征未来汽车技术有限公司 动态库调用方法、装置、终端设备以及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101542429A (zh) * 2005-06-13 2009-09-23 高通股份有限公司 用于检测及管理无线装置上的未经授权的可执行指令的设备及方法
CN103324506A (zh) * 2013-06-24 2013-09-25 上海天奕达电子科技有限公司 一种控制Android应用程序安装的方法及手机
CN103544409A (zh) * 2012-07-11 2014-01-29 腾讯科技(深圳)有限公司 一种应用程序控制方法、用户设备及服务器
CN103544434A (zh) * 2013-11-12 2014-01-29 北京网秦天下科技有限公司 用于确保应用程序安全运行的方法和终端
CN104111844A (zh) * 2013-04-19 2014-10-22 腾讯科技(深圳)有限公司 在移动终端内安装应用程序的方法及***

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040193917A1 (en) * 2003-03-26 2004-09-30 Drews Paul C Application programming interface to securely manage different execution environments

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101542429A (zh) * 2005-06-13 2009-09-23 高通股份有限公司 用于检测及管理无线装置上的未经授权的可执行指令的设备及方法
CN103544409A (zh) * 2012-07-11 2014-01-29 腾讯科技(深圳)有限公司 一种应用程序控制方法、用户设备及服务器
CN104111844A (zh) * 2013-04-19 2014-10-22 腾讯科技(深圳)有限公司 在移动终端内安装应用程序的方法及***
CN103324506A (zh) * 2013-06-24 2013-09-25 上海天奕达电子科技有限公司 一种控制Android应用程序安装的方法及手机
CN103544434A (zh) * 2013-11-12 2014-01-29 北京网秦天下科技有限公司 用于确保应用程序安全运行的方法和终端

Also Published As

Publication number Publication date
CN104378388A (zh) 2015-02-25

Similar Documents

Publication Publication Date Title
CN104378388B (zh) 可执行文件运行控制方法及装置
CN111143890B (zh) 一种基于区块链的计算处理方法、装置、设备和介质
US11501294B2 (en) Method and device for providing and obtaining graphic code information, and terminal
CN102467634B (zh) 软件授权***及方法
CN104063788B (zh) 一种移动平台可信支付***及方法
CN112559993B (zh) 身份认证方法、装置、***及电子设备
EP3694243A1 (en) Method and device for network connection authentication
CN109286599A (zh) 数据安全防护方法、智能设备、服务器及可读存储介质
AU2007295939A1 (en) A portable device for use in establishing trust
CN107872447A (zh) 电子装置、服务器、通信***及通信方法
CN104869099A (zh) 一种基于指纹账户的多网络帐号登录方法及***
US20150149777A1 (en) Mobile terminal, terminal and authentication method using security cookie
CN112528257A (zh) 安全调试方法、装置、电子设备及存储介质
GB2585170A (en) Oblivious pseudorandom function in a key management system
CN109361508A (zh) 数据传输方法、电子设备及计算机可读存储介质
CN108449315A (zh) 请求合法性的校验装置、方法及计算机可读存储介质
CN109922027A (zh) 一种可信身份认证方法、终端及存储介质
CN102523095A (zh) 具有智能卡保护的用户数字证书远程更新方法
CN110036615A (zh) 经由参数传递认证信息
CN112422500A (zh) 跨平台数据传输方法以及装置、存储介质、电子装置
CN110838919B (zh) 通信方法、存储方法、运算方法及装置
WO2014180431A1 (zh) 一种网管安全认证方法、装置、***及计算机存储介质
CN113765655A (zh) 访问控制方法、装置、设备及存储介质
CN107508804A (zh) 一种保护移动终端中密钥和证书的方法、装置及移动终端
US11146961B2 (en) Third party certificate management for native mobile apps and internet of things apps

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee after: Beijing Qizhi Business Consulting Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

CP01 Change in the name or title of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20210622

Address after: 100016 1773, 15 / F, 17 / F, building 3, No.10, Jiuxianqiao Road, Chaoyang District, Beijing

Patentee after: Beijing Hongteng Intelligent Technology Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Beijing Qizhi Business Consulting Co.,Ltd.

TR01 Transfer of patent right
CP01 Change in the name or title of a patent holder

Address after: 100016 1773, 15 / F, 17 / F, building 3, No.10, Jiuxianqiao Road, Chaoyang District, Beijing

Patentee after: Sanliu0 Digital Security Technology Group Co.,Ltd.

Address before: 100016 1773, 15 / F, 17 / F, building 3, No.10, Jiuxianqiao Road, Chaoyang District, Beijing

Patentee before: Beijing Hongteng Intelligent Technology Co.,Ltd.

CP01 Change in the name or title of a patent holder