CN106326731B - 防止不良程序的安装和执行的系统和方法 - Google Patents

防止不良程序的安装和执行的系统和方法 Download PDF

Info

Publication number
CN106326731B
CN106326731B CN201610248222.4A CN201610248222A CN106326731B CN 106326731 B CN106326731 B CN 106326731B CN 201610248222 A CN201610248222 A CN 201610248222A CN 106326731 B CN106326731 B CN 106326731B
Authority
CN
China
Prior art keywords
program
user
bad
behavior
computer
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
CN201610248222.4A
Other languages
English (en)
Other versions
CN106326731A (zh
Inventor
维亚切斯拉夫·V·扎科热夫斯基
亚历山大·A·罗曼恩科
谢尔盖·V·多布罗沃斯基
尤里·G·斯洛博佳纽克
奥列格·A·尤尔津
米哈伊尔·A·帕夫尤什切克
亚历山大·A·斯特罗伊科夫
亚历山大·V·艾姆里洛耶夫
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.)
Kaspersky Lab AO
Original Assignee
Kaspersky Lab AO
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 Kaspersky Lab AO filed Critical Kaspersky Lab AO
Publication of CN106326731A publication Critical patent/CN106326731A/zh
Application granted granted Critical
Publication of CN106326731B publication Critical patent/CN106326731B/zh
Active 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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • 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
    • 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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/561Virus type analysis
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/567Computer malware detection or handling, e.g. anti-virus arrangements using dedicated hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • 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
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Human Computer Interaction (AREA)
  • Bioethics (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Abstract

本发明涉及防止不良程序的安装和执行的系统和方法。公开了用于控制程序在计算机上的安装的系统和方法。示例性的系统配置成:检测未知程序在计算机上的安装;暂停未知程序的安装;在安全环境下执行未知程序;检测未知程序的不良行为,该不良行为包括:该程序在用户不知情的情况下执行的行为、用于访问在计算机上的个人用户数据的行为、以及利用计算机的其它程序或操作系统影响用户工作的行为;基于所检测到的程序的不良行为确定未知程序是否是不良的;当未知程序被确定为不良的时,提示用户选择是否允许或禁止不良程序在计算机上的安装;以及当未知程序被确定为不是不良的时,允许未知程序在计算机上的安装。

Description

防止不良程序的安装和执行的系统和方法
技术领域
本发明总体涉及计算机安全领域,更具体地涉及防止不良程序的安装和执行的系统和方法。
背景技术
许多计算机用户经常面对恶意程序(也被称作恶意软件)的操作的后果,该恶意程序可阻塞用户的计算机、引起个人数据的盗用、散布垃圾邮件以及执行其他的恶意行为。同时,反病毒行业也没有停歇且已经研发出可以有效地抗衡甚至未知的恶意程序的反病毒技术,例如仿真、行为分析和应用控制。此类反病毒技术在许多情况下可以降低用户的计算机感染恶意软件的风险或者减小该感染所造成的损害。
随着恶意程序的发展,不直接地实施恶意行为但是能够频繁地骚扰用户或者强迫用户采取不必要的行为(例如,支付对于其功能特征是无用的程序的许可)的应用程序,近来已经变得更为常见。此类应用程序经常被称作不良程序、害虫软件(pestware)或垃圾软件。通常将它们称作不良程序。
这些不良程序的不良行为包括但不限于:
●浏览器的主页、搜索引擎、以及全部可能的浏览器附件(插件)的安装的未经许可的变化,其经常引起浏览器的不需要的操作。这些变化为最常见的不良行为。
●这类应用程序经常被称作FakeAV,一种假冒反病毒软件。一方面,它不对用户或其数据造成任何危害,但是另一方面,它持续地建议购买对于无用的功能特征(其起作用,但实际上不带来任何好处)的许可。
●优化器程序以及优化操作系统的操作(通过清除暂存文件、寄存器的未使用的分支等)的实际有用的实用程序。存在许多付费的优化器程序,其不执行有用的行为,而是仅仅包含通知用户被执行的“有用的”行为的界面。
●此外,频繁地出现在不良软件的列表中的特征为间谍软件程序,在用户不知情的情况下,这些间谍软件程序可收集关于用户及其计算机的数据。用户自愿安装此类软件的情形(更多时候是由于缺乏注意)是可能的。
不良程序通常不执行在多数国家可引起犯罪刑事制裁的类型的任何犯罪行为(例如,散布恶意程序或者发送垃圾邮件),且不良程序也具有合法程序的全部标志,即图形界面、许可协议等。然而,用户经常不满意他们的操作,即程序不断地显示其界面的窗口、或者不能够满足所需的功能特征,从而导致用户希望清除这些程序且不再次安装这些程序的结果。
目前,已知用于检测和清除此类程序的方法。例如,微软公司在其用于清除不良程序的实用程序中向其用户提供了通过指出不良程序的“不良性”指标来辨别不良程序的选项,上述“不良性”指标包括:缺乏图形用户界面(Graphical User Interface,GUI)、缺乏关于程序的操作的信息、显示广告等。
然而,此类技术无法免于某些缺陷,例如此类技术不能够防止安装不良程序或者取消已进行的变化(使已进行的变化“回退”)。
因此,需要更为有效的用于检测和阻断包含不合用户需要的功能特征的程序的操作的方案。
发明内容
公开了防止不良程序的安装和执行的系统和方法。在一个示例性方面中,一种系统通过以下方式来控制程序在计算机上的安装:检测未知程序在计算机上的安装;暂停所述未知程序的安装;在安全环境下执行所述未知程序;检测所述未知程序的不良行为,所述不良行为包括:所述程序在用户不知情的情况下执行的行为、用于访问在所述计算机上的个人用户数据的行为、以及利用所述计算机的其它程序或操作系统影响用户工作的行为;基于所检测到的所述程序的所述不良行为确定所述未知程序是否是不良的;当所述未知程序被确定为不良的时,提示所述用户选择是否允许或禁止所述不良程序在所述计算机上的安装;以及当所述未知程序被确定为不是不良的时,允许所述未知程序在所述计算机上的安装。
在一个示例性方面中,为了确定所述未知程序是否是不良的,所述系统可将数值型权重分配给所检测到的所述不良行为,其中,在用户不知情的情况下执行的不良行为的数值型权重比利用其它程序或操作系统影响用户工作的其它不良行为的数值型权重大。
在一个示例性方面中,为了确定所述未知程序是否是不良的,所述系统可计算所检测到的所述不良行为的所述数值型权重的总和;以及当所有的检测到的不良行为的所述数值型权重的总和超过预定的阈值时,将所述未知程序指定为不良的。
在另一示例性方面中,所述系统还可保存是否允许或禁止所述未知程序在所述计算机上的安装的用户选择;以及当以后试图在所述用户的计算机上安装或执行相同的程序时,自动地执行所保存的所述用户选择,而不再次提示所述用户。
在另一示例性方面中,为了允许所述不良程序在所述计算机上的安装,所述系统还可防止所述程序的一个或多个检测到的不良行为的执行。
在另一示例性方面中,防止所述程序的一个或多个检测到的不良行为的执行还包括:针对活跃的不良的图形用户界面(GUI)元素的存在情况,分析所述程序的安装程序的GUI;以及停用所述程序的安装程序的所检测到的不良的GUI元素。
在另一示例性方面中,所述不良行为还可包括以下行为中的至少一者:修改网络设置、修改浏览器设置、在所述计算机的桌面上创建图标和激活弹出窗口。
在另一示例性方面中,一种系统可通过以下方式来控制程序的执行:检测在计算机上安装的未知程序;识别由所述未知程序在所述计算机上执行的不良行为,其中,所述不良行为包括以下行为中的至少一者:所述程序在用户不知情的情况下执行的行为、用于访问在所述计算机上的个人用户数据的行为、以及利用所述计算机的其它程序或操作系统影响用户工作的行为;基于所识别的所述程序的所述不良行为确定所述未知程序是否是不良的;当所述未知程序被确定为不良的时,提示所述用户选择是否允许或禁止所述不良程序在所述计算机上的执行;以及当所述未知程序被确定为不是不良的时,允许所述未知程序在所述计算机上的执行。
在另一示例性方面中,所述系统还可保存是否允许或禁止所述未知程序在所述计算机上的执行的用户选择;以及当以后试图在所述用户的计算机上执行相同的程序时,自动地执行所保存的所述用户选择,而不再次提示所述用户。
在另一示例性方面中,为了允许所述不良程序在所述计算机上的执行,所述系统可防止所述程序的一个或多个检测到的不良行为的执行。
在另一示例性方面中,为了防止所述程序的一个或多个检测到的不良行为的执行,所述系统还可针对活跃的不良的图形用户界面(GUI)元素的存在情况,分析所述程序的安装程序的GUI;以及停用所述程序的安装程序的所检测到的不良的GUI元素。
上述示例性方面的简要概括用于提供本发明的基本理解。该概括不是全部构思方面的扩展性综述,且既不是旨在识别全部方面的关键要素或重要要素也不是旨在勾画本发明的任何方面或全部方面的范围。其唯一的目的在于以简化形式呈现出一个或多个方面作为本发明下面的更为详细的描述的前奏。为了完成上述内容,本发明的一个或多个方面包括在权利要求中所描述的特征和特别指出的特征。
附图说明
合并到本说明书中且构成本说明书的一部分的附图示出了本发明的一个或多个示例性方面,以及与详细描述一起用于阐述这些示例性方面的原理和实现方式。
图1示出防止不良程序在用户的计算机系统上的安装和执行的示例性系统。
图2A示出防止不良程序的安装的示例性方法。
图2B示出利用取消不良行为来防止不良程序的安装的示例性方法。
图2C示出潜在不良程序的安装程序的窗口的示例。
图3示出防止不良程序的执行的示例性方法。
图4示出其上可实现所公开的系统的和方法的通用计算机系统的示例。
具体实施方式
在此,在防止不良程序的安装和执行的系统、方法和计算机程序产品的背景下描述了示例性方面。本领域普通技术人员将意识到下面的描述仅仅是示例性的且不意图以任何方式进行限制。受益于本发明的本领域技术人员将易于想到其他方面。现在,将更为详细地参考如在附图中所示的示例性方面的实现方式。贯穿附图和下面的描述,将尽可能地使用相同的附图标记来指代相同或类似的项目。
图1示出了防止不良程序在用户的计算机系统上的安装和执行的示例性系统。用户150使用在计算机系统100中安装的不同的程序110(例如,浏览器Chrome或InternetExplorer、文本编辑器Notepad或Word等,其将在后文中也被称作“软件”或“第三方软件”)。除了软件110外,系统100还包括操作系统(Operating System,OS)的组件120,这些组件负责程序和用户与不同设备(例如,打印机、网络服务等)之间的交互。
另外,系统100可包括不良软件130,该不良软件130可修改第三方软件110及其设置(例如,以用于浏览器的插件的形式,通过改变其主页),可以引入操作系统OS的组件120的变化(例如,通过安装驱动器过滤器以实现信息的收集),或者可周期性地向用户150显示不同的信息(例如,以FakeAV程序的形式)。为了清除不良软件130,使用检测器140,该检测器140利用操作系统的图形界面来评估第三方软件110的变化、OS的组件120的变化以及用户150的工作的变化。在一个示例性方面中,检测器140可实现为反病毒软件或者作为独立的组件包括在反病毒软件中。
图2A示出了防止不良程序的安装的示例性方法。在步骤210中,系统100检测安装未知软件的企图。该未知软件可为具有以下标志之一的任意软件:
●它不具有软件制造商的数字签名。
●它既未包含在被允许的应用程序的白名单中、也未包含在至少一个反病毒
软件制造商的恶意软件名单中。
在一个示例性方面中,检测到的安装未知软件的企图采取通过检测器140拦截正在执行的任何文件(安装程序)的打开的形式。在又一示例性方面中,可检查正打开的文件的属性,即名称(例如,setup.exe)、大小、数字签名、在磁盘上出现的日期等。根据这些属性,确定检查给定文件的需求。该技术的实施的示例在共同拥有的美国专利7,392,544中公开,该美国专利通过引用并入本文中。对可执行文件的打开的拦截可通过拦截经由图像加载器的加载来实现。
在检测到安装未知软件的企图之后,在步骤220中,系统100在安全环境下执行软件。文件的仿真也可被认为是在安全环境下的启动,这是因为没有变化超出仿真器的框架。沙箱可用作安全环境的示例,该沙箱代表一组可控资源(例如,虚拟存储器、文件、寄存器分支、网络连接)。未知软件的安装的另一示例为跟踪在系统100内的全部变化(具有随后回退的可能性)的安装。类似的技术的示例在共同拥有的美国专利8,181,247中进行了描述,该美国专利通过引用并入本文中。当实施正在执行的文件的代码的行为时(使用仿真或在安全环境下),在步骤230,系统100从不良的视角进行对所产生的行为的评估。
如已经提及的,不良行为通常为骚扰用户或者强迫用户进行不必要的事情的应用程序的行为。不良行为可使第三方软件110和OS的组件120产生变化,且通过其它程序和/或操作系统(例如,操作系统的图形界面)影响用户150的工作。不良行为的某些示例可包括但不限于:
●改变浏览器的主页;
●改变浏览器的默认设置;
●改变网络参数(包括代理服务器和分层服务提供者(Layered ServiceProvider,LSP))技术;
●在用户不知情的情况下在浏览器中添加新的工具栏;
●在OS注册表中创建自启动键;
●在用户不知情的情况下将图标添加到桌面和/或任务栏;
●在用户不知情的情况下试图访问来自用户的不同文件夹(例如,来自“C:/用户/<用户_名称>/我的文档”)的文件;
●在应用程序的界面中出现大量的弹出窗口(这可为FakeAV的特征);
●在代码中出现去往未经认证的站点的统一资源定位符(Uniform ResourceLocator,URL)链接,这里要求用户支付对于应用程序的进一步操作的密钥或者提供个人信息;
●通过添加看起来骚扰用户150的额外的图形用户界面菜单来改变关键的操作系统组件120,如explorer.exe。
如果在用户不知情的情况下进行任何行为,则意味着在执行该行为之前没有显示出应用程序的图形界面的任何元素,在该图形界面中向用户提供选择(例如,将应用程序的图标添加到桌面)。因此,对于行为的不良性的主要标准是在用户不知情的情况下执行该行为或者对系统造成变化,这些变化利用操作系统和利用应用程序(例如,利用浏览器)直接影响用户的工作。
应注意到,引入未知软件经常在于安装数个组件,在这种情况下,安装各个组件可被认为是安装独立的软件,因此对于各个组件单独地进行不良性的解决方案。
在一个示例性方面中,根据各个行为的不良性(通过检测器140),将限定的权重分配给各个行为。
例如,表1给出了行为的不良性的权重的示例。
表1
使用上表中的示例,可以看出,如果用户自己已经同意改变浏览器的主页(例如,当安装未知软件时),则此类行为的不良性的权重相当小(大约20个单位),然而在用户本人未确认的情况下,相同的行为立即将不良性提高至100单位。在给出的示例中,假定当不良性达到100个单位时,被安装的应用程序(或被执行的文件)被认为是不良的(通过检测器140),且其安装是不良的(在图2A中的步骤240)。对于特定的行为,不良性的总权重可以以各个行为的不良性的权重的简单总和的形式进行考虑,但是更为复杂的计算不良性的权重的示例还考虑到各个类型的行为的数目以及使用校正系数(例如,使得具有小的不良性权重的许多行为不能够相加得到等于100的权重)。在另一示例性方面中,不良性的总权重等于这些行为中的一个行为的最大不良性权重。
因此,在步骤240,当考虑在步骤230中执行的评估时,确定安装是否是不良的。例如,一个检查标准可以是行为之一必须出现在仿真过程中(在安全环境下的实现),例如“改变浏览器的主页”。另一示例性方面预先假定不良性的总权重与某一阈值(例如100)的比较。当满足检查标准时,或者当超出不良性的总权重时,在步骤260,用户可仍然被要求允许安装。在一个示例性方面中,可以进行该安装以降低错误判断的风险(例如,一级错误,其中,合法应用程序被视为恶意的而被错误地阻断)。当用户仍能够安装未知应用程序时(甚至不存在数字签名),此类方法的示例是Windows OS中的用户账户控制(User AccountControl,UAC)技术的一个部分。如果用户同意安装,或者如果在步骤240中不满足条件,则在步骤250发生软件的安装。否则,在步骤270取消该安装。用户关于软件的安装(或软件的取消)的选择可被记住(借助检测器140),且当以后检测到类似的不良软件时,考虑到先前由用户所制定的选择,步骤260可被自动省略。
取消安装的一种方式可以是将不良软件设定为停用状态,例如关闭浏览器中的插件。这可以是较安全的方式,这是因为负面影响第三方软件110的依赖于给定组件的操作的风险被最小化,且还向用户提供了在以后改变其方案的可能性,即如果用户真正需要的话,可将插件包括在浏览器设置中。
在步骤250中的软件的安装可通过取消许多不良行为而执行,这使得能够安装用户所需的程序。图2B示出了在取消不良行为的情况下安装软件的方法。在步骤251中,当安装软件时,系统100检查安装程序的窗口;例如,检查在窗口中的全部活跃元素(例如RadioButton)及其描述。图2C示出潜在的不良软件的安装程序的窗口的示例。不检查Checkbox类型的元素(这类元素导致浏览器中的主页的变化且设立不良的工具栏)使得能够避免所指示的不良行为。在一个示例性方面中,通过检测器140执行元素的状态的变化。在步骤252(该步骤252可以与步骤251并行执行)中,也使用安装程序的操作的结果(主要是对文件操作和注册表操作的跟踪)来检查系统中的变化。在步骤253中,如果在OS中已经发生变化,则取消发现的所有不良行为,或者使发现的所有不良行为回退。不良行为的取消可按照以下来实现:
●使用诸如Unchecky的实用程序以改变在安装程序的窗口中的活跃元素(RadioButton、Checkbox等);
●对某些文件操作或注册表操作的执行的禁止,这些操作诸如安装自启动注册表项或者将文件写入到文件夹“C:/Windows/system32”中;
●在安全环境下安装程序使得能够“在前仿真”在软件安装期间的许多不良行为,不是通过在真正的OS中执行不良行为,而是通过从安装期间的函数调用返回正面的结果。例如,当在系统文件夹内创建文件时,该文件不会真正地被创建,而是代表该文件成功创建的结果将从该函数调用返回到安装程序。一方面,这使得能够正确地安装软件,但是另一方面,它不确保其稳定的操作。
也值得一提的是,在图2A的步骤中可能使用统计资料,其随后存储在云服务中以用于较早地防止(在安装程序启动之前或者在系统内的变化完成之前)此类不良程序130的安装程序的启动或者用于较早地向用户150发出警告。由于从其他用户获得的信息以及该信息在云服务中的累积,可以在早期阶段查明此类安装程序的启动的事实(使用来自启动的文件的散列或其他关键信息)。另外,由于从其他用户获得的关于这些安装程序的下载资源的信息,可以在早期阶段在用户150下载此类程序之前阻断下载或者警告用户150。因此,不仅可以防止此类程序130的启动,而且可以节省用户150的网络流量和时间。
关于步骤253,为了在安装期间利用用户警告来确定对应于切换或阻断的选项,可使用下列方法:
●对流行程序的安装程序进行初步分析,以及将结果上传到可通过因特网进行更新的数据库;和
●基于这些结果分析安装程序的图形用户界面(GUI)以及启发式确定各种控制元素的“不良性”(例如,使用关键词的分析)。
图3示出防止不良程序的执行的示例性方法。在步骤310,在系统100中检测已安装的未知软件。通常,这种检测可与全盘杀毒扫描相关联(例如,通过检测器140),或者发生在已安装的未知软件的下载期间。另一示例可与应用程序窗口的搜索相关联,该应用程序窗口周期性地被置于前层且被显示给用户(例如,在FakeAV的情况下),随后确定控制一个窗口的进程。在步骤320,评估软件的不良性。该评估涉及已安装的未知软件正在执行的不良行为。在图2A的描述中给出了此类行为的示例。另外,该评估还可发生在软件本身的实时操作期间(例如,使用在共同拥有的美国专利No.8,566,943中描述的技术,该美国专利通过引用并入本文中)。不良性的评估还可包括在评估已安装的未知软件的行为期间使用不良性的权重。在图2A的描述中也更为详细地给出了示例。如果在步骤330,已安装的未知软件被识别为是不良的,则在步骤350(该步骤350在一个示例性方面中是可选的),用户可被要求允许继续已安装的未知软件的操作。如果用户允许该操作,则在步骤340,已安装的未知软件将不再被分析为不良软件。否则,在步骤360,清除已安装的未知软件。用户清除(或者取消)此类软件的选择可被记住,且以后在检测具有类似的不良行为的不良软件时,考虑到用户先前所做出的选择,步骤350可被自动省略。
已安装的未知软件可通过下列方法中的一种方法来清除:
●将应用程序从程序和功能中规范地清除(唤醒应用程序卸载程序);
●自动清除属于已安装的未知软件的OS注册表的全部文件和分支(在一个示例性方面中,检测器140跟踪此类文件活动和注册表活动);
●通知用户在系统中存在需要进行清除的不良软件。
对于评估不良性的步骤(在图2A中的步骤240和图3中的步骤330)的另一扩展。不良性也可通过软件制造商来考虑,该软件制造商很多时候通过数字签名进行识别。如果对于具有同一个数字签名的某些类型的软件已经得出不良性的裁定,则以后在列举的步骤中可将此考虑在内,例如,以增大具有特定数字签名的新类型的软件的不良性的权重的形式。可从用户收集此类反馈,在该用户的计算机上首次出现此类软件。此类用户本身可指出不良软件,禁止安装(或清除)某些应用程序以及将这些应用程序标记为不良的,以及这将通过检测器140进行考虑,从应用程序的元数据(诸如数字签名、大小、图标等)开始,检测器140在最后的分析中形成关于应用程序的不良性的一定等级。
在一个示例性方面中,检测器140维持先前制定的不良软件的列表,这使得能够立即检测到已经安装在用户的计算机上的此类软件。下列表格可以是此类列表的示例:
图4示出其上可实施所公开的系统和方法的通用计算机系统(其可以是个人计算机或服务器)的示例。如所示,该计算机系统包括中央处理单元21、系统存储器22和连接各种系统组件的系统总线23,各种系统组件包括与中央处理单元21相关联的存储器。系统总线23像从现有技术已知的任何总线结构一样来实现,依次包括总线存储器或总线存储器控制器、外围总线和本地总线,系统总线23能够与任何其它的总线架构交互。系统存储器包括永久性存储器(ROM)24和随机存取存储器(Random-Access Memory,RAM)25。基本输入/输出系统(Basic Input/Output System,BIOS)26包括确保在个人计算机20的元件之间的信息传输的基本程序,例如在使用ROM 24加载操作系统时的那些基本程序。
个人计算机20依次包括用于数据的读取和写入的硬盘27、用于在可移动磁盘29上读取和写入的磁盘驱动器28以及用于在可移动光盘31(例如CD-ROM、DVD-ROM和其它的光学信息媒介)上读取和写入的光盘驱动器30。硬盘27、磁盘驱动器28和光盘驱动器30分别通过硬盘接口32、磁盘接口33和光盘驱动器接口34而连接到系统总线23。驱动器和对应的计算机信息媒介为用于存储个人计算机20的计算机指令、数据结构、程序模块和其它数据的电源独立的模块。
本发明提供了使用硬盘27、可移动磁盘29和可移动光盘31的系统的实现方式,但是应当理解的是,可以采用能够以计算机可读的形式存储数据的其它类型的计算机信息媒介56(固态驱动器、闪存卡、数字盘、随机存取存储器(RAM)等等),计算机信息媒介56经由控制器55连接到系统总线23。
计算机20具有保留所记录的操作系统35的文件系统36,并且还具有额外的程序应用37、其它程序模块38和程序数据39。用户能够通过使用输入设备(键盘40、鼠标42)将命令和信息输入到个人计算机20中。可以使用其它的输入设备(未示出):麦克风、操纵杆、游戏控制器、扫描器等等。这些输入设备通常通过串行端口46插入到计算机系统20中,串行端口46转而连接到系统总线,但是这些输入设备可以以其它的方式连接,例如在并行端口、游戏端口或通用串行总线(Universal Serial Bus,USB)的帮助下得以连接。监控器47或其它类型的显示设备也可以通过接口(例如视频适配器48)连接到系统总线23。除了监控器47,个人计算机还可以装备有其它的外围输出设备(未示出),例如扬声器、打印机等等。
个人计算机20能够使用与一个或多个远程计算机49的网络连接而工作在网络环境中。一个或多个远程计算机49也是个人计算机或服务器,其具有在描述个人计算机20的性质时使用的上述元件中的大多数元件或全部元件。其它的设备也可以存在于计算机网络中,例如路由器、网站、对等设备或其它的网络节点。
网络连接可以形成局域计算机网络(Local-Area computer Network,LAN)50和广域计算机网络(Wide-Area computer Network,WAN)。这些网络用在企业计算机网络和公司内部网络中,并且这些网络通常有权访问因特网。在LAN或WAN网络中,个人计算机20通过网络适配器或网络接口51连接到局域网50。当使用网络时,个人计算机20可以采用调制解调器54或其它的用于提供与广域计算机网络(例如因特网)的通信的模块。调制解调器54是内部设备或外部设备,通过串行端口46连接到系统总线23。应当注意的是,网络连接仅仅是示例并且不需要描述网络的准确配置,即实际上具有通过技术通信模块建立一个计算机到另一个计算机的连接的其它方式。
在各个方面中,本文所描述的系统和方法可以以硬件、软件、固件或它们的任何组合来实施。如果以软件来实施,则上述方法可以作为一个或多个指令或代码而被存储在非易失性计算机可读介质上。计算机可读介质包括数据存储器。以示例性而非限制性的方式,这种计算机可读介质可以包括RAM,ROM,EEPROM,CD-ROM,闪存或其它类型的电存储介质、磁存储介质或光存储介质,或可用来携带或存储所期望的指令或数据结构形式的程序代码并可以被通用计算机的处理器访问的任何其它介质。
在各个方面中,本发明中所描述的系统和方法可以按照模块来处理。本文所使用的术语“模块”指的是例如现实世界的设备、组件、或使用硬件(例如通过专用集成电路(Application Specific Integrated Circuit,ASIC)或现场可编程门阵列(Field-Programmable Gate Array,FPGA))实现的组件的布置,或者指的是硬件和软件的组合,例如通过微处理器系统和实现模块功能的指令组(该指令组在被执行时将微处理器系统转换成专用设备)来实现这样的组合。一个模块还可以被实施为两个模块的组合,其中单独地通过硬件促进某些功能,并且通过硬件和软件的组合促进其它功能。在某些实现方式中,模块的至少一部分(以及在一些情况下,模块的全部)可以被执行在通用计算机(例如上文更详细描述的通用计算机)的处理器上。因此,每个模块可以以各种适合的配置来实现,而不应受限于本文所列举的任何特定的实现方式。
为了清楚起见,本文没有公开各个方面的所有例程特征。应当领会的是,在本发明的任何实际的实现方式的开发中,必须做出许多特定实现方式的决定,以便实现开发者的特定目标,并且这些特定目标将对于不同的实现方式和不同的开发者变化。应当理解的是,这种开发努力会是复杂的且费时的,但对于了解本发明的优点的本领域的普通技术人员来说仍然是工程的例行任务。
此外,应当理解的是,本文所使用的措辞或术语出于描述而非限制的目的,从而本说明书的术语或措辞应当由本领域技术人员根据本文所提出的教导和指导结合相关领域技术人员的知识来解释。此外,不旨在将本说明书或权利要求中的任何术语归于不常见的或特定的含义,除非明确如此阐述。
本文所公开的各个方面包括本文以说明性方式所引用的已知模块的现在和未来已知的等同物。此外,尽管已经示出并描述了各个方面和应用,但是对于了解本发明的优点的本领域技术人员将显而易见的是,在不脱离本文所公开的发明构思的前提下,相比于上文所提及的内容而言的更多的修改是可行的。

Claims (22)

1.一种用于控制程序的安装的方法,所述方法包括:
通过硬件处理器,检测未知程序在计算机上的安装;
通过所述硬件处理器,暂停所述未知程序的安装;
通过所述硬件处理器,在安全环境下执行所述未知程序;
通过所述硬件处理器,检测所述未知程序的不良行为,其中,所述不良行为包括以下行为中的至少一者:所述程序在用户不知情的情况下执行的行为、用于访问在所述计算机上的个人用户数据的行为、以及利用所述计算机的其它程序或操作系统影响用户工作的行为;
通过所述硬件处理器,基于所检测到的所述程序的所述不良行为确定所述未知程序是否是不良的;
当所述未知程序被确定为不良的时,提示所述用户选择是否允许或禁止不良程序在所述计算机上的安装;以及
当所述未知程序被确定为不是不良的时,通过所述硬件处理器,允许所述未知程序在所述计算机上的安装;
针对活跃的不良的图形用户界面元素的存在情况,分析所述程序的安装程序的图形用户界面;以及
停用一个或多个所检测到的不良的图形用户界面元素以防止所述程序的一个或多个不良行为的执行。
2.根据权利要求1所述的方法,其中,确定所述未知程序是否是不良的还包括:
将数值型权重分配给所检测到的所述不良行为,其中,在用户不知情的情况下执行的不良行为的数值型权重比利用其它程序或操作系统影响用户工作的其它不良行为的数值型权重大。
3.根据权利要求2所述的方法,其中,确定所述未知程序是否是不良的还包括:
计算所检测到的所述不良行为的所述数值型权重的总和;以及
当所有的检测到的不良行为的所述数值型权重的总和超过预定的阈值时,将所述未知程序指定为不良的。
4.根据权利要求1所述的方法,还包括:
保存是否允许或禁止所述未知程序在所述计算机上的安装的用户选择;以及
当以后试图在所述用户的计算机上安装或执行相同的程序时,自动地执行所保存的所述用户选择,而不再次提示所述用户。
5.根据权利要求1所述的方法,其中,允许所述不良程序在所述计算机上的安装还包括:防止所述程序的一个或多个检测到的不良行为的执行。
6.根据权利要求1所述的方法,其中,所述不良行为还包括以下行为中的至少一者:修改网络设置、修改浏览器设置、在所述计算机的桌面上创建图标和激活弹出窗口。
7.一种用于控制程序的安装的系统,所述系统包括:
硬件处理器,所述硬件处理器配置成:
检测未知程序在计算机上的安装;
暂停所述未知程序的安装;
在安全环境下执行所述未知程序;
检测所述未知程序的不良行为,其中,所述不良行为包括以下行为中的至少一者:所述程序在用户不知情的情况下执行的行为、用于访问在所述计算机上的个人用户数据的行为、以及利用所述计算机的其它程序或操作系统影响用户工作的行为;
基于所检测到的所述程序的所述不良行为确定所述未知程序是否是不良的;
当所述未知程序被确定为不良的时,提示所述用户选择是否允许或禁止不良程序在所述计算机上的安装;以及
当所述未知程序被确定为不是不良的时,允许所述未知程序在所述计算机上的安装;
针对活跃的不良的图形用户界面元素的存在情况,分析所述程序的安装程序的图形用户界面;以及
停用一个或多个所检测到的不良的图形用户界面元素以防止所述程序的一个或多个不良行为的执行。
8.根据权利要求7所述的系统,其中,确定所述未知程序是否是不良的还包括:
将数值型权重分配给所检测到的所述不良行为,其中,在用户不知情的情况下执行的不良行为的数值型权重比利用其它程序或操作系统影响用户工作的其它不良行为的数值型权重大。
9.根据权利要求8所述的系统,其中,确定所述未知程序是否是不良的还包括:
计算所检测到的所述不良行为的所述数值型权重的总和;以及
当所有的检测到的不良行为的所述数值型权重的总和超过预定的阈值时,将所述未知程序指定为不良的。
10.根据权利要求7所述的系统,其中,所述硬件处理器还配置成:
保存是否允许或禁止所述未知程序在所述计算机上的安装的用户选择;以及
当以后试图在所述用户的计算机上安装或执行相同的程序时,自动地执行所保存的所述用户选择,而不再次提示所述用户。
11.根据权利要求7所述的系统,其中,允许所述不良程序在所述计算机上的安装还包括:防止所述程序的一个或多个检测到的不良行为的执行。
12.根据权利要求7所述的系统,其中,所述不良行为还包括以下行为中的至少一者:修改网络设置、修改浏览器设置、在所述计算机的桌面上创建图标和激活弹出窗口。
13.一种用于控制程序的执行的方法,所述方法包括:
通过硬件处理器,检测在计算机上安装的未知程序;
通过所述硬件处理器,识别由所述未知程序在所述计算机上执行的不良行为,其中,所述不良行为包括以下行为中的至少一者:所述程序在用户不知情的情况下执行的行为、用于访问在所述计算机上的个人用户数据的行为、以及利用所述计算机的其它程序或操作系统影响用户工作的行为;
通过所述硬件处理器,基于所识别的所述程序的所述不良行为确定所述未知程序是否是不良的;
当所述未知程序被确定为不良的时,提示所述用户选择是否允许或禁止不良程序在所述计算机上的执行;以及
当所述未知程序被确定为不是不良的时,通过所述硬件处理器,允许所述未知程序在所述计算机上的执行,
针对活跃的不良的图形用户界面元素的存在情况,分析所述程序的安装程序的图形用户界面;以及
停用一个或多个所检测到的不良的图形用户界面元素以防止所述程序的一个或多个不良行为的执行。
14.根据权利要求13所述的方法,其中,确定所述未知程序是否是不良的还包括:
将数值型权重分配给所检测到的所述不良行为,其中,在用户不知情的情况下执行的不良行为的数值型权重比利用其它程序或操作系统影响用户工作的其它不良行为的数值型权重大。
15.根据权利要求14所述的方法,其中,确定所述未知程序是否是不良的还包括:
计算所检测到的所述不良行为的所述数值型权重的总和;以及
当所有的检测到的不良行为的所述数值型权重的总和超过预定的阈值时,将所述未知程序指定为不良的。
16.根据权利要求13所述的方法,还包括:
保存是否允许或禁止所述未知程序在所述计算机上的执行的用户选择;以及
当以后试图在所述用户的计算机上执行相同的程序时,自动地执行所保存的所述用户选择,而不再次提示所述用户。
17.根据权利要求13所述的方法,其中,允许所述不良程序在所述计算机上的执行还包括:防止所述程序的一个或多个检测到的不良行为的执行。
18.一种用于控制程序的执行的系统,所述系统包括:
硬件处理器,所述硬件处理器配置成:
检测在计算机上安装的未知程序;
识别由所述未知程序在所述计算机上执行的不良行为,其中,所述不良行为包括以下行为中的至少一者:所述程序在用户不知情的情况下执行的行为、用于访问在所述计算机上的个人用户数据的行为、以及利用所述计算机的其它程序或操作系统影响用户工作的行为;
基于所识别的所述程序的所述不良行为确定所述未知程序是否是不良的;
当所述未知程序被确定为不良的时,提示所述用户选择是否允许或禁止不良程序在所述计算机上的执行;以及
当所述未知程序被确定为不是不良的时,允许所述未知程序在所述计算机上的执行,
针对活跃的不良的图形用户界面元素的存在情况,分析所述程序的安装程序的图形用户界面;以及
停用一个或多个所检测到的不良的图形用户界面元素以防止所述程序的一个或多个不良行为的执行。
19.根据权利要求18所述的系统,其中,确定所述未知程序是否是不良的还包括:
将数值型权重分配给所检测到的所述不良行为,其中,在用户不知情的情况下执行的不良行为的数值型权重比利用其它程序或操作系统影响用户工作的其它不良行为的数值型权重大。
20.根据权利要求19所述的系统,其中,确定所述未知程序是否是不良的还包括:
计算所检测到的所述不良行为的所述数值型权重的总和;以及
当所有的检测到的不良行为的所述数值型权重的总和超过预定的阈值时,将所述未知程序指定为不良的。
21.根据权利要求18所述的系统,其中,所述处理器还配置成:
保存是否允许或禁止所述未知程序在所述计算机上的执行的用户选择;以及
当以后试图在所述用户的计算机上执行相同的程序时,自动地执行所保存的所述用户选择,而不再次提示所述用户。
22.根据权利要求18所述的系统,其中,允许所述不良程序在所述计算机上的执行还包括:防止所述程序的一个或多个检测到的不良行为的执行。
CN201610248222.4A 2015-06-30 2016-04-20 防止不良程序的安装和执行的系统和方法 Active CN106326731B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
RU2015125976 2015-06-30
RU2015125976A RU2618947C2 (ru) 2015-06-30 2015-06-30 Способ предотвращения работы программ, содержащих нежелательный для пользователя функционал
US14/944,821 US9390266B1 (en) 2015-06-30 2015-11-18 System and method of preventing installation and execution of undesirable programs
US14/944,821 2015-11-18

Publications (2)

Publication Number Publication Date
CN106326731A CN106326731A (zh) 2017-01-11
CN106326731B true CN106326731B (zh) 2019-05-31

Family

ID=56321063

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610248222.4A Active CN106326731B (zh) 2015-06-30 2016-04-20 防止不良程序的安装和执行的系统和方法

Country Status (5)

Country Link
US (2) US9390266B1 (zh)
EP (1) EP3113059B1 (zh)
JP (1) JP6577399B2 (zh)
CN (1) CN106326731B (zh)
RU (1) RU2618947C2 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9646159B2 (en) 2015-03-31 2017-05-09 Juniper Networks, Inc. Multi-file malware analysis
US9928363B2 (en) * 2016-02-26 2018-03-27 Cylance Inc. Isolating data for analysis to avoid malicious attacks
RU2634177C1 (ru) * 2016-05-20 2017-10-24 Акционерное общество "Лаборатория Касперского" Система и способ обнаружения нежелательного программного обеспечения
US10367833B2 (en) * 2017-03-07 2019-07-30 International Business Machines Corporation Detection of forbidden software through analysis of GUI components
US10489593B2 (en) * 2017-06-27 2019-11-26 Symantec Corporation Mitigation of malicious actions associated with graphical user interface elements
CN107832605A (zh) * 2017-11-22 2018-03-23 江苏神州信源系统工程有限公司 一种保护终端安全的方法和装置
CN108804941A (zh) * 2018-05-23 2018-11-13 郑州信大天瑞信息技术有限公司 一种应用安全态势感知方法
CN108734006A (zh) * 2018-05-25 2018-11-02 山东华软金盾软件股份有限公司 一种禁用 Windows 安装程序的方法
US11509676B2 (en) * 2020-01-22 2022-11-22 Tenable, Inc. Detecting untracked software components on an asset

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101140611A (zh) * 2007-09-18 2008-03-12 北京大学 一种恶意代码自动识别方法
US7392544B1 (en) * 2007-12-18 2008-06-24 Kaspersky Lab, Zao Method and system for anti-malware scanning with variable scan settings
CN101901321A (zh) * 2010-06-04 2010-12-01 华为终端有限公司 终端防御恶意程序的方法、装置及系统
CN101924762A (zh) * 2010-08-18 2010-12-22 奇智软件(北京)有限公司 一种基于云安全的主动防御方法
US8250569B1 (en) * 2005-03-24 2012-08-21 The Weather Channel, Llc Systems and methods for selectively blocking application installation
TW201250512A (en) * 2011-06-13 2012-12-16 Microsoft Corp Threat level assessment of applications
CN104199703A (zh) * 2014-09-05 2014-12-10 北京奇虎科技有限公司 静默安装的管理方法及装置

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7114184B2 (en) * 2001-03-30 2006-09-26 Computer Associates Think, Inc. System and method for restoring computer systems damaged by a malicious computer program
US7254526B2 (en) * 2001-08-24 2007-08-07 International Business Machines Corporation Apparatus and method for determining compatibility of web sites with designated requirements based on functional characteristics of the web sites
US7765592B2 (en) * 2004-01-10 2010-07-27 Microsoft Corporation Changed file identification, software conflict resolution and unwanted file removal
US8156489B2 (en) * 2004-05-21 2012-04-10 Computer Associates Think, Inc. Distributed installation configuration system and method
US7908653B2 (en) * 2004-06-29 2011-03-15 Intel Corporation Method of improving computer security through sandboxing
US7409719B2 (en) * 2004-12-21 2008-08-05 Microsoft Corporation Computer security management, such as in a virtual machine or hardened operating system
GB0513375D0 (en) * 2005-06-30 2005-08-03 Retento Ltd Computer security
US8196205B2 (en) * 2006-01-23 2012-06-05 University Of Washington Through Its Center For Commercialization Detection of spyware threats within virtual machine
US7870612B2 (en) * 2006-09-11 2011-01-11 Fujian Eastern Micropoint Info-Tech Co., Ltd Antivirus protection system and method for computers
US8413135B2 (en) * 2006-10-30 2013-04-02 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for controlling software application installations
US8782786B2 (en) * 2007-03-30 2014-07-15 Sophos Limited Remedial action against malicious code at a client facility
US8019700B2 (en) * 2007-10-05 2011-09-13 Google Inc. Detecting an intrusive landing page
US20090100519A1 (en) * 2007-10-16 2009-04-16 Mcafee, Inc. Installer detection and warning system and method
JP5586064B2 (ja) * 2008-03-28 2014-09-10 国立大学法人北海道大学 抗h5亜型a型インフルエンザウイルスヘマグルチニンモノクローナル抗体
US8763125B1 (en) * 2008-09-26 2014-06-24 Trend Micro, Inc. Disabling execution of malware having a self-defense mechanism
US8099472B2 (en) * 2008-10-21 2012-01-17 Lookout, Inc. System and method for a mobile cross-platform software system
US8347386B2 (en) * 2008-10-21 2013-01-01 Lookout, Inc. System and method for server-coupled malware prevention
US8533844B2 (en) * 2008-10-21 2013-09-10 Lookout, Inc. System and method for security data collection and analysis
US9235704B2 (en) * 2008-10-21 2016-01-12 Lookout, Inc. System and method for a scanning API
US8745361B2 (en) * 2008-12-02 2014-06-03 Microsoft Corporation Sandboxed execution of plug-ins
US8631330B1 (en) * 2009-08-16 2014-01-14 Bitdefender IPR Management Ltd. Security application graphical user interface customization systems and methods
RU91205U1 (ru) * 2009-10-01 2010-01-27 ЗАО "Лаборатория Касперского" Система асинхронной обработки событий для обнаружения неизвестных вредоносных программ
US8566943B2 (en) 2009-10-01 2013-10-22 Kaspersky Lab, Zao Asynchronous processing of events for malware detection
CN102045214B (zh) * 2009-10-20 2013-06-26 成都市华为赛门铁克科技有限公司 僵尸网络检测方法、装置和系统
US8479286B2 (en) * 2009-12-15 2013-07-02 Mcafee, Inc. Systems and methods for behavioral sandboxing
US9245154B2 (en) * 2010-03-08 2016-01-26 Eva Andreasson System and method for securing input signals when using touch-screens and other input interfaces
US20110225649A1 (en) * 2010-03-11 2011-09-15 International Business Machines Corporation Protecting Computer Systems From Malicious Software
JP2012008732A (ja) * 2010-06-23 2012-01-12 Kddi Corp インストール制御装置およびプログラム
JP5557623B2 (ja) * 2010-06-30 2014-07-23 三菱電機株式会社 感染検査システム及び感染検査方法及び記録媒体及びプログラム
US8844039B2 (en) * 2010-06-30 2014-09-23 F-Secure Corporation Malware image recognition
AU2011293160B2 (en) * 2010-08-26 2015-04-09 Verisign, Inc. Method and system for automatic detection and analysis of malware
US8555385B1 (en) * 2011-03-14 2013-10-08 Symantec Corporation Techniques for behavior based malware analysis
US9047441B2 (en) * 2011-05-24 2015-06-02 Palo Alto Networks, Inc. Malware analysis system
US9323928B2 (en) * 2011-06-01 2016-04-26 Mcafee, Inc. System and method for non-signature based detection of malicious processes
US8181247B1 (en) * 2011-08-29 2012-05-15 Kaspersky Lab Zao System and method for protecting a computer system from the activity of malicious objects
US20130333039A1 (en) * 2012-06-07 2013-12-12 Mcafee, Inc. Evaluating Whether to Block or Allow Installation of a Software Application
EP2759956B1 (en) * 2013-01-25 2017-01-11 Synopsys, Inc. System for testing computer application
US9117080B2 (en) * 2013-07-05 2015-08-25 Bitdefender IPR Management Ltd. Process evaluation for malware detection in virtual machines
US9323931B2 (en) * 2013-10-04 2016-04-26 Bitdefender IPR Management Ltd. Complex scoring for malware detection
US20150235277A1 (en) * 2014-02-19 2015-08-20 Kyle W. Bagley Provision of Advertising in Social Media Content In a User Compensation Based Model

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250569B1 (en) * 2005-03-24 2012-08-21 The Weather Channel, Llc Systems and methods for selectively blocking application installation
CN101140611A (zh) * 2007-09-18 2008-03-12 北京大学 一种恶意代码自动识别方法
US7392544B1 (en) * 2007-12-18 2008-06-24 Kaspersky Lab, Zao Method and system for anti-malware scanning with variable scan settings
CN101901321A (zh) * 2010-06-04 2010-12-01 华为终端有限公司 终端防御恶意程序的方法、装置及系统
CN101924762A (zh) * 2010-08-18 2010-12-22 奇智软件(北京)有限公司 一种基于云安全的主动防御方法
TW201250512A (en) * 2011-06-13 2012-12-16 Microsoft Corp Threat level assessment of applications
CN104199703A (zh) * 2014-09-05 2014-12-10 北京奇虎科技有限公司 静默安装的管理方法及装置

Also Published As

Publication number Publication date
EP3113059B1 (en) 2018-01-10
RU2618947C2 (ru) 2017-05-11
JP2017021773A (ja) 2017-01-26
US9659172B2 (en) 2017-05-23
US9390266B1 (en) 2016-07-12
EP3113059A1 (en) 2017-01-04
RU2015125976A (ru) 2017-01-10
JP6577399B2 (ja) 2019-09-18
CN106326731A (zh) 2017-01-11
US20170004305A1 (en) 2017-01-05

Similar Documents

Publication Publication Date Title
CN106326731B (zh) 防止不良程序的安装和执行的系统和方法
US9547765B2 (en) Validating a type of a peripheral device
CN105760773B (zh) 通过易受攻击的应用控制打开文件的系统和方法
RU2514140C1 (ru) Система и способ увеличения качества обнаружений вредоносных объектов с использованием правил и приоритетов
US9825977B2 (en) System and method for controlling access to data of a user device using a security application that provides accessibility services
US10009370B1 (en) Detection and remediation of potentially malicious files
US10783239B2 (en) System, method, and apparatus for computer security
RU2697954C2 (ru) Система и способ создания антивирусной записи
CN109558207A (zh) 在虚拟机中形成用于进行文件的防病毒扫描的日志的系统和方法
Zhu et al. Detecting privilege escalation attacks through instrumenting web application source code
Fassl et al. Comparing User Perceptions of {Anti-Stalkerware} Apps with the Technical Reality
JP6714112B2 (ja) グラフィカルユーザインターフェース要素に関連した悪意のある行為の軽減
JP7320462B2 (ja) アクセス権に基づいてコンピューティングデバイス上でタスクを実行するシステムおよび方法
US10019587B2 (en) System and method for generating application control rules
Cao Understanding the characteristics of invasive malware from the Google Play Store
EP3522058B1 (en) System and method of creating antivirus records
Oles Remediation and Lessons Learned
DeCato Increasing the security on non-networked ground support equipment: Analyzing the implementation of whitelisting protection
Stavrou Android Malware Network Traffic Detection Using Visual Representation (AF)
Smith et al. Exe-Guard Project
Luo Evaluating Mobile-Browser Security with Dynamic Analysis Techniques
Skrzewski et al. The Possibilities of System’s Self-defense Against Malicious Software
EP3059693A1 (en) System and method for generating application control rules
Padmannavar et al. SMART SOLUTION OF ANTIVIRUS IMPLEMENTATION WITH AUTO-UPDATE USING JAVA FRAMEWORK TO GUARD THE COMPUTERS

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant