CN106203148B - 未经授权的数据访问阻断方法及具备该功能的计算装置 - Google Patents

未经授权的数据访问阻断方法及具备该功能的计算装置 Download PDF

Info

Publication number
CN106203148B
CN106203148B CN201610142859.5A CN201610142859A CN106203148B CN 106203148 B CN106203148 B CN 106203148B CN 201610142859 A CN201610142859 A CN 201610142859A CN 106203148 B CN106203148 B CN 106203148B
Authority
CN
China
Prior art keywords
access
user operation
user
instance
identifier
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
CN201610142859.5A
Other languages
English (en)
Other versions
CN106203148A (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.)
Samsung SDS Co Ltd
Original Assignee
Samsung SDS 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 Samsung SDS Co Ltd filed Critical Samsung SDS Co Ltd
Publication of CN106203148A publication Critical patent/CN106203148A/zh
Application granted granted Critical
Publication of CN106203148B publication Critical patent/CN106203148B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • 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
    • 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
    • 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/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Storage Device Security (AREA)
  • Technology Law (AREA)

Abstract

本发明提供一种未经授权的数据访问阻断方法及具备该功能的计算装置,用于阻断恶性代码等未经许可地访问数据并向外部装置泄露。根据本发明的未经许可的数据访问阻断方法包括以下步骤:监控对访问实例的访问对象客体的访问是否产生;从用户可访问性管理模块接收用户操作事件,所述用户操作事件通过所述用户可访问性管理模块而生成并包括关于用户操作对象客体的信息;以及在所述访问产生并所述访问对象客体和所述用户操作对象客体不相同的情况下,阻断对所述访问对象客体的访问和通过网络进行的向外部装置的发送中的至少一个。

Description

未经授权的数据访问阻断方法及具备该功能的计算装置
技术领域
本发明涉及一种未经授权的数据访问阻断方法及具备该功能的计算装置。更详细地,涉及一种在被判断为不是伴随有用户操作的数据访问的情况下,阻断该数据访问和关于该数据的网络发送的方法及具有该功能的计算装置。
背景技术
间谍软件等与计算装置的用户的意图无关地收集存储在所述计算装置中的数据的恶性代码被广泛地传开。为了阻断这种恶性代码的未经授权的数据收集,试图多种方法。例如,在试图数据输入及输出的进程和作为用户输入对象的进程彼此不同的情况下,与用户的意图无关地实现数据访问来看,可以阻断数据访问和关于该数据的网络发送。但是,上述方式具有如下的问题:在提供用于用户输入的图形用户界面(GUI:Graphic UserInterface)的进程和执行内部逻辑的进程彼此不同的情况下,就连根据用户输入的正当的数据访问也被阻断。
用于准确判定是否为如上述举例那样伴随有用户操作的数据访问的恶性代码的数据访问阻断方法未被提供。要求提供如下技术:该技术允许伴随有用户操作的数据访问,并且阻断未伴随有用户操作的数据访问,并以高准确度判断是否为伴随有用户操作的访问。
专利文献:韩国注册专利:第0676912号
发明内容
本发明所要解决的技术问题是提供一种未经授权的数据访问阻断方法及具备该方法的计算装置,其在利用由用户可访问性管理模块提供的用户操作事件来产生对某种客体的访问的情况下,判定该访问是否为通过用户操作进行的访问,由此阻断并不是通过用户操作进行的数据访问和通过网络的数据泄露。
本发明所要解决的另一技术问题是提供未经授权的数据访问阻断方法及具备该方法的计算装置,其即使在提供用于用户输入的GUI的进程和执行内部逻辑的进程彼此不同的情况下,也不阻断根据用户输入的正当的数据访问。
本发明的技术问题并不限定于以上所提及的技术问题,本领域技术人员能够从下面的记载中明确理解没有提及的其它技术问题。
为了解决上述技术问题,根据本发明的一实施例的未经授权的数据访问阻断方法包括以下步骤:监控是否产生访问实例中的对访问对象客体的访问;从所述用户可访问性管理模块接收用户操作事件,该用户操作事件通过用户可访问性管理模块而生成并包括关于用户操作对象客体的信息;在所述访问产生并所述访问对象客体和所述用户操作对象客体不相同,或所述访问产生并且未提供关于所述访问对象客体的用户操作事件的情况下,阻断对访问对象客体的访问和通过网络进行的向外部装置的发送中的至少一个。
在一实施例中,所述用户操作事件进一步包括关于具有所述用户操作对象客体的窗口的信息。此时,阻断对所述访问对象客体的访问和通过网络进行的向外部装置的发送中的至少一个的步骤可包括以下步骤:获取作为所述访问实例的标识符的第一标识符;由关于所述窗口的信息中获取作为用户操作对象实例的标识符的第二标识符;限于所述第一标识符和所述第二标识符不相同的情况,在所述访问对象客体和所述用户操作对象客体不相同的情况下,阻断对所述访问对象客体的访问和通过网络进行的向外部装置的发送中的至少一个;以及即使所述第一标识符和所述第二标识符不相同,在判断为所述访问对象客体和所述用户操作对象客体相同的情况下,也判定为所述访问实例和所述用户操作对象实例彼此相关联,从而允许对所述访问对象客体的访问或通过网络进行的向外部装置的发送。
阻断对所述访问对象客体的访问和通过网络进行的向外部装置的发送中的至少一个的步骤可包括以下步骤:即使所述访问产生并所述访问对象客体和所述用户操作对象客体相同,在所述访问产生时刻和所述用户操作事件提供时刻相差指定的临界值以上的情况下,也阻断对所述访问对象客体的访问和通过网络进行的向外部装置的发送中的至少一个。
在一实施例中,所述用户可访问性管理模块可以是根据微软主动可访问性(MSAA:MicroSoft Active Accessibility)提供通过用户操作产生而产生的事件的模块。
为了解决上述技术问题,根据本发明的另一实施例,提供一种存储在存储介质中的计算机程序,所述计算机程序与计算装置相结合执行以下步骤:监控是否产生访问实例中的对访问对象客体的访问;从用户可访问性管理模块接收用户操作事件,该用户操作事件通过用户可访问性管理模块而生成并包括关于用户操作对象客体的信息;以及在所述访问产生并所述访问对象客体和所述用户操作对象客体不相同的情况下,阻断对所述访问客体的访问和通过网络进行的向外部装置的发送中的至少一个。
为了解决上述技术问题,根据本发明的又一实施例,提供一种具备未经授权的数据访问阻断功能的计算装置,包括:网络接口;一个以上的处理器;存储器,加载(load)通过所述处理器执行的计算机程序;以及贮存器,存储关于一个以上的客体的数据。此时,所述计算机程序包括以下操作:监控是否产生访问实例中的、对贮存器上的访问对象客体的访问;从所述用户可访问性管理模块接收用户操作事件,该用户操作事件通过用户可访问性管理模块而生成并包括关于所述用户操作对象客体的信息;以及在所述访问产生并所述访问对象客体和所述用户操作对象客体不相同的情况下,阻断对所述访问对象客体的访问和通过所述网络接口进行的数据发送中的至少一个。
附图说明
图1是根据本发明的一实施例的未经授权的数据访问阻断方法的顺序图。
图2和图3是用于说明从用户可访问性管理模块收集包括关于用户操作对象客体的信息的用户操作事件的图。
图4是与图1相比添加了一部分判断操作的、根据本发明的另一实施例的未经授权的数据访问阻断方法的顺序图。
图5是与图4相比添加了一部分判断操作的、根据本发明的又一实施例的未经授权的数据访问阻断方法的顺序图。
图6是与图5相比添加了一部分判断操作的、根据本发明的又一实施例的未经授权的数据访问阻断方法的顺序图。
图7是根据本发明的又一实施例的、具备未经授权的数据访问阻断功能的计算装置的方框结构图。
图8是根据本发明的又一实施例的、具备未经授权的数据访问阻断功能的计算装置的硬件结构图。
具体实施方式
下面,参照附图,对本发明的优选实施例进行详细说明。参照附图以及详细地后述的实施例,本发明的优点及特性,以及实现这些的方法将会变得明确。但是,本发明并不限定于以下所公开的实施例,而是可以以彼此不同的多种方式实现,本实施例只是为了使本发明的公开变得完整,并且为了向本发明所属技术领域的技术人员完整地告知本发明的范围而提供的,本发明仅由权利要求的范围定义。在说明书全文中相同的附图标记指相同的结构要素。
如果没有其他定义,则在本说明书中所使用的所有术语(包括技术术语及科技术语)能够以本发明所属技术领域的技术人员共同理解的含义使用。另外,在通用的词典中定义的术语只要没有被明确地特别定义,就不理想地或过度地解释。本说明书中所使用的术语用于说明实施例,并不限制本发明。在本说明书中,只要在句子中未特别提及,则单数形式可以包括复数形式。
下面,参照图1至图6,对根据本发明的一实施例的未经授权的数据访问阻断方法进行说明。限于未经授权的数据访问阻断功能被激活的情况,能够执行根据本实施例的未经授权的数据访问阻断方法。在应用了根据本实施例的未经授权的数据访问阻断方法的计算装置接入到安全网络的情况下,优选为在所述计算装置中使所述未经授权的数据访问阻断功能的非激活成为不可能。可以理解为,根据本实施例的未经授权的数据访问阻断方法在应用了所述未经授权的数据访问阻断方法的计算装置中执行。
首先,激活监控软件的执行(S100),所述监控软件监控是否实现对数据的贮存器访问或通过网络的访问。所述贮存器访问是指对存储在贮存器中的所述数据的读取、读写等,所述通过网络的访问是指通过网络向外部装置发送的试图。所述监控软件例如可以是在后台执行的代理软件。所述代理软件优选为在启动运营体制时自动执行(AUTOSTARTUP),并且即使强制结束也能再次自动执行。以下,为了有助于方便理解,将作为访问对象的数据作为特定客体的数据来进行说明。
所述客体例如可以是存储在存储装置中的目录(或文件夹)或文件、存储在存储器中的特定数据结构的数据或者特定内容的数据。所述客体是指数据单位,除上述举例说明的之外,也可以将多种数据单位表示为客体。
所述监控软件收集并分析与对客体的访问的产生相关联的数据和用于识别所述客体的数据。与对所述客体的访问的产生相关联的数据包括访问产生时间信息和所访问的实例的标识符等。所述实例例如可以是进程和线程中的任一种。因此,所述所访问的实例的标识符可以是进程ID或线程ID。
所述监控软件利用用户级别API钩子(hooking)、内核级别API钩子、设备驱动钩子等多种方法来监控是否访问数据。例如,关于文件读取(file read)、文件打开(fileopen)、网络发送等多种API的钩子、贮存器的设备驱动钩子和网络接口的设备驱动钩子等技术可应用到所述监控中。以下,为了有助于方便理解,对通过用户级别API钩子进行的监控方法进行更详细说明。
设置用于用户级别API钩子的回调(callback)函数。例如,当初始化所述监控软件时,可执行所述回调函数的设置。
API钩子对象例如为文件读取函数和网络发送函数。
当进行API钩子时,可以设置为在执行钩子对象API之前执行回调函数(先执行回调),或者可以设置为在执行钩子对象API之后执行回调函数(后执行回调)。
根据安全政策确定是设置先执行回调还是设置后执行回调。例如,在想要阻断读取文件内容本身的情况下,需要设置对文件读取API的先执行回调。此外,在想要阻断网络发送的情况下,需要设置对网络发送API的先执行回调。
如果成功设置用于API钩子的回调函数,则当试图从用户应用(userapplication)读取文件来调用钩子对象文件读取API时,调用针对该文件读取API设置的回调函数。此外,当试图由用户应用程序(user application)进行网络发送来调用钩子对象文件读取API时,调用针对该网络发送API设置的回调函数。
接下来,所述监控软件激活从用户可访问性管理模块接收所述用户操作事件的方式的用户操作事件监控(S200)。以下,对“用户可访问性管理模块”进行说明。
“用户可访问性管理模块”的“可访问性(accessibility)”是指以不仅是障碍人而且所有人都能够容易利用信息通信设备或服务的方式维持相同的可访问性。例如,以下的功能等相当于上述可访问性技术:为了视力弱的人而在画面上提供放大镜功能;为了听不见的人而对再生的语音进行字幕处理;以及为了看不见的人而利用文本转语音(TTS:TextTo Speech)技术对聚焦到的客体的名称进行语音再生。综上,所述用户可访问性管理模块可以是支持通过应用程序提供的用户接口保障障碍人可访问性的模块。即,用户可访问性管理模块可以修改所述用户接口,使得所述用户接口提供障碍人可访问性。例如,所述用户可访问性管理模块可以是MSAA(MicroSoft Active Accessibility)模块。
所述用户可访问性管理模块在产生用户操作的情况下以一系列事件的形式提供关于所述用户操作的多种信息,使得可通过应用程序来开发出用于保障障碍人可访问性的多种功能。以下,将所述用户可访问性管理模块所提供的所述事件称作用户操作事件。
所述监控软件监控由所述用户可访问性管理模块提供的所述用户操作事件的理由为如下。
用户可访问性管理模块仅将关于以下状况的事件作为所述用户操作事件来提供:用户通过输入装置(例如,键盘、鼠标、触摸板)向计算装置提供用户输入,由此在GUI中产生变动。即,所述用户操作事件不包括系统定时器、中断等与用户操作无关的事件。因此,在想要了解伴随有用户操作的关于GUI变动事项的信息的情况下,对所述用户操作事件整体进行分析即可而无需对所述用户操作事件的另行的过滤操作。即,具有如下的效果:在收集由用户可访问性管理模块提供的事件的情况下,无需从收集到的事件过滤与用户操作无关的系统事件等。
此外,所述用户操作事件中包括与用户操作相关联的客体的名称信息。因此,如果利用所述用户可访问性管理模块,则能够判断是否访问到与用户操作相关联的客体。参照图2和图3,进行说明。如图2所示,假设聚焦到存储在文件夹里的文件中的“winhelp.exe”文件的情况。此时,如图3所示,所述用户可访问性管理模块将关于实现聚焦的客体(“winhelp.exe文件”)的名称信息作为指示客体选择已实现的事件(OBJ_SELECTION)的附属信息(Name=“winhelp.exe”)来提供。
在所述用户可访问性管理模块为MSAA的情况下,因用户操作而提供可访问的客体名称(或客体路径)的事件为EVENT_OBJECT_FOCUS、EVENT_OBJECT_SELECTION、EVENT_OBJECT_SELECTIONADD、EVENT_OBJECT_VALUECHANGE、EVENT_SYSTEM_DRAGDROPSTART、EVENT_SYSTEM_DRAGDROPEND。关于上述事件的具体说明详细地记载于网页https:// msdn.microsoft.com/en-us/library/windows/desktop/dd318066(v=vs.85).aspx
此外,所述用户操作事件还可以提供关于成为用户操作对象的实例的信息。关于所述实例的信息例如可以是提供成为用户操作对象的GUI的进程的ID、线程的ID或所述GUI的窗口句柄(HWND)中的任一个。图3中图示了将用户输入被添加的窗口的窗口句柄作为OBJ_SELECTION事件的附属信息来提供的点(HWND=000706A2)。如果可以了解关于成为用户操作对象的实例的信息,则通过对客体进行关于实际访问的实例的相同性比较,能够进一步准确判断数据访问是否伴随有用户操作。
再次返回到图1进行说明。如已说明那样,如果激活对客体访问的监控(S100),并以从用户可访问性管理模块接收用户操作事件的方式激活监控(S200),则每当产生对客体的访问时,能够感测该访问(S300),并且每当用户在GUI上添加用户输入时,由所述用户可访问性管理模块提供用户操作事件(S400)。
所述监控软件判定所述访问产生并判定所述访问对象客体和所述用户操作对象客体是否相同(S500)。
例如,在基于用户操作的特定文件访问的情况下,感测关于所述特定文件的访问,并提供对所述特定文件的选择等用户操作事件。即,访问对象客体的名称和用户操作对象客体的名称相同。此时,所述监控软件判定为正常的数据访问,而不采取特定的阻断措施。如图2所示,在对存储在文件夹里的文件中的“winhelp.exe”文件根据用户操作被聚焦的情况下,感测到在客体访问监控过程中实现对“winhelp.exe”文件的访问。此外,如图3所示,所述用户可访问性管理模块提供关于实现聚焦的客体(“winhelp.exe”)名称的信息。因此,所述监控软件判定两个客体名称相同,并允许对“winhelp.exe”客体的访问。
相反,在恶性代码与用户操作无关地未经授权而试图进行特定文件的网络泄露的情况下,虽然感测到对特定文件的访问但不会由所述用户可访问性管理模块提供关于所述访问对象客体的所述用户操作事件。此时,所述监控软件被判定为非正常数据访问,阻断所述恶性代码的客体访问或关于客体的网络发送(S600)。
为了阻断客体访问或关于客体的网络发送,所述监控软件利用钩到钩子对象API或设备驱动器函数的钩子例程。在需要所述阻断的情况下,所述钩子例程采取措施以使钩子对象例程不会正常执行,然后返回。所述措施例如可以是通过变更在调用回调例程时的参数值而使所述钩子对象例程不会被正常操作的措施。
由于在想要阻断读取文件内容本身的情况下,在执行文件读取API之前执行钩子例程,因此需要设置关于所述文件读取API的先执行回调,并且由于在阻断网络发送的情况下,在执行网络发送API之前执行钩子例程,因此需要设置关于所述网络发送API的先执行回调。
虽然用户选择了第一客体,但所述恶性代码执行对第二客体的访问的情况下,访问对象客体和所述用户操作对象客体彼此不同。此时,所述监控软件判定为非正常数据访问,阻断所述恶性代码的客体访问或关于客体的网络发送(S600)。
本实施例具有如下的效果:通过判定用户操作客体和访问的客体是否相同,来判定与用户操作无关的客体访问,并能够阻断与用户操作无关的客体访问。
在本发明的几种实施例中,进一步检查作为用户操作对象的应用程序的实例和访问客体的实例之间的相同性,所述进一步检查的相同性可用于判定与用户操作无关的客体访问。对此,参照图4进行说明。
如图4所示,当作为用户操作对象的应用程序的实例和访问客体的实例彼此相同时,无需考虑访问的客体和与用户操作相关联的客体之间的相同性,判定为通过用户操作进行的客体访问,并允许客体访问(S450)。这是因为具有用户操作的实例直接访问客体应视为通过用户操作进行的客体访问。
对用于判定实例的相同性的操作进行说明。首先,为了获取访问客体的实例的标识符,在所述钩子例程内执行用于获取当前实例标识符的函数。由于所述钩子例程在访问客体的实例内执行,因此能够通过执行用于获取当前进程ID的函数或执行用于获取当前线程ID的函数等方法,来获取访问客体的实例的标识符。
接下来,获取添加了用户操作的实例的标识符。能够由所述用户操作事件提供关于添加了用户操作的实例的标识符的信息。为了判断相同性,需要获取与访问客体的实例的标识符相同的形式的标识符。例如,图3中图示了将添加了用户输入的窗口的窗口句柄作为OBJ_SELECTION事件的附属信息来提供的点(HWND=000706A2)。如果访问客体的实例标识符为进程ID,则可通过利用从窗口句柄提取进程ID的函数(GetWindowsThreadProcessID())等,来从所述用户操作事件求得添加了用户操作的进程标识符。
在所述用户可访问性管理模块为MSAA的情况下,提供添加了用户操作的窗口的窗口句柄(HAND)的事件为EVENT_OBJECT_FOCUS、EVENT_OBJECT_SELECTION、EVENT_OBJECT_SELECTIONADD、EVENT_OBJECT_VALUECHANGE、EVENT_OBJECT_LOCATIONCHANGE、EVENT_SYSTEM_CHPTURESTART、EVENT_SYSTEM_CHPTUREEND、EVENT_SYSTEM_DRAGDROPSTART、EVENT_SYSTEM_DRAGDROPEND。
接下来,判断访问客体的实例的标识符和添加了用户操作的实例的标识符是否相同。如已说明那样,限于访问客体的实例的标识符和添加了用户操作的实例的标识符不同的情况(S450),将访问的客体的名称和实现了用户操作的客体名称进行比较(S500)。
当访问客体的实例和添加了根据用户操作事件的用户操作的实例彼此相同时,图4所示的本实施例对客体相同性与否不进行比较。因此,与图1所示的实施例相比,操作负担减轻。
此外,在图4所示的本实施例中,即使访问客体的实例和添加了根据用户操作事件的用户操作的实例彼此不同,如果访问的客体的名称和在GUI上添加了用户操作的客体名称彼此相同,则也允许对所述客体的访问。本实施例具有如下的效果:即使是提供用于用户输入的GUI的进程和执行内部逻辑的进程彼此不同的情况,也不阻断根据用户输入的正当的数据访问。
在本发明的几种实施例中,客体访问时刻和用户操作输入时刻之间的时间差可用于判定与用户操作无关的客体访问。对此,参照图5进行说明。
如图5所示,在即使是访问客体的实例和添加了用户操作的实例不同(S450),并且访问的客体和添加了用户操作的客体也彼此不同的情况(S500),客体访问时刻和添加了用户操作的时刻也相差临界值以上的情况下,判断为彼此不关联,从而允许对客体的访问(S550)。即,根据本实施例,具有如下的效果:不考虑时间差,单纯地比较客体访问和对客体的用户操作,由此能够防止阻断通过用户操作进行的正当的客体访问。
另外,在本发明的几种实施例中,即使是提供用于用户输入的GUI的进程和执行内部逻辑的进程彼此不同的情况,也不阻断根据用户输入的正当的数据访问。在几种实施例中,为了加强安全性,即使用户输入对象实例和客体访问实例彼此不同,也通过将可允许客体访问的实例列表化而进行管理。对此,参照图6进行说明。
如图6所示,在即使是访问客体的实例和添加了用户操作的实例不同(S450),并且访问的客体和添加了用户操作的客体彼此不同的情况(S500),客体访问时刻和添加了用户操作的时刻也相差临界值以上的情况下,判断为彼此不关联,从而能够允许对客体的访问(S550)。此时,不是立即允许客体的访问,而是如果访问客体的实例和添加了用户操作的实例中的至少一个被包括在已存储的实例列表中(S560),则能够阻断客体的访问。所述实例列表可由执行文件的文件名、关于执行文件的特征值、关于执行文件的哈希值等的能够识别实例的多种信息构成。
即,所述实例列表包括如下的实例的信息:即使用户操作实例和客体访问实例彼此不同,也允许对客体的访问,并且所述实例列表可以是用户操作实例的列表、客体访问实例的列表或所有用户操作实例/客体访问实例的列表。
图6中图示了检查实例列表的步骤(S560)在确认访问时刻和添加了用户操作的时刻是否相差临界值以上的步骤(S550)之后执行,但实例列表检查也可以应用于图4所示的实施例中。即,即使是访问客体的实例和添加了用户操作的实例不同(S450),并且访问的客体和添加了用户操作的客体彼此不同的情况(S500),如果用户操作实例和客体访问实例中的至少一个不被包括在已存储的实例列表中,则能够阻断客体访问(S600)。
目前为止,参照图1至图6来进行说明的根据本发明的实施例的方法可通过用计算机可读代码实现的计算机程序来执行。所述计算机程序可通过互联网等网络从第一计算装置传送到第二计算装置并安装在所述第二计算装置中,由此能够在所述第二计算装置中使用。所述第一计算装置和所述第二计算装置均包括诸如服务器装置、膝上型个人计算机的固定式计算装置及诸如笔记本电脑、智能电话和平板电脑的移动计算装置。
所述计算机程序与计算装置相结合来执行以下步骤中的至少一个:监控是否产生访问实例中的对访问对象客体的访问;从所述用户可访问性管理模块接收用户操作事件,该用户操作事件通过用户可访问性管理模块而生成并包括关于用户操作客体对象的信息;以及在所述访问产生并且所述访问对象客体和所述用户操作对象客体不相同的情况下,阻断对所述访问对象客体的访问和通过网络进行的向外部装置的发送。所述计算机程序可存储在DVD-ROM、闪存装置等的存储介质中。
下面,参照图7,对本发明的另一实施例的计算装置的结构和动作进行说明。图7是本发明的另一实施例的具备未经授权的数据访问阻断功能的计算装置的方框结构图。
根据本实施例的计算装置分别安装有用户应用程序10、监控软件和操作系统40。所述监控软件包括客体访问信息提供部30和访问及网络发送阻断部20。
客体访问信息提供部30通过API钩子而感测根据访问实例的客体访问。客体访问信息提供部20可以是通过API钩子等注入(injection)到所述访问实例内的钩子例程(回调函数)。如果所述访问的客体和由用户选择的客体彼此不同,则阻断所述访问。
在将用户输入添加到使用GUI的用户应用程序10的情况下,用户可访问性管理模块将包括关于所述用户输入的信息的用户操作事件提供给访问及网络发送阻断部20。
访问及网络发送阻断部20通过与客体访问信息提供部30收发数据,来判定是否允许对客体的访问。在另一实施例中,客体访问信息提供部30也可以通过与访问及网络发送阻断部20收发数据,来判定是否允许对客体的访问。
如已说明那样,如果是访问客体的实例和添加了用户操作的实例相同的情况,则允许对客体的访问。
此外,即使访问客体的实例和添加了用户操作的实例不相同,如果访问的客体名称和通过用户操作选择的客体名称相同,则允许对客体的访问。此时,为了补充安全性,即使访问客体的实例和添加了用户操作的实例不相同,也能够管理可允许对客体的访问的实例的目录。
此外,即使访问客体的实例和添加了用户操作的实例不相同,并且访问的客体名称和通过用户操作选择的客体名称彼此不同,在访问和用户操作的时刻相差临界值以上的情况下,也允许对客体的访问。
阻断除上述情况之外的对客体的访问。在确定了访问阻断的情况下,客体访问信息提供部30即钩子例程(回调函数)采取消息丢弃(message discard)、回调函数参数修改等的措施,以不执行钩子对象API。相反,在需要允许对客体的访问的情况下,客体访问信息提供部30即钩子例程(回调函数)将控制转交给钩子对象API,以正常执行钩子对象API。
图8是根据本发明的又一实施例的具备未经授权的数据阻断功能的计算装置的硬件结构图。
如图8所示,根据本实施例的具备未经授权的数据阻断功能的计算装置50可包括一个以上的处理器503、网络接口508、贮存器509、输入输出装置507和存储器(RAM)505。处理器503、网络接口508、贮存器509、存储器505和输入输出装置507通过系统总线501收发数据。输入输出装置507是指键盘、鼠标、触摸屏等的输入装置和显示器等的输出装置。
贮存器509存储文件等的客体的数据591。可根据所述访问对象客体和所述用户操作对象客体是否不相同或是否为所述访问产生并且未提供关于所述访问对象客体的用户操作事件的情况,允许或阻断对所述客体的贮存器509上的访问。
在存储器505中加载有执行对象应用程序。一个以上的用户应用程序550、以安装有存储在存储器505中的可疑访问阻断用计算机程序590的结果加载的回调函数552和可疑访问阻断例程554被加载到存储器505中。不仅存在执行对象应用程序,而且也可以存在为了迅速的数据输入及输出而加载到存储器505的客体。此时,客体的数据556存储在存储器505中。
处理器503安装存储在贮存器中的可疑访问阻断用计算机程序590。所述计算机程序包括以下操作:监控是否产生访问实例中的、对所述贮存器上的访问对象客体的访问;从所述用户可访问性管理模块接收用户操作事件,该用户操作事件通过用户可访问性管理模块而生成并包括关于用户操作对象客体的信息;以及在所述访问产生并所述访问对象客体和所述用户操作对象客体不相同的情况下,阻断对所述访问对象客体的访问和通过所述网络接口进行的数据发送中的至少一个。
处理器执行安装所述程序的结果被加载到存储器505中的、客体访问感测用回调函数552和可疑访问阻断例程554。
下面,对根据本发明的实施例的具备未经授权的数据访问阻断功能的计算装置50的操作进行说明。
在对用户应用程序550添加用户操作的情况下,可疑访问阻断例程554从用户可访问性管理模块接收包括关于用户操作对象客体的信息的用户操作事件。所述用户可访问性管理模块可以是包括在用户应用程序550内部的例程、或者包括在计算装置50的操作系统(未图示)内部的例程。
回调函数552为这样的函数:将用于访问关于存储器505的数据的函数或用于通过网络接口508进行的网络发送的函数等作为对象设置API钩子,其结果是,共同调用直至调用出所述钩子对象API。回调函数552感测对客体的访问,可疑访问阻断例程554判定所述访问是否通过用户操作进行的。
如已说明那样,如果是访问客体的实例和添加了用户操作的实例相同的情况,则允许对客体的访问。此外,即使访问客体的实例和添加了用户操作的实例不相同,如果访问的客体名称和通过用户操作选择的客体名称相同,则允许对客体的访问。此时,为了补充安全性,即使访问客体的实例和添加了用户操作的实例不相同,也可以管理能够允许对客体的访问的实例的目录。此外,即使访问客体的实例和添加了用户操作的实例不相同,并且访问的客体名称和通过用户操作选择的客体名称彼此不同,在访问和用户操作的时刻相差临界值以上的情况下,也允许对客体的访问。
相反,能够允许对存储器内的客体的访问54、对贮存器内的客体的访问53和通过网络进行的客体发送52。
除上述情况之外的客体的访问被阻断51。
以上参照附图对本发明的实施例进行了说明,但本发明所属技术领域的普通技术人员应能理解,本发明可不变更本发明的技术思想或必要特征而以其他具体方式实施。因此,应理解为以上所述的实施例在所有方面为示例性的并非限定性的。

Claims (10)

1.一种未经授权的数据访问阻断方法,包括以下步骤:
监控是否产生访问实例中的对访问对象客体的访问;
从用户可访问性管理模块接收用户操作事件,所述用户操作事件通过所述用户可访问性管理模块而生成并包括关于用户操作对象客体的信息;
在所述访问产生并所述访问对象客体和所述用户操作对象客体不相同,或所述访问产生并且未提供关于所述访问对象客体的用户操作事件的情况下,阻断对访问对象客体的访问和通过网络进行的向外部装置的发送中的至少一个,
其中所述阻断的步骤包括以下步骤:
获取作为所述访问实例的标识符的第一标识符;
获取作为用户操作对象实例的标识符的第二标识符;
限于所述第一标识符和所述第二标识符不相同的情况,在所述访问对象客体和所述用户操作对象客体不相同的情况下,阻断对所述访问对象客体的访问和通过网络进行的向外部装置的发送中的至少一个。
2.根据权利要求1所述的未经授权的数据访问阻断方法,其中,
所述用户操作事件进一步包括关于具有所述用户操作对象客体的窗口的信息,
所述第二标识符由关于所述窗口的信息获取。
3.根据权利要求2所述的未经授权的数据访问阻断方法,其中,
限于所述第一标识符和所述第二标识符不相同的情况,在所述访问对象客体和所述用户操作对象客体不相同的情况下,阻断对所述访问对象客体的访问和通过网络进行的向外部装置的发送中的至少一个步骤包括以下步骤:
即使所述第一标识符和所述第二标识符不相同,在判断为所述访问对象客体和所述用户操作对象客体相同的情况下,也判定为所述访问实例和所述用户操作对象实例彼此相关联,从而允许对所述访问对象客体的访问或通过网络进行的向外部装置的发送。
4.根据权利要求3所述的未经授权的数据访问阻断方法,其中,
即使所述第一标识符和所述第二标识符不相同,在判断为所述访问对象客体和所述用户操作对象客体相同的情况下,也判定为所述访问实例和所述用户操作对象实例彼此相关联,从而允许对所述访问对象客体的访问或通过网络进行的向外部装置的发送的步骤包括以下步骤:
即使所述第一标识符和所述第二标识符不相同,并且所述访问对象客体和所述用户操作对象客体相同,也限于所述用户操作对象实例和访问实例中的至少一个包括在已存储的实例列表中的情况,允许对所述访问对象客体的访问或通过网络进行的向外部装置的发送。
5.根据权利要求1所述的未经授权的数据访问阻断方法,其中,
所述阻断的步骤进一步包括以下步骤:
即使所述访问产生并所述访问对象客体和所述用户操作对象客体相同,在所述访问产生时刻和所述用户操作事件提供时刻相差指定的临界值以上的情况下,也阻断对所述访问对象客体的访问和通过网络进行的向外部装置的发送中的至少一个。
6.根据权利要求1所述的未经授权的数据访问阻断方法,其中,
所述用户可访问性管理模块仅生成因用户操作而产生的事件。
7.根据权利要求1所述的未经授权的数据访问阻断方法,其中,
所述用户可访问性管理模块为以保障障碍人可访问性的方式修改通过应用程序提供的用户接口的模块。
8.根据权利要求1所述的未经授权的数据访问阻断方法,其中,
所述用户可访问性管理模块为微软主动可访问性模块。
9.一种存储有计算机程序的存储介质,所述计算机程序与计算装置相结合执行根据权利要求1所述的未经授权的数据访问阻断方法。
10.一种具备未经授权的数据访问阻断功能的计算装置,包括:
网络接口;
一个以上的处理器;
存储器,加载通过所述处理器执行的计算机程序;以及
贮存器,存储关于一个以上的客体的数据,
所述计算机程序包括以下操作:
监控是否产生访问实例中的、对所述贮存器上的访问对象客体的访问;
从用户可访问性管理模块接收用户操作事件,所述用户操作事件通过所述用户可访问性管理模块而生成并包括关于所述用户操作对象客体的信息;以及
在所述访问产生并所述访问对象客体和所述用户操作对象客体不相同的情况下,阻断对所述访问对象客体的访问和通过所述网络接口进行的数据发送中的至少一个,
其中所述阻断的操作包括以下操作:
获取作为所述访问实例的标识符的第一标识符;
获取作为用户操作对象实例的标识符的第二标识符;
限于所述第一标识符和所述第二标识符不相同的情况,在所述访问对象客体和所述用户操作对象客体不相同的情况下,阻断对所述访问对象客体的访问和通过网络进行的向外部装置的发送中的至少一个。
CN201610142859.5A 2015-05-28 2016-03-14 未经授权的数据访问阻断方法及具备该功能的计算装置 Active CN106203148B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2015-0074751 2015-05-28
KR1020150074751A KR101716690B1 (ko) 2015-05-28 2015-05-28 데이터 무단 엑세스 차단 방법 및 그 기능이 구비된 컴퓨팅 장치

Publications (2)

Publication Number Publication Date
CN106203148A CN106203148A (zh) 2016-12-07
CN106203148B true CN106203148B (zh) 2021-09-17

Family

ID=57393270

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610142859.5A Active CN106203148B (zh) 2015-05-28 2016-03-14 未经授权的数据访问阻断方法及具备该功能的计算装置

Country Status (4)

Country Link
US (1) US10063558B2 (zh)
KR (1) KR101716690B1 (zh)
CN (1) CN106203148B (zh)
WO (1) WO2016190485A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10262393B2 (en) * 2016-12-29 2019-04-16 Intel Corporation Multi-sample anti-aliasing (MSAA) memory bandwidth reduction for sparse sample per pixel utilization
US11144395B2 (en) 2019-04-08 2021-10-12 International Business Machines Corporation Automatic data preservation for potentially compromised encoded data slices
US20210256152A1 (en) * 2020-02-18 2021-08-19 BluBracket, Inc. Code access management

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8271778B1 (en) * 2002-07-24 2012-09-18 The Nielsen Company (Us), Llc System and method for monitoring secure data on a network
US7814021B2 (en) * 2003-01-23 2010-10-12 Verdasys, Inc. Managed distribution of digital assets
EP1721233A1 (en) * 2004-02-09 2006-11-15 Palmsource, Inc. Method and system for a securty model for a computing device
US7712132B1 (en) * 2005-10-06 2010-05-04 Ogilvie John W Detecting surreptitious spyware
US8347373B2 (en) * 2007-05-08 2013-01-01 Fortinet, Inc. Content filtering of remote file-system access protocols
KR100676912B1 (ko) 2006-10-09 2007-02-01 심재승 불법적인 파일 액세스 및 전송 차단 장치
WO2008067371A2 (en) * 2006-11-29 2008-06-05 Wisconsin Alumni Research Foundation System for automatic detection of spyware
US8656342B2 (en) * 2007-02-23 2014-02-18 Accenture Global Services Limited Composing integrated systems using GUI-based applications and web services
CA2789243A1 (en) * 2009-03-13 2010-09-16 Rutgers, The State University Of New Jersey Systems and methods for the detection of malware
KR101057432B1 (ko) * 2010-02-23 2011-08-22 주식회사 이세정보 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체
JP5983940B2 (ja) * 2011-06-14 2016-09-06 パナソニックIpマネジメント株式会社 情報処理装置、情報処理方法、プログラム、集積回路
CN102663321B (zh) * 2012-04-24 2016-01-13 百度在线网络技术(北京)有限公司 用于软件的安全性增强系统及方法

Also Published As

Publication number Publication date
WO2016190485A1 (ko) 2016-12-01
US20160352748A1 (en) 2016-12-01
CN106203148A (zh) 2016-12-07
KR101716690B1 (ko) 2017-03-15
KR20160139588A (ko) 2016-12-07
US10063558B2 (en) 2018-08-28

Similar Documents

Publication Publication Date Title
US9141801B2 (en) Apparatus and method for analyzing permission of application for mobile devices and detecting risk
US10235520B2 (en) System and method for analyzing patch file
RU2575985C2 (ru) Способ и устройство для проверки исполняемой программы с использованием модели
US8621608B2 (en) System, method, and computer program product for dynamically adjusting a level of security applied to a system
CN105519038B (zh) 用户输入的数据保护方法及系统
US20100235881A1 (en) Enabling Sharing of Mobile Communication Device
EP3610404B1 (en) Methods and apparatus to monitor permission-controlled hidden sensitive application behavior at run-time
CN105975864A (zh) 操作系统的启动方法、装置及终端
CN108763951B (zh) 一种数据的保护方法及装置
EP2946328A1 (en) System for and a method of cognitive behavior recognition
WO2014201830A1 (en) Method and device for detecting software-tampering
US8336097B2 (en) Apparatus and method for monitoring and protecting system resources from web browser
CN106203148B (zh) 未经授权的数据访问阻断方法及具备该功能的计算装置
CN110727941A (zh) 一种隐私数据保护方法、装置、终端设备及存储介质
US20220198013A1 (en) Detecting suspicious activation of an application in a computer device
US10929536B2 (en) Detecting malware based on address ranges
CN112805700A (zh) 控制计算机系统上的未授权驱动程序的安装
CN110192195B (zh) 用于安全数据访问的系统、方法和计算机存储介质
CN112463266A (zh) 执行策略生成方法、装置、电子设备以及存储介质
KR101763184B1 (ko) 백업을 이용한 파일 복구 방법
JP5828457B2 (ja) Api実行制御装置およびプログラム
CN111259374B (zh) 权限异常检测方法、装置、计算机设备和存储介质
KR20180065535A (ko) 커널 루트킷 탐지 시스템 및 방법
CN111240696A (zh) 移动恶意程序相似模块提取方法
KR101366544B1 (ko) 해킹을 위한 dll 루트킷 감지 방법 및 장치

Legal Events

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