CN110321699A - 一种基于数据监测保护业务系统安全的系统及方法 - Google Patents

一种基于数据监测保护业务系统安全的系统及方法 Download PDF

Info

Publication number
CN110321699A
CN110321699A CN201910431583.6A CN201910431583A CN110321699A CN 110321699 A CN110321699 A CN 110321699A CN 201910431583 A CN201910431583 A CN 201910431583A CN 110321699 A CN110321699 A CN 110321699A
Authority
CN
China
Prior art keywords
data
risk
current data
current
section
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910431583.6A
Other languages
English (en)
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.)
Sw Technology Co Ltd
Original Assignee
Sw Technology 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 Sw Technology Co Ltd filed Critical Sw Technology Co Ltd
Priority to CN201910431583.6A priority Critical patent/CN110321699A/zh
Publication of CN110321699A publication Critical patent/CN110321699A/zh
Pending legal-status Critical Current

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/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/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Alarm Systems (AREA)

Abstract

本发明公开了一种基于数据监测保护业务系统安全的设备,设备包括:虚拟机单元,用于将所接收的初始数据进行初始转换以生成当前数据,以及在当前数据被确定为安全数据时,基于业务系统对运行数据的格式要求对当前数据进行解释,以使得业务系统能够识别经过解释的当前数据;监测单元,根据预先设置的匹配规则对当前数据进行区段划分,从而生成多个数据段;匹配单元,将多个数据段与预先存储的风险数据段进行匹配,根据匹配结果确定当前数据的风险等级;以及安全保护单元,当当前数据的风险等级为高风险等级或中风险等级时,指示虚拟机单元不对当前数据进行解释;当当前数据的风险等级为低风险等级时,指示虚拟机单元对当前数据进行解释。

Description

一种基于数据监测保护业务系统安全的系统及方法
技术领域
本发明涉及安全技术领域,并且更具体地,涉及一种基于数据监测保护业务系统安全的系统及方法。
背景技术
在计算机编程领域中,Java编程语言被用于各个主要的工业部分并且存在于各种各样的装置、计算机和网络中。Java应用程序被以Java编程语言编制,并且被编译为与机器无关的字节码,该字节码在Java虚拟机(JVM)中执行,Java虚拟机部署在主操作系统(OS)和主计算机处理单元(CPU)的指令集架构(ISA)上。Java技术的多功能性、高效性、平台可移植性和安全性,使得其成为理想的网络计算技术。从笔记本电脑到数据中心、从游戏机到系统的超级计算机、以及从移动电话到因特网,到处都能发现Java编程语言。实际上、可移植性、可扩展性、可通用性和可靠性是Java的核心优势。但是,如此普遍的存在也为黑客和相关电脑攻击提供了大量的机会。
JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能够“一次编译,到处运行”的原因。此外,JVM为Java应用程序提供了开放的运行时间环境。几乎没有内置的安全措施,以保护JVM和使JVM自身稳定。
现有技术涉及保护Java字节码代码免受恶意运行环境中的静态和动态攻击的技术。在运行时,安全模块可以通过JNI在JVM中共同执行,以便指定的Java应用程序可以调用创新性安全模块内的安全操作。在安全模块中,该安全操作可以访问Java应用程序及其它加载在JVM中的Java库代码,并且进行保护。现有技术主要是用于防止篡改字节码,但是没有涉及通过读取JVM上转换成的字节码来监测攻击的行为。
因此,需要一种技术,通过对JVM上转换的字节码的数据进行监测,以保护业务系统安全。
发明内容
本发明提供了一种基于数据监测保护业务系统安全的系统及方法,通过对JVM上转换的字节码的数据进行监测实现对业务系统的安全保护。
有鉴于此,本发明提供了一种基于数据监测保护业务系统安全的设备,所述设备包括:
虚拟机单元,用于将所接收的初始数据进行初始转换以生成当前数据,以及在所述当前数据被确定为安全数据时,基于所述业务系统对运行数据的格式要求对所述当前数据进行解释,以使得所述业务系统能够识别所述经过解释的当前数据;
监测单元,用于监测所述虚拟机单元的运行并且当监测到当前数据已经被生成时,根据预先设置的匹配规则对所述当前数据进行区段划分,从而生成多个数据段;
匹配单元,将所述多个数据段与预先存储的风险数据段进行匹配,根据匹配结果确定所述当前数据的风险等级;以及
安全保护单元,当所述当前数据的风险等级为高风险等级时,指示所述虚拟机单元不对所述当前数据进行解释,并且将所述初始数据的发起方进行恶意标记;
当所述当前数据的风险等级为中风险等级时,指示所述虚拟机单元不对所述当前数据进行解释,并且将所述多个数据段中与预先存储的风险数据段不匹配的数据段进行存储;
当所述当前数据的风险等级为低风险等级时,指示所述虚拟机单元对所述当前数据进行解释,并且在安全区域内运行所述经过解释的当前数据。
优选地,当所述安全保护单元确定所述当前数据的风险等级为无风险时,将所述当前数据标识为安全数据。
优选地,所述根据预先设置的匹配规则对所述当前数据进行区段划分包括:根据预先设置的用于对数据段进行匹配的标志位,对所述当前数据进行区段划分。
优选地,根据所述业务系统所处的运行环境设置所述预先存储的风险数据段。
优选地,其中根据匹配结果确定所述当前数据的风险等级包括:当所述多个数据段与预先存储的风险数据段的匹配度为大于或等于60%时,确定所述当前数据的风险等级为高风险等级;
当所述多个数据段与预先存储的风险数据段的匹配度为大于或等于30%且小于60%时,确定所述当前数据的风险等级为中风险等级;以及
当所述多个数据段与预先存储的风险数据段的匹配度为小于30%时,确定所述当前数据的风险等级为低风险等级。
优选地,当具有恶意标记的发起方向虚拟机单元发送初始数据时,所述虚拟机单元不对具有恶意标记的发起方的初始数据进行任何处理。
优选地,所述风险数据段包括与违规调用操作系统指令相关联的代码段。
优选地,所述风险数据段包括与SQL注入攻击相关联的代码段。
优选地,所述将所述多个数据段中与预先存储的风险数据段不匹配的数据段进行存储后,对不匹配的数据段的出现次数进行统计,并且记录所述出现次数。
优选地,当所述出现次数大于阈值时,将所述不匹配的数据段设置为风险数据段。
基于本发明的另一方面,本发明提供一种基于数据监测保护业务系统安全的方法,所述方法包括:
将所接收的初始数据进行初始转换以生成当前数据;
当监测到当前数据已经被生成时,根据预先设置的匹配规则对所述当前数据进行区段划分,从而生成多个数据段;
将所述多个数据段与预先存储的风险数据段进行匹配,根据匹配结果确定所述当前数据的风险等级;以及
当所述当前数据的风险等级为高风险等级时,不对所述当前数据进行解释,并且将所述初始数据的发起方进行恶意标记;
当所述当前数据的风险等级为中风险等级时,不对所述当前数据进行解释,并且将所述多个数据段中与预先存储的风险数据段不匹配的数据段进行存储;
当所述当前数据的风险等级为低风险等级时,对所述当前数据进行解释,并且在安全区域内运行所述经过解释的当前数据;以及
在所述当前数据被确定为安全数据时,基于所述业务系统对运行数据的格式要求对所述当前数据进行解释,以使得所述业务系统能够识别所述经过解释的当前数据。
优选地,当确定所述当前数据的风险等级为无风险时,将所述当前数据标识为安全数据。
优选地,所述根据预先设置的匹配规则对所述当前数据进行区段划分包括:根据预先设置的用于对数据段进行匹配的标志位,对所述当前数据进行区段划分。
优选地,根据所述业务系统所处的运行环境设置所述预先存储的风险数据段。
优选地,其中根据匹配结果确定所述当前数据的风险等级包括:当所述多个数据段与预先存储的风险数据段的匹配度为大于或等于60%时,确定所述当前数据的风险等级为高风险等级;
当所述多个数据段与预先存储的风险数据段的匹配度为大于或等于30%且小于60%时,确定所述当前数据的风险等级为中风险等级;以及
当所述多个数据段与预先存储的风险数据段的匹配度为小于30%时,确定所述当前数据的风险等级为低风险等级。
优选地,当具有恶意标记的发起方发起针对初始数据的处理请求时,不对具有恶意标记的发起方的初始数据进行任何处理。
优选地,所述风险数据段包括与违规调用操作系统指令相关联的代码段。
优选地,所述风险数据段包括与SQL注入攻击相关联的代码段。
优选地,所述将所述多个数据段中与预先存储的风险数据段不匹配的数据段进行存储后,对不匹配的数据段的出现次数进行统计,并且记录所述出现次数。
优选地,当所述出现次数大于阈值时,将所述不匹配的数据段设置为风险数据段。
本发明的技术方案通过监测JVM运行的所有字节码,并根据字节码来判断所要执行的是否是例如调用操作系统指令或SQL语句这样的危险操作或攻击操作,因此,可以避免被伪装的字节码所欺骗。本发明的技术方案通过直接监控所有JVM运行的所有字节码,使得所有攻击行为都可以被发现,以此实现对业务系统的安全保护。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:
图1为根据本发明实施方式的基于数据监测保护业务系统安全的设备结构图;以及
图2为根据本发明实施方式的基于数据监测保护业务系统安全的方法流程图。
具体实施方式
以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。
图1为根据本发明实施方式的基于数据监测保护业务系统安全的设备结构图。本发明的实施方式提供一种基于数据监测保护业务系统安全的设备,设备包括虚拟机单元,本发明的实施方式以Java虚拟机JVM进行举例说明。首先,通过Java虚拟机JVM对源程序进行初始转换,以转化成字节码的当前数据,本发明的实施方式通过监测单元将生成的当前数据进行区段划分,生成多个当前数据的数据段。利用匹配单元,将多个数据段与预先存储的风险数据段进行匹配,根据匹配结果确定当前数据的风险等级,如高风险等级的删除数据、盗取账号的当前数据,或中风险等级的使系统运行变慢的当前数据,或低风险等级的广告插件或推送信息等当前数据。对于高风险等级的当前数据,Java虚拟机JVM不再对当前数据进行解释,以防止业务系统受到攻击,保护业务系统的安全,并将当前数据的源程序的发起方进行恶意标记;对于中风险等级的当前数据,Java虚拟机JVM不再对当前数据进行解释,以防止业务系统受到攻击,保护业务系统的安全,并将多个数据段中与预先存储的风险数据段不匹配的数据段进行存储;对于低风险等级的当前数据,Java虚拟机JVM对当前数据进行解释,并在安全区域内运行经过解释的当前数据。如图1所示,设备100包括:虚拟机单元101、监测单元102、匹配单元103以及安全保护单元104。其中,虚拟机单元101用于将所接收的初始数据进行初始转换以生成当前数据,以及在当前数据被确定为安全数据时,基于业务系统对运行数据的格式要求对当前数据进行解释,以使得业务系统能够识别经过解释的当前数据。通过Java虚拟机JVM对源程序进行初始转换,以转化成字节码的当前数据。例如,可以将调用操作系统指令,或SQL注入攻击等源程序进行初始转换,生成调用操作系统指令或SQL注入攻击等源程序的当前数据。在当前数据被确定为安全数据时,再将当前数据解释成基于业务系统的可执行指令。
监测单元102用于监测虚拟机单元的运行并且当监测到当前数据已经被生成时,根据预先设置的匹配规则对当前数据进行区段划分,从而生成多个数据段。本发明的实施方式,通过监测单元102,对已生成的当前数据进行区段划分,将当前数据划分为多个数据段,使得多个数据段与预先存储的风险数据段进行匹配,以确定当前数据的风险等级。
匹配单元103将多个数据段与预先存储的风险数据段进行匹配,根据匹配结果确定当前数据的风险等级。
优选地,根据预先设置的匹配规则对当前数据进行区段划分包括:根据预先设置的用于对数据段进行匹配的标志位,对当前数据进行区段划分。
优选地,根据业务系统所处的运行环境设置预先存储的风险数据段。
优选地,风险数据段包括与违规调用操作系统指令相关联的代码段。本发明的实施方式,预先存储与违规调用操作系统指令相关联的代码段作为风险数据段,以用于与当前数据划分的多个数据段进行匹配,根据匹配结果确定当前数据的风险等级。例如违规调用操作系统指令经过初始转换生成违规调用操作系统的当前数据,对违规调用操作系统的当前数据进行划分后与预先设置的违规调用操作系统指令相关联的代码段进行匹配,根据匹配结果,将违规调用操作系统的当前数据确定为高风险等级。
优选地,风险数据段包括与SQL注入攻击相关联的代码段。本发明的实施方式,预先存储与SQL注入攻击相关联的代码段作为风险数据段,以用于与当前数据划分的多个数据段进行匹配,根据匹配结果确定当前数据的风险等级。例如SQL注入攻击相关指令经过初始转换生成SQL注入攻击相关指令的当前数据,对SQL注入攻击相关指令的当前数据进行划分后与预先设置的SQL注入攻击相关指令的代码段进行匹配,根据匹配结果,将SQL注入攻击相关指令的当前数据确定为高风险等级。
优选地,将多个数据段中与预先存储的风险数据段不匹配的数据段进行存储后,对不匹配的数据段的出现次数进行统计,并且记录出现次数。本发明的实施方式中,对于当前数据划分成多个数据段后,其中的数据段,例如违规调用操作系统指令相关联的代码段或SQL注入攻击相关联的代码段的数据段,可以直接与预先存储的风险数据段进行匹配,对于当前数据划分成的多个数据段中不匹配的数据段进行存储,并对不匹配数据段的出现次数进行统计和记录。
优选地,当出现次数大于阈值时,将不匹配的数据段设置为风险数据段。本发明的实施方式中,不匹配数据段的出现次数大于阈值时,说明不匹配数据段风险较高,因此,将不匹配的数据段设置为风险数据段。
优选地,其中根据匹配结果确定当前数据的风险等级包括:当多个数据段与预先存储的风险数据段的匹配度为大于或等于60%时,确定当前数据的风险等级为高风险等级。本发明的实施方式中,当前数据的多个数据段与预先存储的风险数据段的匹配度为大于或等于60%,确定当前数据的风险等级为高风险等级,说明当前数据为高风险数据。
优选地,其中根据匹配结果确定当前数据的风险等级包括:当多个数据段与预先存储的风险数据段的匹配度为大于或等于30%且小于60%时,确定当前数据的风险等级为中风险等级。本发明的实施方式中,当前数据的多个数据段与预先存储的风险数据段的匹配度为大于或等于30%且小于60%时,确定当前数据的风险等级为中风险等级,说明当前数据为中风险数据。
优选地,其中根据匹配结果确定当前数据的风险等级包括:当多个数据段与预先存储的风险数据段的匹配度为小于30%时,确定当前数据的风险等级为低风险等级。本发明的实施方式中,当前数据的多个数据段与预先存储的风险数据段的匹配度为小于30%时,确定当前数据的风险等级为低风险等级,说明当前数据为低风险数据。
安全保护单元104用于当当前数据的风险等级为高风险等级时,指示虚拟机单元不对当前数据进行解释,并且将初始数据的发起方进行恶意标记。本发明的实施方式中,对于高风险等级的当前数据,Java虚拟机JVM不再对当前数据进行解释,以防止业务系统受到攻击,保护业务系统的安全,并将当前数据的源程序的发起方进行恶意标记。
当当前数据的风险等级为中风险等级时,安全保护单元104指示虚拟机单元不对当前数据进行解释,并且将多个数据段中与预先存储的风险数据段不匹配的数据段进行存储。本发明的实施方式,对于中风险等级的当前数据,Java虚拟机JVM不再对当前数据进行解释,以防止业务系统受到攻击,保护业务系统的安全,并将多个数据段中与预先存储的风险数据段不匹配的数据段进行存储。
当当前数据的风险等级为低风险等级时,安全保护单元104指示虚拟机单元对当前数据进行解释,并且在安全区域内运行经过解释的当前数据。本发明的实施方式,对于低风险等级的当前数据,Java虚拟机JVM对当前数据进行解释,并在安全区域内运行经过解释的当前数据。
此外,当安全保护单元104确定当前数据的风险等级为无风险时,将当前数据标识为安全数据。本发明的实施方式,对于无风险等级的当前数据,Java虚拟机JVM对当前数据进行解释,并在安全区域内运行经过解释的当前数据。
优选地,当具有恶意标记的发起方向虚拟机单元发送初始数据时,虚拟机单元不对具有恶意标记的发起方的初始数据进行任何处理。本发明的实施方式中,对于高风险等级的当前数据,由于已对当前数据的源程序的发起方进行恶意标记,当具有恶意标记的发起方向JVM虚拟机单元101发送初始数据时,虚拟机单元101不对具有恶意标记的发起方的初始数据进行任何处理,以保护业务系统的安全。
本发明的实施方式通过监测JVM运行的所有字节码,并根据字节码来判断所要执行的是否是例如调用操作系统指令或SQL语句这样的危险操作或攻击操作。由于攻击手段通常会伪装成用于向业务系统反馈消息,或从某些开放的端口注入到业务系统中运行以实现攻击业务系统的目的。由于本发明的实施方式是对所有的字节码数据进行监测,因此,可以避免被伪装的字节码所欺骗。本发明的技术实施方式通过直接监控所有在JVM运行的所有字节码,使得所有攻击行为都可以被发现,以此实现对业务系统的安全保护。
图2为根据本发明实施方式的基于数据监测保护业务系统安全的方法流程图。本发明的实施方式提供一种基于数据监测保护业务系统安全的方法,通过Java虚拟机JVM对源程序进行初始转换,以转化成字节码的当前数据,本发明的实施方式通过监测单元将生成的当前数据进行区段划分,生成多个当前数据的数据段。通过将多个数据段与预先存储的风险数据段进行匹配,根据匹配结果确定当前数据的风险等级,如高风险等级的删除数据、盗取账号的当前数据,或中风险等级的使系统运行变慢的当前数据,或低风险等级的广告插件或推送信息等当前数据。对于高风险等级的当前数据,Java虚拟机JVM不再对当前数据进行解释,以防止业务系统受到攻击,保护业务系统的安全,并将当前数据的源程序的发起方进行恶意标记;对于中风险等级的当前数据,Java虚拟机JVM不再对当前数据进行解释,以防止业务系统受到攻击,保护业务系统的安全,并将多个数据段中与预先存储的风险数据段不匹配的数据段进行存储;对于低风险等级的当前数据,Java虚拟机JVM对当前数据进行解释,并在安全区域内运行经过解释的当前数据。如图2所示,方法200从步骤201开始:
优选地,在步骤201:将所接收的初始数据进行初始转换以生成当前数据。通过Java虚拟机JVM对源程序进行初始转换,以转化成字节码的当前数据。例如,可以将调用操作系统指令,或SQL注入攻击等源程序进行初始转换,生成调用操作系统指令或SQL注入攻击等源程序的当前数据。
优选地,在步骤202:当监测到当前数据已经被生成时,根据预先设置的匹配规则对当前数据进行区段划分,从而生成多个数据段。
优选地,根据预先设置的匹配规则对当前数据进行区段划分包括:根据预先设置的用于对数据段进行匹配的标志位,对当前数据进行区段划分。
优选地,根据业务系统所处的运行环境设置预先存储的风险数据段。
优选地,风险数据段包括与违规调用操作系统指令相关联的代码段。本发明的实施方式,预先存储与违规调用操作系统指令相关联的代码段作为风险数据段,以用于与当前数据划分的多个数据段进行匹配,根据匹配结果确定当前数据的风险等级。例如违规调用操作系统指令经过初始转换生成违规调用操作系统的当前数据,对违规调用操作系统的当前数据进行划分后与预先设置的违规调用操作系统指令相关联的代码段进行匹配,根据匹配结果,将违规调用操作系统的当前数据确定为高风险等级。
优选地,风险数据段包括与SQL注入攻击相关联的代码段。本发明的实施方式,预先存储与SQL注入攻击相关联的代码段作为风险数据段,以用于与当前数据划分的多个数据段进行匹配,根据匹配结果确定当前数据的风险等级。例如SQL注入攻击相关指令经过初始转换生成SQL注入攻击相关指令的当前数据,对SQL注入攻击相关指令的当前数据进行划分后与预先设置的SQL注入攻击相关指令的代码段进行匹配,根据匹配结果,将SQL注入攻击相关指令的当前数据确定为高风险等级。
优选地,将多个数据段中与预先存储的风险数据段不匹配的数据段进行存储后,对不匹配的数据段的出现次数进行统计,并且记录出现次数。本发明的实施方式中,对于当前数据划分成多个数据段后,其中的数据段,例如违规调用操作系统指令相关联的代码段或SQL注入攻击相关联的代码段的数据段,可以直接与预先存储的风险数据段进行匹配,对于当前数据划分成的多个数据段中不匹配的数据段进行存储,并对不匹配数据段的出现次数进行统计和记录。
优选地,当出现次数大于阈值时,将不匹配的数据段设置为风险数据段。本发明的实施方式中,不匹配数据段的出现次数大于阈值时,说明不匹配数据段风险较高,因此,将不匹配的数据段设置为风险数据段。
优选地,在步骤203:将多个数据段与预先存储的风险数据段进行匹配,根据匹配结果确定当前数据的风险等级。
优选地,其中根据匹配结果确定当前数据的风险等级包括:当多个数据段与预先存储的风险数据段的匹配度为大于或等于60%时,确定当前数据的风险等级为高风险等级。本发明的实施方式中,当前数据的多个数据段与预先存储的风险数据段的匹配度为大于或等于60%,确定当前数据的风险等级为高风险等级,说明当前数据为高风险数据。
优选地,其中根据匹配结果确定当前数据的风险等级包括:当多个数据段与预先存储的风险数据段的匹配度为大于或等于30%且小于60%时,确定当前数据的风险等级为中风险等级。本发明的实施方式中,当前数据的多个数据段与预先存储的风险数据段的匹配度为大于或等于30%且小于60%时,确定当前数据的风险等级为中风险等级,说明当前数据为中风险数据。
优选地,其中根据匹配结果确定当前数据的风险等级包括:当多个数据段与预先存储的风险数据段的匹配度为小于30%时,确定当前数据的风险等级为低风险等级。本发明的实施方式中,当前数据的多个数据段与预先存储的风险数据段的匹配度为小于30%时,确定当前数据的风险等级为低风险等级,说明当前数据为低风险数据。
优选地,在步骤204:当当前数据的风险等级为高风险等级时,不对当前数据进行解释,并且将初始数据的发起方进行恶意标记。本发明的实施方式中,对于高风险等级的当前数据,Java虚拟机JVM不再对当前数据进行解释,以防止业务系统受到攻击,保护业务系统的安全,并将当前数据的源程序的发起方进行恶意标记。
优选地,当具有恶意标记的发起方发起针对初始数据的处理请求时,不对具有恶意标记的发起方的初始数据进行任何处理。本发明的实施方式中,对于高风险等级的当前数据,由于已对当前数据的源程序的发起方进行恶意标记,当具有恶意标记的发起方向JVM虚拟机单元发送初始数据时,虚拟机单元不对具有恶意标记的发起方的初始数据进行任何处理,以保护业务系统的安全。
优选地,在步骤205:当当前数据的风险等级为中风险等级时,不对当前数据进行解释,并且将多个数据段中与预先存储的风险数据段不匹配的数据段进行存储。本发明的实施方式,对于中风险等级的当前数据,Java虚拟机JVM不再对当前数据进行解释,以防止业务系统受到攻击,保护业务系统的安全,并将多个数据段中与预先存储的风险数据段不匹配的数据段进行存储。
优选地,在步骤206:当当前数据的风险等级为低风险等级时,对当前数据进行解释,并且在安全区域内运行经过解释的当前数据。本发明的实施方式,对于低风险等级的当前数据,Java虚拟机JVM对当前数据进行解释,并在安全区域内运行经过解释的当前数据。
优选地,在步骤207:在当前数据被确定为安全数据时,基于业务系统对运行数据的格式要求对当前数据进行解释,以使得业务系统能够识别经过解释的当前数据。
优选地,当确定当前数据的风险等级为无风险时,将当前数据标识为安全数据。本发明的实施方式,对于无风险等级的当前数据,Java虚拟机JVM对当前数据进行解释,并在安全区域内运行经过解释的当前数据。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于数据监测保护业务系统安全的设备,所述设备包括:
虚拟机单元,用于将所接收的初始数据进行初始转换以生成当前数据,以及在所述当前数据被确定为安全数据时,基于所述业务系统对运行数据的格式要求对所述当前数据进行解释,以使得所述业务系统能够识别所述经过解释的当前数据;
监测单元,用于监测所述虚拟机单元的运行并且当监测到当前数据已经被生成时,根据预先设置的匹配规则对所述当前数据进行区段划分,从而生成多个数据段;
匹配单元,将所述多个数据段与预先存储的风险数据段进行匹配,根据匹配结果确定所述当前数据的风险等级;以及
安全保护单元,当所述当前数据的风险等级为高风险等级时,指示所述虚拟机单元不对所述当前数据进行解释,并且将所述初始数据的发起方进行恶意标记;
当所述当前数据的风险等级为中风险等级时,指示所述虚拟机单元不对所述当前数据进行解释,并且将所述多个数据段中与预先存储的风险数据段不匹配的数据段进行存储;
当所述当前数据的风险等级为低风险等级时,指示所述虚拟机单元对所述当前数据进行解释,并且在安全区域内运行所述经过解释的当前数据。
2.根据权利要求1所述的设备,所述根据预先设置的匹配规则对所述当前数据进行区段划分包括:根据预先设置的用于对数据段进行匹配的标志位,对所述当前数据进行区段划分。
3.根据权利要求1所述的设备,根据所述业务系统所处的运行环境设置所述预先存储的风险数据段。
4.根据权利要求1所述的设备,其中根据匹配结果确定所述当前数据的风险等级包括:当所述多个数据段与预先存储的风险数据段的匹配度为大于或等于60%时,确定所述当前数据的风险等级为高风险等级;
当所述多个数据段与预先存储的风险数据段的匹配度为大于或等于30%且小于60%时,确定所述当前数据的风险等级为中风险等级;以及
当所述多个数据段与预先存储的风险数据段的匹配度为小于30%时,确定所述当前数据的风险等级为低风险等级。
5.根据权利要求1所述的设备,当具有恶意标记的发起方向虚拟机单元发送初始数据时,所述虚拟机单元不对具有恶意标记的发起方的初始数据进行任何处理。
6.一种基于数据监测保护业务系统安全的方法,所述方法包括:
将所接收的初始数据进行初始转换以生成当前数据;
当监测到当前数据已经被生成时,根据预先设置的匹配规则对所述当前数据进行区段划分,从而生成多个数据段;
将所述多个数据段与预先存储的风险数据段进行匹配,根据匹配结果确定所述当前数据的风险等级;以及
当所述当前数据的风险等级为高风险等级时,不对所述当前数据进行解释,并且将所述初始数据的发起方进行恶意标记;
当所述当前数据的风险等级为中风险等级时,不对所述当前数据进行解释,并且将所述多个数据段中与预先存储的风险数据段不匹配的数据段进行存储;
当所述当前数据的风险等级为低风险等级时,对所述当前数据进行解释,并且在安全区域内运行所述经过解释的当前数据;以及
在所述当前数据被确定为安全数据时,基于所述业务系统对运行数据的格式要求对所述当前数据进行解释,以使得所述业务系统能够识别所述经过解释的当前数据。
7.根据权利要求6所述的方法,所述根据预先设置的匹配规则对所述当前数据进行区段划分包括:根据预先设置的用于对数据段进行匹配的标志位,对所述当前数据进行区段划分。
8.根据权利要求6所述的方法,根据所述业务系统所处的运行环境设置所述预先存储的风险数据段。
9.根据权利要求6所述的方法,其中根据匹配结果确定所述当前数据的风险等级包括:当所述多个数据段与预先存储的风险数据段的匹配度为大于或等于60%时,确定所述当前数据的风险等级为高风险等级;
当所述多个数据段与预先存储的风险数据段的匹配度为大于或等于30%且小于60%时,确定所述当前数据的风险等级为中风险等级;以及
当所述多个数据段与预先存储的风险数据段的匹配度为小于30%时,确定所述当前数据的风险等级为低风险等级。
10.根据权利要求6所述的方法,当具有恶意标记的发起方发起针对初始数据的处理请求时,不对具有恶意标记的发起方的初始数据进行任何处理。
CN201910431583.6A 2019-05-22 2019-05-22 一种基于数据监测保护业务系统安全的系统及方法 Pending CN110321699A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910431583.6A CN110321699A (zh) 2019-05-22 2019-05-22 一种基于数据监测保护业务系统安全的系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910431583.6A CN110321699A (zh) 2019-05-22 2019-05-22 一种基于数据监测保护业务系统安全的系统及方法

Publications (1)

Publication Number Publication Date
CN110321699A true CN110321699A (zh) 2019-10-11

Family

ID=68113311

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910431583.6A Pending CN110321699A (zh) 2019-05-22 2019-05-22 一种基于数据监测保护业务系统安全的系统及方法

Country Status (1)

Country Link
CN (1) CN110321699A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007050089A1 (de) * 2007-10-17 2009-04-23 N.Runs Ag Verfahren zum Erkennen des Zustandes eines Codes
US20160180086A1 (en) * 2014-12-19 2016-06-23 Kaspersky Lab Zao System and method for secure execution of script files
CN108228312A (zh) * 2016-12-12 2018-06-29 卡巴斯基实验室股份制公司 通过解释器执行代码的系统和方法
CN108614960A (zh) * 2018-05-11 2018-10-02 西北大学 一种基于前端字节码技术的JavaScript虚拟化保护方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007050089A1 (de) * 2007-10-17 2009-04-23 N.Runs Ag Verfahren zum Erkennen des Zustandes eines Codes
US20160180086A1 (en) * 2014-12-19 2016-06-23 Kaspersky Lab Zao System and method for secure execution of script files
CN108228312A (zh) * 2016-12-12 2018-06-29 卡巴斯基实验室股份制公司 通过解释器执行代码的系统和方法
CN108614960A (zh) * 2018-05-11 2018-10-02 西北大学 一种基于前端字节码技术的JavaScript虚拟化保护方法

Similar Documents

Publication Publication Date Title
Torres et al. The art of the scam: Demystifying honeypots in ethereum smart contracts
KR102307534B1 (ko) 다수 소프트웨어 개체들에 걸쳐서 악성 행동을 트래킹하기 위한 시스템들 및 방법들
Datta et al. A logic of secure systems and its application to trusted computing
JP6706273B2 (ja) インタープリタ仮想マシンを用いた挙動マルウェア検出
CN102893289B (zh) 恶意软件保护
CN103270518B (zh) 虚拟机验证系统及其方法
Collberg et al. Distributed application tamper detection via continuous software updates
JP5564034B2 (ja) 自動解析を採用する改竄防止システム
CN105247532A (zh) 使用硬件特征的无监督的基于异常的恶意软件检测
CN105760787B (zh) 用于检测随机存取存储器中的恶意代码的系统及方法
CN106355092B (zh) 用于优化反病毒测定的系统和方法
CN101183414A (zh) 一种程序检测的方法、装置及程序分析的方法
Song et al. Appis: Protect android apps against runtime repackaging attacks
CN111859394A (zh) 基于tee的软件行为主动度量方法及系统
CN111028077B (zh) 一种基于输入过滤器的智能合约防护方法及系统
Weng et al. CloudMon: monitoring virtual machines in clouds
Masid et al. Application of the SAMA methodology to Ryuk malware
CN110321699A (zh) 一种基于数据监测保护业务系统安全的系统及方法
Ramachandran et al. Defence against crypto-ransomware families using dynamic binary instrumentation and DLL injection
Zhang et al. SAFTE: A Self-injection based anti-fuzzing technique
Kanzaki et al. A software protection method based on instruction camouflage
DONG et al. Sesoa: Security enhancement system with online authentication for android apk
Ling et al. Prison break of android reflection restriction and defense
Rauti et al. Internal interface diversification with multiple fake interfaces
KR102358099B1 (ko) 위협 사용자의 접속차단방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20191011

RJ01 Rejection of invention patent application after publication