CN104584480A - 用于应用安全验证的云协助方法及服务 - Google Patents

用于应用安全验证的云协助方法及服务 Download PDF

Info

Publication number
CN104584480A
CN104584480A CN201380045195.5A CN201380045195A CN104584480A CN 104584480 A CN104584480 A CN 104584480A CN 201380045195 A CN201380045195 A CN 201380045195A CN 104584480 A CN104584480 A CN 104584480A
Authority
CN
China
Prior art keywords
application
browser
computing devices
client
cloud service
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.)
Granted
Application number
CN201380045195.5A
Other languages
English (en)
Other versions
CN104584480B (zh
Inventor
H·李
J·布莱克利
R·沃海比
J·文森特
M·雅维斯
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN104584480A publication Critical patent/CN104584480A/zh
Application granted granted Critical
Publication of CN104584480B publication Critical patent/CN104584480B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2119Authenticating web pages, e.g. with suspicious links

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

公开了一种用于基于浏览器的应用安全验证的方法、设备及系统。客户机设备从web服务器请求基于浏览器的应用。该客户机设备的应用安全模块介入并且向云服务系统传输应用验证请求。该云服务系统从云资源和该云服务器的本地数据库检索有关该应用和源的安全的数据。该云服务系统然后使用该数据来认证该源并且验证该基于浏览器的应用的安全。该云服务系统为该客户机设备提供有关该基于浏览器的应用的安全的建议并且更新其本地数据库。该客户机设备然后可将该建议用于确定是否下载或执行该基于浏览器的应用并向该云服务器系统提供反馈。该客户机设备还可在接收到该云服务系统的建议之后执行本地安全分析。

Description

用于应用安全验证的云协助方法及服务
背景
HTML5编程平台在网络社区的到来使得交互用户的体验变得快速并且动态。编程平台将应用编程接口(API)与动态内容生成和呈现组合,因此使得开发者能够将更多特征和能力结合到基于浏览器的应用中。例如,HTML5允许开发者将主动代码集成到能够在客户机设备的浏览器内部执行的网页中。
不幸的是,HTML5的动态性质也为用户引入了很多安全风险。因为编程平台允许开发者将主动代码结合到网页中,该代码经常可在用户不知道该代码的情况下执行。某些现有解决方案允许客户机设备证实应用的真实性。例如,某些开发者可使用数字签名对其开发的软件进行签名以便允许客户机设备在下载时对代码进行证实。然而,这些解决方案仅提供由具体开发者或公开者交付的软件的单源且一次性的方式的真实性验证。另外,这种解决方案不提供独立于具体软件供应商或服务提供商的web服务应用(例如,基于HTML 5的动态内容创建和浏览器插件)的动态验证。这样,用户可用的用以确保基于浏览器的应用在下载或执行该应用之前是安全的选项有限。
附图简要描述
通过举例而非通过限制在附图中示出在此描述的概念。为了示出的简单和清晰,图中所示元素无需按比例绘制。当认为合适时,已经在附图中重复参考标号以便指示相应的或类似的元素。
图1是用于基于浏览器的应用安全验证的系统的至少一个实施例的简化框图;
图2是图1的系统的云服务服务器的环境的至少一个实施例的简化框图;
图3是图1的系统的客户机计算设备的环境的至少一个实施例的简化框图;
图4是用于使用图1的云服务服务器为基于浏览器的应用生成安全建议的方法的至少一个实施例的简化流程图;
图5是用于验证由图1的客户机计算设备访问的基于浏览器的应用的安全的方法的至少一个实施例的简化流程图。
附图详细描述
尽管本公开的概念可受到各种修改和替代形式,已经通过举例在附图中示出并且将在此详细地描述其特定实施例。然而,应当理解的是不旨在将本公开的概念限制为所公开的具体形式,而是相反,本发明涵盖与本公开和所附权利要求书一致的所有修改、等效方案和替代方案。
在说明书中对“一个实施例”、“实施例”、“说明性实施例”等等的引用表明所描述的实施例可包括具体的特征、结构或特性,但是每个实施例可无需包括该具体的特征、结构或特性。而且,这种短语无需指代相同的实施例。而且,当结合实施例描述具体的特征、结构或特性时,认为其在本领域普通技术人员结合显式地或未显式地描述的其他实施例实施这种特征、结构或特性的知识范围内。
在某些情况下,可在硬件、固件、软件、或其组合中实现所公开的实施例。所公开的实施例还可被实现为由瞬态或非瞬态机器可读(例如计算机可读)介质携带或存储在其上的指令,这些指令可由一个或多个处理器读取并执行。机器可读存储介质可被实施为任何用于存储或传输机器(例如,易失性或非易失性存储器、介质盘、或其他介质设备)可读形式的信息的设备、机构、或其他物理结构。
在附图中,可根据具体的安排和/或顺序示出某些结构或方法特征。然而,应当认识到可不要求这种特定安排和/或顺序。而是,在某些实施例中,可以用与说明性附图中所示的那些不同的方式和/或顺序安排这种特征。此外,具体特征包括结构或方法特征不旨在暗示这种特征在所有实施例中都被要求并且在某些实施例中可不被包括或可与其他特征组合。
现在参考图1,用于云协助基于浏览器的应用安全验证的系统100包括客户机计算设备102、网络104、web服务器106、云服务系统108以及云资源110,云资源110可位于云服务系统108内部或外部。在使用时,如以下更详细讨论的,客户机计算设备102可响应于云服务系统108有关从web服务器106请求的基于浏览器的应用304(参见图3)的安全的积极建议安全地发起基于浏览器的应用304。尽管仅在图1中说明性地示出一个客户机计算设备102、一个网络104、一个web服务器106、一个云服务系统108和一个云资源110,但是系统100在其他实施例中可包括任何数量的客户机计算设备102、网络104、web服务器106、云服务系统108和云资源110。例如,在某些实施例中,一个云服务系统108可与若干个客户机计算设备102通过若干网络104通信以便验证从多个web服务器106请求的多个基于浏览器的应用304的安全。
客户机计算设备102可被实施为能够执行在此描述的功能的任何类型的计算设备。例如,客户机计算设备102可被实施为企业级服务器、台式计算机、膝上计算机、移动互联网设备、手持式计算机、智能电话、个人数字助理、电话设备或其他计算设备。在图1的说明性实施例中,客户机计算设备102包括处理器112、I/O子系统114、存储器116、通信电路118、数据存储设备120、以及一个或多个外围设备122。在某些实施例中,前述组件中的若干组件可被结合到客户机计算设备102的母板上,而其他组件可通过例如外围端口通信地耦合到母板。进一步地,应当认识到客户机计算设备102可包括在计算机和/或计算设备中通常发现的其他组件、子组件、以及设备,为了描述清晰的目的,未在图1中示出。
客户机计算设备102的处理器112可被实施为能够执行软件/固件的任何类型的处理器(诸如微处理器、数字信号处理器、微控制器等等)。在某些实施例中,处理器112可以是具有处理器核心的单核处理器。然而,在其他实施例中,处理器112可被实施为具有多个处理器核心的多核处理器。此外,客户机计算设备102可包括具有一个或多个处理器核心的附加处理器112。
客户机计算设备102的I/O子系统114可被实施为用于促成与处理器112和/或客户机计算设备102的其他组件的输入/输出操作的电路和/或组件。在某些实施例中,I/O子系统114可被实施为存储器控制器中枢(MCH或“北桥”)、输入/输出控制器中枢(ICH或“南桥”)以及固件设备。在这种实施例中,I/O子系统114的固件设备可被实施为用于存储基本输入/输出系统(BIOS)数据和/或指令和/或其他信息(例如,在客户机计算设备102的启动期间使用的BIOS驱动程序)的存储器设备。然而,在其他实施例中,可使用具有其他配置的I/O子系统。例如,在某些实施例中,I/O子系统114可被实施为平台控制器中枢(PCH)。在这种实施例中,存储器控制器中枢(MCH)可被结合到处理器112中或以其他方式与其相关联,并且处理器112可直接与存储器116通信(如图1中的虚线所示)。此外,在某些实施例中,I/O子系统114可形成片上系统(SoC)的一部分并且可与客户机计算设备102的处理器112和其他组件一起结合到单个集成电路芯片上。
处理器112通过多条信号路径通信地耦合到I/O子系统110。这些信号路径(以及图1中示出的其他信号路径)可被实施为能够促成客户机计算设备102的组件之间的通信的任何类型的信号路径。例如,这些信号路径可被实施为任何数量的接线、线缆、光导、印刷电路板迹线、过孔、总线、介入设备等等。
客户机计算设备102的存储器116可被实施为或以其他方式包括一个或多个存储器设备或数据存储设备单元,其包括例如动态随机存取存储器设备(DRAM)、同步动态随机存取存储器设备(SDRAM)、双数据速率同步动态随机存取存储器设备(DDR SDRAM)、掩码只读存储器(ROM)设备、可擦可编程ROM(EPROM)、电可擦可编程ROM(EEPROM)设备、闪存设备、和/或其他易失性和/或非易失性存储器设备。存储器116通过多条信号路径通信地耦合到I/O子系统114。尽管在图1中仅示出单个存储器设备116,但是在其他实施例中,客户机计算设备102可包括附加存储器设备。各种数据和软件可被存储在存储器设备116中。例如,组成处理器112执行的软件堆栈的一个或多个操作系统、应用、程序、库、以及驱动程序可在执行期间驻留在存储器116中。进一步地,存储在存储器116中的软件和数据可在存储器116和数据存储设备120之间交换,作为存储器管理操作的一部分。
客户机计算设备102的通信电路118可被实施为用于使能客户机计算设备102和远程计算设备(例如,web服务器106和云服务系统108)之间的通过网络104的通信的任何数量的设备和电路。网络104可被实施为任何数量的各种有线和/或无线通信网络。例如,网络104可被实施为或以其他方式包括局域网(LAN)、广域网(WAN)、或公共可访问的全球网络(诸如因特网)。此外,网络104可包括任何数量的附加设备,以便促成客户机计算设备102、web服务器106和云服务系统108之间的通信。客户机计算设备102、web服务器106和云服务系统108可使用任何合适的通信协议通过网络104与彼此通信,这取决于例如网络104的具体类型。在图1的说明性实施例中,云服务系统108还可通过网络104与云资源110通信。在某些实施例中,云资源110可由云服务系统108访问但是不能由客户机计算设备102和/或web服务器106访问。
数据存储设备120可被实施为被配置成用于数据的短期或长期存储的任何类型的设备,诸如例如存储器设备和电路、存储器卡、硬盘驱动器、固态驱动器、或其他数据存储设备。例如,如以下更详细描述的,在某些实施例中,基于浏览器的应用304的一部分(即,可执行代码)可被存储在数据存储设备120的安全位置以便由本地代码分析模块308(见图3)访问。
客户机计算设备102的外围设备122可包括任何数量的外围或接口设备。例如,外围设备122可包括显示器、键盘、鼠标、外部扬声器和/或其他外围设备。包括在外围设备122中的具体设备可取决于例如客户机计算设备102的预期用途。外围设备122通过多个信号路径通信地耦合到I/O子系统114,由此允许I/O子系统114和/或处理器112从外围设备122接收输入并向其发送输出。
web服务器106可被实施为能够执行在此描述的功能的任何类型的数据服务器或其他计算设备。例如,图1的说明性实施例中的web服务器106能够生成基于浏览器的应用304并通过网络104向客户机计算设备102传输基于浏览器的应用304。在某些实施例中,web服务器106可包括类似于以上描述的客户机计算设备102的组件的组件。应当认识到web服务器106可包括在服务器和/或计算设备中通常发现的其他组件、子组件、以及设备,为了描述清晰的目的,未在图1中示出。此外,尽管web服务器106在图1中被示出为单个单独的web服务器,但是web服务器106可被实施为如上所述的能够生成并传输基于浏览器的应用304的web服务器和/或类似设备的集合。
在图1的说明性实施例中,云服务系统108被实施为包括处理器124、I/O子系统126、存储器130、数据存储设备132、本地数据库134、以及一个或多个外围设备136的云服务服务器。在某些实施例中,前述组件中的若干组件可被结合到云服务系统108的母板上,而其他组件可通过例如外围端口通信地耦合到母板。进一步地,应当认识到云服务系统108可包括在服务器和/或计算设备中通常发现的其他组件、子组件、以及设备,为了描述清晰的目的,未在图1中示出。此外,尽管云服务系统108在图1中被示出为单个单独的云服务服务器以及在以下作为单个单独的云服务服务器来讨论,但是云服务系统108可被实施为合作以便提供如以下所讨论的一个或多个云服务的云服务器和/或类似设备的集合。
云服务系统108的处理器124、I/O子系统126、存储器128、通信电路130、数据存储设备132和一个或多个外围设备136可类似于如上所述的客户机计算设备102的相应组件。这样,客户机计算设备102的这种类似组件的描述可等同地应用于云服务系统108的类似组件并且为了本描述清晰的目的未在此重复。此外,云服务系统108的本地数据库134可被实施为适合用于存储有关基于浏览器的应用304的安全以及基于浏览器的应用304的源的数据的任何电子安排或结构。
在图1的说明性实施例中,云资源110包括可由云服务系统108用于认证基于浏览器的应用304的源和/或验证基于浏览器的应用304的完整性的数据和其他电子资源。在某些实施例中,云资源110可包括属于与云服务系统108相同的云计算环境的其他服务器和/或计算设备。在其他实施例中,云资源110可包括用于存储基于浏览器的应用验证数据和/或源认证数据的一个或多个数据库或其他数据结构。
在使用时,如图2所示,云服务系统108可建立用于为云服务系统108上的基于浏览器的应用304生成安全建议的环境200。在说明性实施例中,环境200包括源认证模块202、应用验证模块204、建议引擎206和通信模块208,其各自可被实施为软件、固件、硬件或其组合。
源认证模块202被配置成用于认证基于浏览器的应用304的源(例如,从其下载基于浏览器的应用304的网站)。为了这样做,源认证模块202可从云服务系统108的本地数据库118和/或云资源110检索源认证数据。源认证数据可被实施为可由源认证模块202使用的任何类型的数据以便确定基于浏览器的应用304的源的可信度。例如,源认证数据可被实施为或以其他方式包括标识已知信任和/或恶意的基于浏览器的应用304分发者或主机(例如,网站)的信息。
源认证模块202还可从客户机计算设备102或web服务器106接收标识基于浏览器的应用304的具体源的应用源数据。在这种实施例中,源认证模块202可通过对应用源数据与源认证数据进行比较来认证基于浏览器的应用304的源以便确定基于浏览器的应用304的所标识的源是否是安全的可信任的主机或实体。
应用验证模块204被配置成用于验证基于浏览器的应用304本身的安全。为了这样做,在一些实施例中,应用验证模块204可从云服务系统108的本地数据库118检索应用校验数据和/或从云资源110检索应用校验数据。应用校验数据可被实施为应用验证模块204可将其与基于浏览器的应用304代码进行比较的信任源代码。在这种实施例中,应用验证模块204可将信任源代码与基于浏览器的应用的代码进行比较以便验证基于浏览器的应用304的安全。此外或可替代地,应用校验数据可包括应用验证模块204可用于分析基于浏览器的应用304的代码的已知病毒签名或图案。也就是,应用验证模块204可执行基于浏览器的应用304的代码分析以便确定基于浏览器的应用304是否包含恶意代码或是否以其他方式是欺诈性的。此外,在某些实施例中,应用验证模块204可确定基于浏览器的应用304的开发者/公开者的身份。例如,类似于源认证数据,应用校验数据可包括可由应用验证模块204用于验证基于浏览器的应用304的安全的有关已知信任和恶意的基于浏览器的应用304开发者和公开者的信息。
建议引擎206被配置成用于基于源认证模块202和/或应用验证模块204执行的分析向客户机计算设备102提供有关基于浏览器的应用304的安全的建议。如上所述,源认证模块202分析基于浏览器的应用304的源,并且应用验证模块204分析基于浏览器的应用304本身。在某些实施例中,建议引擎206可将源认证模块202与应用验证模块204的分析相关以便确定基于浏览器的应用304是否是安全的并且为客户机计算设备102提出建议。建议引擎206的安全建议可具有许多不同的形式。例如,在某些实施例中,建议引擎206可建议仅在源认证模块202确定基于浏览器的应用304的源是信任源和/或应用验证模块204确定基于浏览器的应用304是由信任方开发或公开时客户机计算设备102执行基于浏览器的应用304。在其他实施例中,建议引擎206可为客户机计算设备102提供基于浏览器的应用304是安全的百分比可能性或以其他方式使建议基于某个阈值。当然,可在其他实施例中使用其他形式的建议。建议引擎206可使用通信模块208向客户机传输建议,其中通信模块208处理云服务系统108和系统100的其他设备之间的通信。
现在参考图3,在使用时,客户机计算设备102可建立用于验证客户机计算设备102所请求的基于浏览器的应用304的安全的环境300。在说明性实施例中,环境300包括浏览器302、基于浏览器的应用304、应用安全模块306、本地代码分析模块308和通信模块310,其各自可被实施为软件、硬件、固件、和/或其组合。
客户机计算设备102的浏览器302可用于从web服务器106请求和解释基于浏览器的应用304。在某些实施例中,基于浏览器的应用304可被实施为超文本标记语言5(HTML5)应用。在其他实施例中,基于浏览器的应用304可被实施为能够由客户机计算设备102的浏览器302执行和/或解释的任何软件应用。
应用安全模块306被配置成用于在客户机计算设备102上执行基于浏览器的应用304的安全验证。应用安全模块306可被实施为独立模块或者在某些实施例中被实施为浏览器插件。如以下所讨论的,如果浏览器302已经请求基于浏览器的应用304,应用安全模块306可使用通信模块310请求云服务系统108验证所请求的基于浏览器的应用304的安全,其中通信模块310从云服务系统108接收验证结果。在某些实施例中,应用安全模块306可将该请求转发至云服务系统108以便在允许浏览器302执行基于浏览器的应用304或下载基于浏览器的应用304的任何部分之前进行分析。此外,在某些实施例中,云服务系统108的验证结果可包括有待由客户机计算设备102执行的指令或指示。在这种实施例中,应用安全模块306被配置成用于执行这种附加指令或动作,其可包括任何类型的安全动作,诸如例如删除或隔离基于浏览器的应用304。
在某些实施例中,客户机计算设备102还可包括本地代码分析模块308。在这种实施例中,本地代码分析模块308可被配置成用于确定基于浏览器的应用304是否包括恶意代码或其是否以其他方式是欺诈性的,类似于云服务系统108的应用验证模块204。例如,在某些实施例中,本地代码分析模块308可进一步在从云服务系统108接收到建议之后分析基于浏览器的应用304和/或执行有关基于浏览器的应用304的附加安全措施。
现在参考图4,可由云服务系统108执行的用于生成有关基于浏览器的应用304的安全建议的方法400的说明性实施例以框402开始。在框402中,云服务系统108确定是否已经从客户机计算设备102接收到验证基于浏览器的应用304的安全的应用验证请求。如果已经接收到,云服务系统108在框404中接收基于浏览器的应用304或基于浏览器的应用304的代码的一部分。在某些实施例中,云服务系统108可在框404中从客户机计算设备102接收指示基于浏览器的应用304的位置的元数据并且在指定的位置从web服务器106下载基于浏览器的应用304。例如,客户机计算设备102可向云服务系统108提供基于浏览器的应用304的统一资源定位符(URL)。云服务系统108可使用客户机计算设备102提供的位置信息检索基于浏览器的应用304用于分析。
在框406中,云服务系统108对基于浏览器的应用304的源进行认证。为了这样做,云服务系统108可在框408中另外从客户机计算设备102接收应用源数据。如以上所讨论的,应用源数据可被实施为标识基于浏览器的应用304的源的任何类型的数据。例如,应用源数据可标识与基于浏览器的应用304相关联的顶级域、子域或互联网协议(IP)地址。可替代地,在未具体地标识应用源数据的实施例中,云服务系统108可使用客户机计算设备在框404中提供的位置数据以便确定基于浏览器的应用304的源。在某些实施例中,云服务系统108可从远程服务器而不是客户机计算设备102或web服务器106下载基于浏览器的应用304和/或应用源数据。
在某些实施例中,云服务系统108的源认证模块202可在框410中从云服务系统108的本地数据库118和/或从云资源410检索源认证数据。如以上所讨论的,源认证数据可被实施为或以其他方式包括可由云服务系统108使用的任何类型的数据以便确定基于浏览器的应用304的源的可信度。例如,源认证数据可包括标识恶意的基于浏览器的应用304的已知主机的数据。在其他实施例中,源认证数据可包括标识基于浏览器的应用304的信任主机的数据。在再其他的实施例中,源认证数据可包括之前描述的信息和/或与基于浏览器的应用304的源的可信度有关的信息的组合。这样,在某些实施例中,云服务系统108可在框406中通过将所标识的应用源数据与所检索的源认证模块进行比较以便确定所标识的源的信任性(或缺少信任性)来认证基于浏览器的应用304的源。
在框412中,云服务系统108对基于浏览器的应用304本身的安全进行验证。为了这样做,云服务系统108可在框412中检索应用校验数据。类似于在框410中检索的源认证数据,云服务系统108可在框414中从云服务系统108的本地数据库118和/或从云资源110检索应用校验数据。应用校验数据可被实施为可由云服务系统108使用的任何类型的数据以便验证基于浏览器的应用304的安全(例如,信任性、恶意性等等)。例如,如以上所讨论的,应用校验数据可被实施为已知信任源代码。此外或可替代地,应用校验数据可被实施为或以其他方式包括已知病毒或其他恶意软件的签名和图案。进一步地,应用校验数据可包括有关已知的基于浏览器的应用304开发者和公开者的可信度的信息。
云服务系统108可在框412中通过将在框404中检索的基于浏览器的应用304与在框414中检索的应用校验数据进行比较来验证基于浏览器的应用304的安全和完整性。例如,云服务系统108可执行基于浏览器的应用304的代码分析以及对基于浏览器的应用304与恶意软件签名进行比较以便确定基于浏览器的应用304是否包含恶意代码或是否以其他方式是欺诈性的。此外或可替代地,云服务系统108可分析基于浏览器的应用304的代码以便验证该代码在客户机计算设备102中是稳定的并且可安全地操作。在这种实施例中,建议引擎206可通知客户机计算设备102基于浏览器的应用304的最稳定当前版本的位置。
应当认识到方法400的框406和412中可以按照任何顺序出现或者可并行发生。进一步地,在某些实施例中,如果框406和412中的任一个提供基于浏览器的应用304或其源不安全的指示,云服务系统108可或可不执行另一个框。而是,云服务系统108可简单地建议客户机计算设备102不下载或执行基于浏览器的应用304,如下所述。
在框416,云服务系统108可根据框406的源认证和框412的基于浏览器的应用验证为客户机计算设备102生成安全建议。如上所述,安全建议为客户机计算设备102提供有关基于浏览器的应用304是否是安全的的某种指示。例如,云服务系统108可建议客户机计算设备102执行基于浏览器的应用304,如果源和基于浏览器的应用304都已经被确定为是安全的。否则,云服务系统108可建议客户机计算设备102不下载或执行基于浏览器的应用304并且删除基于浏览器的应用代码的任何已下载部分。在其他实施例中,云服务系统108可生成基于浏览器的应用304是安全的可能性(例如,表达为百分比或其他数字表示),并且客户机计算设备102可使用这种可能性确定是否执行基于浏览器的应用304。也就是,云服务系统108可标识基于浏览器的应用304的信任等级。例如,基于浏览器的应用304可被标识为安全的,如果基于浏览器的应用304及其源已经被确定为是安全的;可被标识为可能是不安全的,如果基于浏览器的应用304及其源中的仅一个已经被确定为是安全的;以及可被标识为不安全的,如果基于浏览器的应用304及其源都已经被确定为是不安全的。在框418中,云服务系统108可用从云资源110接收的其建议和/或安全信息更新本地数据库118。
在框420中,云服务系统108可向客户机计算设备102传输在框416中生成的安全建议。其后,云服务系统108可在框422中从客户机计算设备102接收反馈。在某些实施例中,该反馈可包括客户机计算设备102响应于该安全建议采取的安全动作。例如,该反馈可指示客户机计算设备102是否执行过基于浏览器的应用304。此外,该反馈可指示客户机计算设备102例如通知过用户该安全建议、删除过或避免过下载基于浏览器的应用或者隔离过基于浏览器的应用304。在客户机计算设备102执行基于浏览器的应用304的本地安全分析的实施例中(见图5的框512),该反馈还可包括本地安全分析结果。在框424,云服务系统108可用从客户机计算设备102接收的反馈更新本地数据库118。
现在参考图5,可由客户机计算设备102执行的用于验证基于浏览器的应用304的安全的方法500的说明性实施例以框502开始。在框502中,客户机计算设备102确定基于浏览器的应用304是否已经被请求过。例如,在某些实施例中,客户机计算设备102的安全模块306可监控浏览器302以便确定客户机计算设备102的用户何时执行指向基于浏览器的应用304的超链接。如果客户机计算设备102确定基于浏览器的应用304已经被请求过,客户机计算设备102在框504中向云服务系统108传输验证基于浏览器的应用304的安全的请求。如上所述,在这样做时,客户机计算设备102可在框506中向云服务系统108传输基于浏览器的应用304或基于浏览器的应用304的任何已下载部分或其源代码。可替代地,客户机计算设备102可在框508中传输标识基于浏览器的应用304可用于云服务系统108的位置的数据。例如,客户机计算设备102可向云服务系统108传输基于浏览器的应用304的URL。在图5的说明性实施例中,客户机计算设备102不执行基于浏览器的应用304,直至云服务系统108验证基于浏览器的应用304的安全(如图5中的双波浪线符号所指示的)。
在框510中,客户机计算设备102从云服务系统108接收该安全建议。如上所述,该安全建议可指示例如基于浏览器的应用304是否是安全的和/或基于浏览器的应用304的安全等级。在某些实施例中,类似于在云服务系统108上验证基于浏览器的应用304的安全,在框512中,客户机计算设备102可下载并执行基于浏览器的应用304的本地安全分析。客户机计算设备102的本地代码分析模块308可对基于浏览器的应用304与病毒或恶意软件签名和图案进行比较以便确定基于浏览器的应用304是否包含恶意代码。在其他实施例中,客户机计算设备102可执行附加或可替代的代码分析,以便本地地验证基于浏览器的应用304的安全。此外,在某些实施例中,在框512中执行的本地安全分析可在客户机计算设备102向云服务系统108传输基于浏览器的应用304之前执行。在这种实施例中,如果客户机计算设备102本地地确定基于浏览器的应用304具有安全风险(例如,包括恶意软件),客户机计算设备102可简单地在那时丢弃基于浏览器的应用304而不将其发送到云服务系统108。在其他实施例中,客户机计算设备102可向云服务系统108传输基于浏览器的应用304,而不管本地安全分析的结果如何。
在框514中,客户机计算设备102可基于在框510中从云服务器接收的安全建议执行安全动作。在某些实施例中,客户机计算设备102可通知用户该安全建议(例如,如果该安全建议是不下载/执行基于浏览器的应用304)。例如,在框516中,可通过浏览器302或另一个图形用户接口通知客户机计算设备102的用户。在其他实施例中,客户机计算设备102可在框518中从客户机计算设备102的存储器116删除基于浏览器的应用304的源代码或者其任何已下载部分。在客户机计算设备102尚未下载基于浏览器的应用304的任何部分的实施例中,客户机计算设备102可阻止用户下载基于浏览器的应用304。在其他实施例中,客户机计算设备102可在框520中在客户机计算设备102的存储器116的安全位置中隔离基于浏览器的应用304或者其任何已下载部分。如果云服务系统108确定基于浏览器的应用304是安全的,然而,客户机计算设备102可下载并执行基于浏览器的应用304。在客户机计算设备102在框512执行本地安全分析的实施例中,客户机计算设备102可另外考虑本地安全分析,除云服务系统108安全建议之外。
在框522,客户机计算设备102可向云服务系统108传输反馈。如上所述,该反馈可包括客户机计算设备102响应于该安全建议采取的安全动作。此外,该反馈可包括由客户机计算设备102在基于浏览器的应用304上执行的任何本地安全分析的结果。云服务系统108可使用该反馈用相关的基于浏览器的应用安全信息更新云服务系统108的本地数据库。
示例
以下提供在此公开的设备、系统、和方法的说明性示例。设备、系统、和方法的实施例可包括以下所描述的示例中的任何一个或多个以及任何组合。
示例1包括一种用于为基于浏览器的应用生成安全建议的云服务系统。该云服务器包括:通信模块,用于从客户机计算设备接收应用验证请求;源认证(authentication)模块,用于(i)接收标识该基于浏览器的应用的源的应用源数据,(ii)检索源认证数据;以及(iii)根据该应用源数据以及该源认证数据认证该源;应用验证(verification)模块,用于(i)检索应用校验(validation)数据,以及(ii)根据该应用校验数据验证该基于浏览器的应用;以及建议引擎,用于响应于该源认证模块的认证以及该应用验证模块的验证生成安全建议;其中,该通信模块进一步用于将该安全建议传输到该客户机计算设备。
示例2包括示例1所述的主题,并且其中,该源认证模块用于(i)接收标识该基于浏览器的应用的位置的位置数据,以及(ii)从位于所标识的位置的web服务器下载该基于浏览器的应用。
示例3包括示例1和2中任一项所述的主题,并且其中,该位置数据包括该基于浏览器的应用的统一资源定位符。
示例4包括示例1-3中任一项所述的主题,并且其中,该源认证模块用于从除该客户机计算设备之外的远程位置检索该应用源数据并且该应用验证模块用于从该远程位置检索该基于浏览器的应用。
示例5包括示例1-4中任一项所述的主题,并且其中,该安全建议标识该基于浏览器的应用的信任等级。
示例6包括示例1-5中任一项所述的主题,并且其中,该建议引擎用于响应于该安全建议从该客户机计算设备接收反馈。
示例7包括示例1-6中任一项所述的主题,并且其中,该反馈指示由该客户机计算设备采取的安全动作。
示例8包括示例1-7中任一项所述的主题,并且其中,该建议引擎用于响应于从该客户机计算设备接收到反馈更新该云服务器的本地数据库。
示例9包括示例1-8中任一项所述的主题,并且其中,该应用源数据标识该基于浏览器的应用的主机。
示例10包括示例1-9中任一项所述的主题,并且其中,该应用源数据指示该基于浏览器的应用在其处可用的互联网协议地址。
示例11包括示例1-10中任一项所述的主题,并且其中,该源认证模块用于从该云服务器的本地数据库检索该源认证数据并且该应用验证模块用于从该本地数据库检索该应用校验数据。
示例12包括示例1-11中任一项所述的主题,并且其中,该源认证模块用于从该云服务器可访问的云资源检索该源认证数据并且该应用验证模块用于从该云资源检索该应用校验数据。
示例13包括示例1-12中任一项所述的主题,并且其中,该源认证模块用于通过将该应用源数据与该源认证数据进行比较来认证该源,其中,该源认证数据包括已知恶意的(malicious)基于浏览器的应用主机(hosts)列表。
示例14包括示例1-13中任一项所述的主题,并且其中,该应用验证模块用于通过将该基于浏览器的应用与该基于浏览器的应用的信任源代码进行比较来验证该基于浏览器的应用的安全。
示例15包括示例1-14中任一项所述的主题,并且其中,该应用验证模块用于通过将该基于浏览器的应用与该应用校验数据进行比较来验证该基于浏览器的应用的安全,其中,该应用校验数据包括已知恶意软件(malware)签名。
示例16包括示例1-15中任一项所述的主题,并且其中,该应用验证模块用于从该云服务器可访问的云资源检索该应用校验数据。
示例17包括示例1-16中任一项所述的主题,并且其中,该应用验证模块用于从该云服务器的本地数据库检索该应用校验数据。
示例18包括示例1-17中任一项所述的主题,并且其中,该安全建议指示该基于浏览器的应用是否是安全的。
示例19包括示例1-18中任一项所述的主题,并且其中,该建议引擎用于响应于生成该安全建议来更新该云服务器的本地数据库。
示例20包括示例1-19中任一项所述的主题,并且其中,该基于浏览器的应用是超文本标记语言5应用或其他web应用。
示例21包括一种用于验证基于浏览器的应用的安全的客户机计算设备。该客户机计算设备包括:应用安全模块,用于(i)确定该客户机计算设备是否已经请求该基于浏览器的应用,以及(ii)响应于确定该基于浏览器的应用已经被请求,向云服务系统传输应用验证请求以便验证该基于浏览器的应用的安全;以及通信模块,用于从该云服务系统接收安全建议;其中,该应用安全模块进一步用于响应于该安全建议执行安全动作。
示例22包括示例21所述的主题,并且其中,该基于浏览器的应用是超文本标记语言5应用或其他web应用。
示例23包括示例21和22中任一项所述的主题,并且其中,该应用安全模块确定该客户机计算设备是否已经请求该基于浏览器的应用包括确定该客户机计算设备是否已经执行指向该基于浏览器的应用的超链接。
示例24包括示例21-23中任一项所述的主题,并且其中,该应用安全模块传输该应用验证请求包括向该云服务系统传输该基于浏览器的应用的源代码的至少一部分。
示例25包括示例21-24中任一项所述的主题,并且其中,该应用安全模块传输该应用验证请求包括传输指示该基于浏览器的应用在其处可用的位置的位置数据。
示例26包括示例21-25中任一项所述的主题,并且其中,该位置数据包括该基于浏览器的应用的统一资源定位符。
示例27包括示例21-26中任一项所述的主题,并且其中,该安全动作包括通知该客户机计算设备的用户该安全建议。
示例28包括示例21-27中任一项所述的主题,并且其中,该安全动作包括从该客户机计算设备删除该基于浏览器的应用的源代码。
示例29包括示例21-28中任一项所述的主题,并且其中,该安全动作包括防止将该基于浏览器的应用下载到该客户机计算设备的存储器。
示例30包括示例21-29中任一项所述的主题,并且其中,该安全动作包括在该客户机计算设备的存储器的安全位置隔离(quarantining)该基于浏览器的应用。
示例31包括示例21-30中任一项所述的主题,并且其中,该应用安全模块用于向该云服务系统传输反馈。
示例32包括示例21-31中任一项所述的主题,并且进一步包括指示由该客户机计算设备采取的安全动作的该反馈。
示例33包括示例21-32中任一项所述的主题,并且进一步包括本地代码分析模块,用于在该客户机计算设备上执行该基于浏览器的应用的本地安全分析。
示例34包括示例21-33中任一项所述的主题,并且其中,该本地安全分析包括将该基于浏览器的应用与病毒签名进行比较。
示例35包括一种用于在云服务系统上为基于浏览器的应用生成安全建议的方法。该方法包括:接收该基于浏览器的应用以及标识该基于浏览器的应用的源的应用源数据;检索源认证数据和应用校验数据;根据该应用源数据和该源认证数据认证该源;根据该应用校验数据认证该基于浏览器的应用的安全;根据认证该源以及验证该基于浏览器的应用生成安全建议;以及向客户机计算设备传输所述安全建议。
示例36包括示例35所述的主题,并且其中,接收该基于浏览器的应用包括(i)接收标识该基于浏览器的应用的位置的位置数据,以及(ii)从位于所标识的位置的web服务器下载该基于浏览器的应用。
示例37包括示例35和36中任一项所述的主题,并且其中,接收标识该基于浏览器的应用的位置的位置数据包括接收该基于浏览器的应用的统一资源定位符。
示例38包括示例35-37中任一项所述的主题,并且进一步包括从该客户机计算设备接收生成有关该基于浏览器的应用的安全建议的请求。
示例39包括示例35-38中任一项所述的主题,并且其中,从除该客户机计算设备之外的远程位置接收该基于浏览器的应用和应用源数据。
示例40包括示例35-39中任一项所述的主题,并且其中,生成该安全建议包括标识该基于浏览器的应用的信任等级。
示例41包括示例35-40中任一项所述的主题,并且进一步包括响应于该安全建议从该客户机计算设备接收反馈。
示例42包括示例35-41中任一项所述的主题,并且其中,接收反馈包括接收指示由该客户机计算设备采取的动作的反馈。
示例43包括示例35-42中任一项所述的主题,并且进一步包括响应于从该客户机计算设备接收到反馈更新该云服务系统的本地数据库。
示例44包括示例35-43中任一项所述的主题,并且其中,接收应用源数据包括接收标识该基于浏览器的应用的主机的源数据。
示例45包括示例35-44中任一项所述的主题,并且其中,接收该源数据包括接收该基于浏览器的应用在其处可用的互联网协议地址。
示例46包括示例35-45中任一项所述的主题,并且其中,检索源认证数据和应用校验数据包括从该云服务系统的本地数据库检索源认证数据和应用校验数据。
示例47包括示例35-46中任一项所述的主题,并且其中,检索源认证数据和应用校验数据包括从该云服务系统可访问的云资源检索源认证数据和应用校验数据。
示例48包括示例35-47中任一项所述的主题,并且其中,认证该源包括将该应用源数据与该源认证数据进行比较,其中,该源认证数据包括已知恶意的基于浏览器的应用主机列表。
示例49包括示例35-48中任一项所述的主题,并且其中,验证该基于浏览器的应用的安全包括将该基于浏览器的应用与该基于浏览器的应用的信任源代码进行比较。
示例50包括示例35-49中任一项所述的主题,并且其中,验证该基于浏览器的应用的安全包括将该基于浏览器的应用与该应用校验数据进行比较,其中,该应用校验数据包括已知恶意软件签名。
示例51包括示例35-50中任一项所述的主题,并且其中,检索应用校验数据包括从该云服务系统可访问的云资源检索应用校验数据。
示例52包括示例35-51中任一项所述的主题,并且其中,检索应用校验数据包括从该云服务系统的本地数据库检索应用校验。
示例53包括示例35-52中任一项所述的主题,并且其中,生成安全建议包括指示该基于浏览器的应用是否是安全的。
示例54包括示例35-53中任一项所述的主题,并且进一步包括响应于生成该安全建议来更新该云服务系统的本地数据库。
示例55包括示例35-54中任一项所述的主题,并且其中,该基于浏览器的应用是超文本标记语言5应用或其他web应用。
示例56包括一种具有处理器和存储器的计算设备,该存储器其中存储有多条指令,当由该处理器执行时,该多条指令致使该计算设备执行示例35至55任一项所述的方法。
示例57包括一种或多种机器可读存储介质,包括存储在其上的多条指令,响应于被执行,该多条指令致使计算设备执行示例35至55任一项所述的方法。
示例58包括一种用于验证基于浏览器的应用的安全的方法。该方法包括:使用该客户机计算设备确定该客户机计算设备是否已经请求该基于浏览器的应用;响应于确定该基于浏览器的应用已经被请求,向云服务系统传输应用验证请求以便验证该基于浏览器的应用的安全;通过该客户机计算设备响应于传输该应用验证请求从该云服务系统接收安全建议;以及在该客户机计算设备上响应于从该云服务系统接收的该安全建议执行安全动作。
示例59包括示例58所述的主题,并且其中,该基于浏览器的应用是超文本标记语言5应用或其他web应用。
示例60包括示例58和59中任一项所述的主题,并且其中,确定该客户机计算设备是否已经请求该基于浏览器的应用包括确定该客户机计算设备是否已经执行指向该基于浏览器的应用的超链接。
示例61包括示例58-60中任一项所述的主题,并且其中,传输该应用验证请求包括向该云服务系统传输该基于浏览器的应用的源代码的至少一部分。
示例62包括示例58-61中任一项所述的主题,并且其中,传输该应用验证请求包括传输指示该基于浏览器的应用在其处可用的位置的位置数据。
示例63包括示例58-62中任一项所述的主题,并且其中,传输该位置数据包括传输该基于浏览器的应用的统一资源定位符。
示例64包括示例58-63中任一项所述的主题,并且其中,执行该安全动作包括通知该客户机计算设备的用户该安全建议。
示例65包括示例58-64中任一项所述的主题,并且其中,执行该安全动作包括从该客户机计算设备删除该基于浏览器的应用的源代码。
示例66包括示例58-65中任一项所述的主题,并且其中,执行该安全动作包括防止将该基于浏览器的应用下载到该客户机计算设备的存储器。
示例67包括示例58-66中任一项所述的主题,并且其中,执行该安全动作包括在该客户机计算设备的存储器的安全位置隔离该基于浏览器的应用。
示例68包括示例58-67中任一项所述的主题,并且进一步包括向该云服务系统传输反馈。
示例69包括示例58-68中任一项所述的主题,并且其中,向该云服务系统传输反馈包括传输指示由该客户机计算设备执行的该安全动作的反馈。
示例70包括示例58-69中任一项所述的主题,并且进一步包括在该客户机计算设备上执行该基于浏览器的应用的本地安全分析。
示例71包括示例58-70中任一项所述的主题,并且其中,执行该基于浏览器的应用的该本地安全分析包括将该基于浏览器的应用与病毒签名进行比较。
示例72包括一种具有处理器和存储器的计算设备,该存储器其中存储有多条指令,当由该处理器执行时,该多条指令致使该计算设备执行示例58至71任一项所述的方法。
示例73包括一种或多种机器可读存储介质,包括存储在其上的多条指令,响应于被执行,该多条指令致使计算设备执行如权利要求58至71任一项所述的方法。

Claims (73)

1.一种用于为基于浏览器的应用生成安全建议的云服务系统,所述云服务器包括:
通信模块,用于从客户机计算设备接收应用验证请求;
源认证模块,用于(i)接收标识所述基于浏览器的应用的源的应用源数据,(ii)检索源认证数据;以及(iii)根据所述应用源数据以及所述源认证数据认证所述源;
应用验证模块,用于(i)检索应用校验数据,以及(ii)根据所述应用校验数据验证所述基于浏览器的应用;以及
建议引擎,用于响应于所述源认证模块的认证以及所述应用验证模块的验证生成安全建议;
其中,所述通信模块进一步用于将所述安全建议传输到所述客户机计算设备。
2.如权利要求1所述的云服务系统,其中,所述源认证模块用于(i)接收标识所述基于浏览器的应用的位置的位置数据,以及(ii)从位于所标识的位置的web服务器下载所述基于浏览器的应用。
3.如权利要求2所述的云服务系统,其中,所述位置数据包括所述基于浏览器的应用的统一资源定位符。
4.如权利要求1所述的云服务系统,其中,所述源认证模块用于从除所述客户机计算设备之外的远程位置检索所述应用源数据并且所述应用验证模块用于从所述远程位置检索所述基于浏览器的应用。
5.如权利要求1所述的云服务系统,其中,所述安全建议标识所述基于浏览器的应用的信任等级。
6.如权利要求1所述的云服务系统,其中,所述建议引擎用于响应于所述安全建议从所述客户机计算设备接收反馈。
7.如权利要求6所述的云服务系统,其中,所述反馈指示由所述客户机计算设备采取的安全动作。
8.如权利要求6所述的云服务系统,其中,所述建议引擎用于响应于从所述客户机计算设备接收到反馈而更新所述云服务器的本地数据库。
9.如权利要求1所述的云服务系统,其中,所述应用源数据标识所述基于浏览器的应用的主机。
10.如权利要求1所述的云服务系统,其中,所述应用源数据指示所述基于浏览器的应用在其处可用的互联网协议地址。
11.如权利要求1所述的云服务系统,其中,所述源认证模块用于从所述云服务器的本地数据库检索所述源认证数据并且所述应用验证模块用于从所述本地数据库检索所述应用校验数据。
12.如权利要求1所述的云服务系统,其中,所述源认证模块用于从所述云服务器可访问的云资源检索所述源认证数据并且所述应用验证模块用于从所述云资源检索所述应用校验数据。
13.如权利要求1所述的云服务系统,其中,所述源认证模块用于通过将所述应用源数据与所述源认证数据进行比较来认证所述源,其中,所述源认证数据包括已知恶意的基于浏览器的应用主机列表。
14.如权利要求1所述的云服务系统,其中,所述应用验证模块用于通过将所述基于浏览器的应用与所述基于浏览器的应用的信任源代码进行比较来验证所述基于浏览器的应用的安全。
15.如权利要求1所述的云服务系统,其中,所述应用验证模块用于通过将所述基于浏览器的应用与所述应用校验数据进行比较来验证所述基于浏览器的应用的安全,其中,所述应用校验数据包括已知恶意软件签名。
16.如权利要求15所述的云服务系统,其中,所述应用验证模块用于从所述云服务器可访问的云资源检索所述应用校验数据。
17.如权利要求16所述的云服务系统,其中,所述应用验证模块用于从所述云服务器的本地数据库检索所述应用校验数据。
18.如权利要求1所述的云服务系统,其中,所述安全建议指示所述基于浏览器的应用是否是安全的。
19.如权利要求1所述的云服务系统,其中,所述建议引擎用于响应于生成所述安全建议来更新所述云服务器的本地数据库。
20.如权利要求1所述的云服务系统,其中,所述基于浏览器的应用是超文本标记语言5应用或其他web应用。
21.一种用于验证基于浏览器的应用的安全的客户机计算设备,所述客户机计算设备包括:
应用安全模块,用于(i)确定所述客户机计算设备是否已经请求所述基于浏览器的应用,以及(ii)响应于确定所述基于浏览器的应用已经被请求,向云服务系统传输应用验证请求以便验证所述基于浏览器的应用的安全;以及
通信模块,用于从所述云服务系统接收安全建议;
其中,所述应用安全模块进一步用于响应于所述安全建议执行安全动作。
22.如权利要求21所述的客户机计算设备,其中,所述基于浏览器的应用是超文本标记语言5应用或其他web应用。
23.如权利要求21所述的客户机计算设备,其中,所述应用安全模块确定所述客户机计算设备是否已经请求所述基于浏览器的应用包括:确定所述客户机计算设备是否已经执行指向所述基于浏览器的应用的超链接。
24.如权利要求21所述的客户机计算设备,其中,所述应用安全模块传输所述应用验证请求包括向所述云服务系统传输所述基于浏览器的应用的源代码的至少一部分。
25.如权利要求21所述的客户机计算设备,其中,所述应用安全模块传输所述应用验证请求包括传输指示所述基于浏览器的应用在其处可用的位置的位置数据。
26.如权利要求25所述的客户机计算设备,其中,所述位置数据包括所述基于浏览器的应用的统一资源定位符。
27.如权利要求21所述的客户机计算设备,其中,所述安全动作包括通知所述客户机计算设备的用户所述安全建议。
28.如权利要求21所述的客户机计算设备,其中,所述安全动作包括从所述客户机计算设备删除所述基于浏览器的应用的源代码。
29.如权利要求21所述的客户机计算设备,其中,所述安全动作包括防止将所述基于浏览器的应用下载到所述客户机计算设备的存储器。
30.如权利要求21所述的客户机计算设备,其中,所述安全动作包括在所述客户机计算设备的存储器的安全位置隔离所述基于浏览器的应用。
31.如权利要求21所述的客户机计算设备,其中,所述应用安全模块用于向所述云服务系统传输反馈。
32.如权利要求31所述的云服务系统,其中,所述反馈指示由所述客户机计算设备执行的所述安全动作。
33.如权利要求21所述的客户机计算设备,进一步包括本地代码分析模块,用于在所述客户机计算设备上执行所述基于浏览器的应用的本地安全分析。
34.如权利要求33所述的客户机计算设备,其中,所述本地安全分析包括将所述基于浏览器的应用与病毒签名进行比较。
35.一种用于在云服务器系统上为基于浏览器的应用生成安全建议的方法,所述方法包括:
接收所述基于浏览器的应用以及标识所述基于浏览器的应用的源的应用源数据;
检索源认证数据和应用校验数据;
根据所述应用源数据和所述源认证数据认证所述源;
根据所述应用校验数据认证所述基于浏览器的应用的安全;
根据认证所述源以及验证所述基于浏览器的应用生成安全建议;以及
向客户机计算设备传输所述安全建议。
36.如权利要求35所述的方法,其中,接收所述基于浏览器的应用包括(i)接收标识所述基于浏览器的应用的位置的位置数据,以及(ii)从位于所标识的位置的web服务器下载所述基于浏览器的应用。
37.如权利要求36所述的方法,其中,接收标识所述基于浏览器的应用的位置的位置数据包括接收所述基于浏览器的应用的统一资源定位符。
38.如权利要求35所述的方法,进一步包括从所述客户机计算设备接收生成有关所述基于浏览器的应用的安全建议的请求。
39.如权利要求38所述的方法,其中,从除所述客户机计算设备之外的远程位置接收所述基于浏览器的应用和应用源数据。
40.如权利要求38所述的方法,其中,生成所述安全建议包括标识所述基于浏览器的应用的信任等级。
41.如权利要求38所述的方法,进一步包括响应于所述安全建议而从所述客户机计算设备接收反馈。
42.如权利要求41所述的方法,其中,接收反馈包括接收指示由所述客户机计算设备采取的动作的反馈。
43.如权利要求41所述的方法,进一步包括响应于从所述客户机计算设备接收到反馈更新所述云服务系统的本地数据库。
44.如权利要求35所述的方法,其中,接收应用源数据包括接收标识所述基于浏览器的应用的主机的源数据。
45.如权利要求44所述的方法,其中,接收所述源数据包括接收所述基于浏览器的应用在其处可用的互联网协议地址。
46.如权利要求35所述的方法,其中,检索源认证数据和应用校验数据包括从所述云服务系统的本地数据库检索源认证数据和应用校验数据。
47.如权利要求35所述的方法,其中,检索源认证数据和应用校验数据包括从所述云服务系统可访问的云资源检索源认证数据和应用校验数据。
48.如权利要求35所述的方法,其中,认证所述源包括将所述应用源数据与所述源认证数据进行比较,其中,所述源认证数据包括已知恶意的基于浏览器的应用主机列表。
49.如权利要求35所述的方法,其中,验证所述基于浏览器的应用的安全包括将所述基于浏览器的应用与所述基于浏览器的应用的信任源代码进行比较。
50.如权利要求35所述的方法,其中,验证所述基于浏览器的应用的安全包括将所述基于浏览器的应用与所述应用校验数据进行比较,其中,所述应用校验数据包括已知恶意软件签名。
51.如权利要求50所述的方法,其中,检索应用校验数据包括从所述云服务系统可访问的云资源检索应用校验数据。
52.如权利要求51所述的方法,其中,检索应用校验数据包括从所述云服务系统的本地数据库检索应用校验。
53.如权利要求35所述的方法,其中,生成安全建议包括指示所述基于浏览器的应用是否是安全的。
54.如权利要求35所述的方法,进一步包括响应于生成所述安全建议来更新所述云服务系统的本地数据库。
55.如权利要求35所述的方法,其中,所述基于浏览器的应用是超文本标记语言5应用或其他web应用。
56.一种计算设备,包括:
处理器,以及
存储器,其中存储有多条指令,当由所述处理器执行时,所述指令致使所述计算设备执行如权利要求35至55任一项所述的方法。
57.一种或多种机器可读存储介质,包括存储在其上的多条指令,响应于被执行,所述指令致使计算设备执行如权利要求35至55任一项所述的方法。
58.一种用于验证基于浏览器的应用的安全的方法,所述方法包括:
使用所述客户机计算设备确定所述客户机计算设备是否已经请求所述基于浏览器的应用;
响应于确定所述基于浏览器的应用已经被请求,向云服务系统传输应用验证请求以便验证所述基于浏览器的应用的安全;
响应于传输所述应用验证请求,通过所述客户机计算设备从所述云服务系统接收安全建议;以及
响应于从所述云服务系统接收的所述安全建议,在所述客户机计算设备上执行安全动作。
59.如权利要求58所述的方法,其中,所述基于浏览器的应用是超文本标记语言5应用或其他web应用。
60.如权利要求58所述的方法,其中,确定所述客户机计算设备是否已经请求所述基于浏览器的应用包括确定所述客户机计算设备是否已经执行指向所述基于浏览器的应用的超链接。
61.如权利要求58所述的方法,其中,传输所述应用验证请求包括向所述云服务系统传输所述基于浏览器的应用的源代码的至少一部分。
62.如权利要求58所述的方法,其中,传输所述应用验证请求包括传输指示所述基于浏览器的应用在其处可用的位置的位置数据。
63.如权利要求62所述的方法,其中,传输所述位置数据包括传输所述基于浏览器的应用的统一资源定位符。
64.如权利要求58所述的方法,其中,执行所述安全动作包括通知所述客户机计算设备的用户所述安全建议。
65.如权利要求58所述的方法,其中,执行所述安全动作包括从所述客户机计算设备删除所述基于浏览器的应用的源代码。
66.如权利要求58所述的方法,其中,执行所述安全动作包括防止将所述基于浏览器的应用下载到所述客户机计算设备的存储器。
67.如权利要求58所述的方法,其中,执行所述安全动作包括在所述客户机计算设备的存储器的安全位置隔离所述基于浏览器的应用。
68.如权利要求58所述的方法,进一步包括向所述云服务系统传输反馈。
69.如权利要求68所述的方法,其中,向所述云服务系统传输反馈包括传输指示由所述客户机计算设备执行的所述安全动作的反馈。
70.如权利要求58所述的方法,进一步包括在所述客户机计算设备上执行所述基于浏览器的应用的本地安全分析。
71.如权利要求70所述的方法,其中,执行所述基于浏览器的应用的所述本地安全分析包括将所述基于浏览器的应用与病毒签名进行比较。
72.一种计算设备,包括:
处理器,以及
存储器,其中存储有多条指令,当由所述处理器执行时,所述指令致使所述计算设备执行如权利要求58至71任一项所述的方法。
73.一种或多种机器可读存储介质,包括存储在其上的多条指令,响应于被执行,所述指令致使计算设备执行如权利要求58至71任一项所述的方法。
CN201380045195.5A 2012-09-28 2013-09-27 用于应用安全验证的云协助方法及服务 Expired - Fee Related CN104584480B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/631,283 2012-09-28
US13/631,283 US9430640B2 (en) 2012-09-28 2012-09-28 Cloud-assisted method and service for application security verification
PCT/US2013/062407 WO2014052892A1 (en) 2012-09-28 2013-09-27 Cloud-assisted method and service for application security verification

Publications (2)

Publication Number Publication Date
CN104584480A true CN104584480A (zh) 2015-04-29
CN104584480B CN104584480B (zh) 2018-10-26

Family

ID=50386611

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380045195.5A Expired - Fee Related CN104584480B (zh) 2012-09-28 2013-09-27 用于应用安全验证的云协助方法及服务

Country Status (6)

Country Link
US (1) US9430640B2 (zh)
EP (1) EP2901615A4 (zh)
JP (1) JP6061364B2 (zh)
KR (1) KR101723937B1 (zh)
CN (1) CN104584480B (zh)
WO (1) WO2014052892A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110313000A (zh) * 2016-12-29 2019-10-08 英迈国际有限公司 用于在云服务市场中安全地扩展云服务api的技术
CN113646761A (zh) * 2019-01-24 2021-11-12 思杰系统有限公司 向应用提供应用安全、验证和特征分析

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9430640B2 (en) 2012-09-28 2016-08-30 Intel Corporation Cloud-assisted method and service for application security verification
US9436838B2 (en) * 2012-12-20 2016-09-06 Intel Corporation Secure local web application data manager
US9852290B1 (en) * 2013-07-12 2017-12-26 The Boeing Company Systems and methods of analyzing a software component
US9692789B2 (en) 2013-12-13 2017-06-27 Oracle International Corporation Techniques for cloud security monitoring and threat intelligence
US10063654B2 (en) 2013-12-13 2018-08-28 Oracle International Corporation Systems and methods for contextual and cross application threat detection and prediction in cloud applications
US9665718B2 (en) * 2014-03-14 2017-05-30 International Business Machines Corporation Correlating a task with commands to perform a change ticket in an IT system
CN104378345B (zh) * 2014-06-24 2016-04-13 腾讯科技(深圳)有限公司 移动客户端url的安全检测方法及系统
US9356969B2 (en) 2014-09-23 2016-05-31 Intel Corporation Technologies for multi-factor security analysis and runtime control
US9715597B2 (en) * 2014-09-25 2017-07-25 Mcafee, Inc. Data verification using enclave attestation
JP6717206B2 (ja) * 2015-01-29 2020-07-01 日本電気株式会社 マルウェア対策装置、マルウェア対策システム、マルウェア対策方法、及び、マルウェア対策プログラム
US9727737B1 (en) * 2015-07-27 2017-08-08 Amazon Technologies, Inc. Trustworthy indication of software integrity
US9667657B2 (en) * 2015-08-04 2017-05-30 AO Kaspersky Lab System and method of utilizing a dedicated computer security service
WO2017053768A1 (en) * 2015-09-24 2017-03-30 Saudi Arabian Oil Company Providing secure data transfer between networks
WO2017076257A1 (zh) * 2015-11-03 2017-05-11 国民技术股份有限公司 一种app认证的系统和方法
US10536478B2 (en) 2016-02-26 2020-01-14 Oracle International Corporation Techniques for discovering and managing security of applications
KR101875863B1 (ko) * 2016-09-08 2018-07-06 주식회사 유플렉스소프트 암호화된 해시값에 기반하여 클라우드 접속 허가를 결정하는 클라우드 시스템, 및 클라우드 접속 방법과 클라우드 단말에 설치된 소켓 데몬 장치
US9753834B1 (en) * 2016-12-19 2017-09-05 General Electric Company Certification process for cloud platform
US10333918B2 (en) * 2017-02-22 2019-06-25 Accenture Global Solutions Limited Automated system identification, authentication, and provisioning
JP7081210B2 (ja) * 2018-02-28 2022-06-07 ブラザー工業株式会社 アプリケーションプログラム
US10628244B1 (en) * 2019-10-29 2020-04-21 Snowflake Inc. Calling external functions from a data warehouse
CN111767489B (zh) * 2020-06-29 2024-04-19 百度在线网络技术(北京)有限公司 网页运行的加速方法、装置、设备以及存储介质
CN111859378B (zh) * 2020-07-31 2022-11-18 中国工商银行股份有限公司 保护数据模型的处理方法和装置
WO2022191746A1 (en) * 2021-03-11 2022-09-15 Telefonaktiebolaget Lm Ericsson (Publ) Adapting a communication device in a network node
US11843618B1 (en) * 2022-05-15 2023-12-12 Uab 360 It Optimized analysis for detecting harmful content

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080222238A1 (en) * 2007-03-08 2008-09-11 Microsoft Corporation Extending functionality of web-based applications
US20110167474A1 (en) * 2008-07-24 2011-07-07 Zscaler, Inc. Systems and methods for mobile application security classification and enforcement

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7467211B1 (en) 1999-10-18 2008-12-16 Cisco Technology Inc. Remote computer system management through an FTP internet connection
US20030177248A1 (en) 2001-09-05 2003-09-18 International Business Machines Corporation Apparatus and method for providing access rights information on computer accessible content
US8615800B2 (en) 2006-07-10 2013-12-24 Websense, Inc. System and method for analyzing web content
US20080104699A1 (en) 2006-09-28 2008-05-01 Microsoft Corporation Secure service computation
US20090070873A1 (en) 2007-09-11 2009-03-12 Yahoo! Inc. Safe web based interactions
US8806618B2 (en) 2008-03-31 2014-08-12 Microsoft Corporation Security by construction for distributed applications
ATE514274T1 (de) 2008-07-07 2011-07-15 Barracuda Networks Ag Sicherheitsfilterung für eine internetanwendung
US9235704B2 (en) * 2008-10-21 2016-01-12 Lookout, Inc. System and method for a scanning API
US8141158B2 (en) 2008-12-31 2012-03-20 International Business Machines Corporation Measuring coverage of application inputs for advanced web application security testing
JP5440973B2 (ja) * 2009-02-23 2014-03-12 独立行政法人情報通信研究機構 コンピュータ検査システム、コンピュータ検査方法
US8272065B2 (en) 2009-03-11 2012-09-18 Telefonaktiebolaget Lm Ericsson (Publ) Secure client-side aggregation of web applications
US8392973B2 (en) 2009-05-28 2013-03-05 International Business Machines Corporation Autonomous intelligent user identity manager with context recognition capabilities
US8479286B2 (en) * 2009-12-15 2013-07-02 Mcafee, Inc. Systems and methods for behavioral sandboxing
EP2402860B1 (en) * 2010-06-29 2020-10-07 Brother Kogyo Kabushiki Kaisha Data processing apparatus
WO2012023050A2 (en) 2010-08-20 2012-02-23 Overtis Group Limited Secure cloud computing system and method
US9235586B2 (en) * 2010-09-13 2016-01-12 Microsoft Technology Licensing, Llc Reputation checking obtained files
US9317680B2 (en) * 2010-10-20 2016-04-19 Mcafee, Inc. Method and system for protecting against unknown malicious activities by determining a reputation of a link
US8756691B2 (en) 2010-11-10 2014-06-17 Symantec Corporation IP-based blocking of malware
CN102469146B (zh) 2010-11-19 2015-11-25 北京奇虎科技有限公司 一种云安全下载方法
US20120192280A1 (en) 2011-01-20 2012-07-26 Board Of Trustees Of The University Of Illinois Apparatus for enhancing web application security and method therefor
US8726387B2 (en) 2011-02-11 2014-05-13 F-Secure Corporation Detecting a trojan horse
KR101295709B1 (ko) * 2011-08-24 2013-09-16 주식회사 팬택 백그라운드 프로세스에 대한 보안 정보 제공 장치 및 방법
US8181254B1 (en) 2011-10-28 2012-05-15 Google Inc. Setting default security features for use with web applications and extensions
US9053042B2 (en) 2012-06-27 2015-06-09 Intel Corporation Method, system, and device for modifying a secure enclave configuration without changing the enclave measurement
US9213827B2 (en) 2012-09-27 2015-12-15 Intel Corporation Security data aggregation and business intelligence for web applications
US8856864B2 (en) 2012-09-27 2014-10-07 Intel Corporation Detecting, enforcing and controlling access privileges based on sandbox usage
US9245144B2 (en) 2012-09-27 2016-01-26 Intel Corporation Secure data container for web applications
US9430640B2 (en) 2012-09-28 2016-08-30 Intel Corporation Cloud-assisted method and service for application security verification
US9092617B2 (en) 2012-11-08 2015-07-28 Intel Corporation Protecting systems from unauthorized access to system resources using browser independent web page technology
US9436838B2 (en) 2012-12-20 2016-09-06 Intel Corporation Secure local web application data manager
US8918837B2 (en) 2012-12-28 2014-12-23 Intel Corporation Web application container for client-level runtime control

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080222238A1 (en) * 2007-03-08 2008-09-11 Microsoft Corporation Extending functionality of web-based applications
US20110167474A1 (en) * 2008-07-24 2011-07-07 Zscaler, Inc. Systems and methods for mobile application security classification and enforcement

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110313000A (zh) * 2016-12-29 2019-10-08 英迈国际有限公司 用于在云服务市场中安全地扩展云服务api的技术
CN110313000B (zh) * 2016-12-29 2023-01-24 云蓝有限责任公司 用于在云服务市场中安全地扩展云服务api的方法
CN113646761A (zh) * 2019-01-24 2021-11-12 思杰系统有限公司 向应用提供应用安全、验证和特征分析

Also Published As

Publication number Publication date
US20140096241A1 (en) 2014-04-03
WO2014052892A1 (en) 2014-04-03
JP2015527685A (ja) 2015-09-17
CN104584480B (zh) 2018-10-26
KR20150040325A (ko) 2015-04-14
US9430640B2 (en) 2016-08-30
KR101723937B1 (ko) 2017-04-06
JP6061364B2 (ja) 2017-01-18
EP2901615A4 (en) 2016-06-22
EP2901615A1 (en) 2015-08-05

Similar Documents

Publication Publication Date Title
CN104584480A (zh) 用于应用安全验证的云协助方法及服务
US10871953B2 (en) Application update method and apparatus
EP3203709B1 (en) Cloud service server and method for managing cloud service server
EP3044936B1 (en) Method and apparatus of downloading and installing a client
CN110764807B (zh) 一种升级方法、系统、服务器及终端设备
CN108650236B (zh) 一种用于检测ssl中间人攻击的方法与设备
CN103634301A (zh) 客户端及其访问服务器中用户存储的私有数据的方法
CN107396364B (zh) 一种用于对用户设备进行无线连接预授权的方法与设备
CN111355720B (zh) 一种应用访问内网方法、系统、设备及计算机存储介质
JP2011100489A (ja) ユーザ確認装置、方法及びプログラム
CN104735086A (zh) 一种文件的安全下载方法和装置
CN110418344A (zh) 一种设备身份标识生成的方法及装置
CN109818972B (zh) 一种工业控制系统信息安全管理方法、装置及电子设备
CN104050054A (zh) 安装包安装失败的处理方法及原因确定方法及装置
CN108737338A (zh) 一种认证方法及系统
CN110177096B (zh) 客户端认证方法、装置、介质和计算设备
US20190098045A1 (en) Browser injection prevention method, browser client and apparatus
CN107404722B (zh) 一种用于对用户设备进行无线连接预授权的方法与设备
US10375141B2 (en) Method for processing URL and associated server and non-transitory computer readable storage medium
CN107493288B (zh) 基于Android版POS的应用网络安全控制方法及装置
CN105141586A (zh) 一种对用户进行验证的方法和系统
CN112464259B (zh) Erp页面获取方法、装置、计算机设备和存储介质
CN109714371B (zh) 一种工控网络安全检测系统
KR101370555B1 (ko) 애플리케이션의 설치를 확인하는 방법 및 서버
KR101101322B1 (ko) 응용 프로그램 인증 방법 및 장치

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181026

Termination date: 20210927