CN115277163A - 一种基于标签的拟态化改造方法 - Google Patents

一种基于标签的拟态化改造方法 Download PDF

Info

Publication number
CN115277163A
CN115277163A CN202210873328.9A CN202210873328A CN115277163A CN 115277163 A CN115277163 A CN 115277163A CN 202210873328 A CN202210873328 A CN 202210873328A CN 115277163 A CN115277163 A CN 115277163A
Authority
CN
China
Prior art keywords
execution
label
content
labels
application
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
CN202210873328.9A
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.)
Hangzhou Ansiyuan Technology Co ltd
Original Assignee
Hangzhou Ansiyuan 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 Hangzhou Ansiyuan Technology Co ltd filed Critical Hangzhou Ansiyuan Technology Co ltd
Priority to CN202210873328.9A priority Critical patent/CN115277163A/zh
Publication of CN115277163A publication Critical patent/CN115277163A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • G06F16/2448Query languages for particular applications; for extensibility, e.g. user defined types
    • 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
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Power Engineering (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于标签的拟态化改造方法。本发明包括如下步骤:1、计算标签,执行体对执行申请进行计算,取执行申请的关键部分作为标签,或对执行申请的全部内容进行运算获得标签;2、嵌入标签,执行体将计算获得的标签嵌在执行内容的前部,将嵌入标签的执行内容递交给裁决模块;3、比对标签,裁决模块对多个执行申请的标签进行比对,若标签一致则认为执行体执行目标一致,认为此次执行申请有效,对执行申请进行执行和返回。本发明将多个密信执行体拟态化,通过提供多个异构且不同操作系统的执行体,每个执行体提供相同功能的服务,多个执行体因为硬件和操作系统天然的异构性,很难被攻击者找到同样的漏洞,因此同时出现问题的概率比较小。

Description

一种基于标签的拟态化改造方法
技术领域
本发明属于互联网安全通信技术领域,提供一种基于标签的拟态化改造方法。
背景技术
密信聊天服务是我公司提供的一种安全聊天服务,因为产品的敏感性等各种因素可能会经常遭受攻击,最终影响服务的整体的稳定性和安全性。针对该情况,公司研发人员针对性的提出了一种基于标签的拟态化改造方法,用于对密信执行体的执行申请进行迅速的裁决。
发明内容
本发明的目的是为了能够对密信执行体的执行申请进行迅速的裁决,提供一种基于标签的拟态化改造方法。
本发明给执行申请嵌入标签,标签一致则说明执行申请一致,然后裁决模块通过判断标签进行快速的裁决比对,裁决通过后对执行申请进行执行和返回。
本发明解决其技术问题所采用的技术方案具体如下:
步骤1、计算标签
执行体对执行申请进行计算,取执行申请的关键部分作为标签,或对执行申请的全部内容进行运算获得标签。
进一步的,本发明选择对执行申请的全部内容进行哈希,把哈希运算的结果作为标签。使用哈希的好处在于既能验证全部内容的一致性,保证数据的完整性,也能减少需要比对的长度,降低比对的复杂性,进而提升裁决效率。
步骤2、嵌入标签
执行体将计算获得的标签嵌在执行内容的前部,将嵌入标签的执行内容递交给裁决模块。
进一步的,所述的裁决模块是用来对多个执行申请的标签进行比对,标签一致则认为执行体执行目标一致。
进一步,对执行内容采用的数据库协议程序本身进行分析,将标签放在不影响协议处理的位置,该位置具体位于存放原执行内容长度的区域和原执行内容区域之间。
进一步的,对使用的postgresql数据库协议进行改造,在该数据库协议的请求包头部嵌入标签,具体方案如下:
①对于简单语句:
在协议中的长度字段后,原SQL执行内容前加上标签;标签具体的组成为隔断字符(比如E)+标签(原SQL内容哈希)+隔断字符(比如空格)。加上标签后重新计算并填写执行内容长度,重新计算的长度为原SQL语句长度+标签长度。
进一步的,所述的隔断字符可以自己设定。
②对于事务型语句:
事务型语句一般都包含有BEGIN、ROLLBACK、COMMIT等关键字,此类SQL语句表示一个执行整体,因此对这类事务型语句可以采用主体部分相同的标签,但为了区分执行事务的不同阶段,可以采用不同的起始隔断字符。
例如用隔断字符B表示一个事务的开始,C表示一个事务的继续,E表示一个事务的结束,除开始隔断字符外标签都采用主体执行部分的哈希。
进一步的,事务型语句中嵌入的标签,是不同的隔断字符加上事务的继续部分的执行内容的哈希。
步骤3、比对标签
裁决模块对多个执行申请的标签进行比对,若标签一致则认为执行体执行目标一致,认为此次执行申请有效,选择任意一个裁决通过的执行体的申请内容去掉标签后进行递交,递交给相应的处理模块进行处理并将处理结果返回给每个裁决通过的执行体。
若多个(N个)执行申请的标签不一致,则认为可能出现了运行异常或者受到攻击产生了不一致的数据;此时当N个执行体执行目标一致的个数大于等于(N/2)+1时,则认为此次执行申请有效,选择多个比对一致的执行目标中的任意一个的申请内容去掉标签后进行递交,递交给相应的处理模块进行处理并将处理结果返回给每个裁决通过的执行体,记录未通过裁决的执行体信息,并将该执行体下线。如果N个执行体执行目标一致的个数小于(N/2)+1时,则认为裁决无法继续,执行体可能遭受了不可预知的攻击,这时是一个极端情况,此时记录信息后将全部执行体下线。
所述的处理模块用于处理申请内容。
本发明有益效果如下:
密信内容一般会比较长,逐一匹配密信内容费时费力,造成比较大的性能损耗,且由于内容多,匹配程序可能会设计的十分复杂,设计成本很高且非必要,考虑不周之处又可能会带来一些问题。而对原来冗长的密信内容进行哈希能够得到一个较短的值,且哈希值一致代表原内容一致,因此用哈希的值来比较效率高,且性能损耗小。
本发明将多个密信执行体拟态化,通过提供多个异构且不同操作系统的执行体,每个执行体提供相同功能的服务,多个执行体因为硬件和操作系统天然的异构性,很难被攻击者找到同样的漏洞,因此同时出现问题的概率比较小。
本发明构造多个密信执行体后对执行体的执行申请进行裁决,只要多个执行体的执行目标一致,就认为此次执行申请有效,选择其中任意一个裁决通过的执行体的申请进行执行并返回执行结果,而裁决不通过的机器通过这种方式也能够及时的被定位并隔离出来,单独进行处理及漏洞修复。
附图说明
图1为本发明流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明。
如图1所示,一种基于标签的拟态化改造方法,具体步骤如下:
步骤1、计算标签
执行体对执行申请进行计算,取执行申请的关键部分作为标签,或对执行申请的全部内容进行运算获得标签。
进一步的,本发明选择对执行申请的全部内容进行哈希,把哈希运算的结果作为标签。使用哈希的好处在于既能验证全部内容的一致性,保证数据的完整性,也能减少需要比对的长度,降低比对的复杂性,进而提升裁决效率。
步骤2、嵌入标签
执行体将计算获得的标签嵌在执行内容的前部,将嵌入标签的执行内容递交给裁决模块。
进一步的,所述的裁决模块是用来对多个执行申请的标签进行比对,标签一致则认为执行体执行目标一致。
进一步,对执行内容采用的数据库协议程序本身进行分析,将标签放在不影响协议处理的位置,该位置具体位于存放原执行内容长度的区域和原执行内容区域之间。
进一步的,对使用的postgresql数据库协议进行改造,在该数据库协议的请求包头部嵌入标签,具体方案如下:
①对于简单语句:
在协议中的长度字段后,原SQL执行内容前加上标签;标签具体的组成为隔断字符(比如E)+标签(原SQL内容哈希)+隔断字符(比如空格)。加上标签后重新计算并填写执行内容长度,重新计算的长度为原SQL语句长度+标签长度。
长度(原SQL+新增) 隔断字符(E) 标签 隔断字符(空格) 原SQL执行内容
进一步的,所述的隔断字符可以自己设定。
②对于事务型语句:
事务型语句一般都包含有BEGIN、ROLLBACK、COMMIT等关键字,此类SQL语句表示一个执行整体,因此对这类事务型语句可以采用主体部分相同的标签,但为了区分执行事务的不同阶段,可以采用不同的起始隔断字符。
例如用隔断字符B表示一个事务的开始,C表示一个事务的继续,E表示一个事务的结束,除开始隔断字符外标签都采用主体执行部分的哈希。
进一步的,事务型语句中嵌入的标签,是不同的隔断字符加上事务的继续部分的执行内容的哈希;
即事务的开始和事务的结束在不同的事务型语句中基本是相同的,不同的是事务的继续,因此只对事务的继续进行哈希,将哈希值作为标签。
事务的开始
长度(原SQL+新增) 隔断字符(B) 标签 隔断字符(空格) 原SQL执行内容
事务的继续
长度(原SQL+新增) 隔断字符(C) 标签 隔断字符(空格) 原SQL执行内容
事务的结束
长度(原SQL+新增) 隔断字符(E) 标签 隔断字符(空格) 原SQL执行内容
步骤3、比对标签
裁决模块对多个执行申请的标签进行比对,若标签一致则认为执行体执行目标一致,认为此次执行申请有效,选择任意一个裁决通过的执行体的申请内容去掉标签后进行递交,递交给相应的处理模块进行处理并将处理结果返回给每个裁决通过的执行体。
若多个(N个)执行申请的标签不一致,则认为可能出现了运行异常或者受到攻击产生了不一致的数据;此时当N个执行体执行目标一致的个数大于等于(N/2)+1时,则认为此次执行申请有效,选择多个比对一致的执行目标中的任意一个的申请内容去掉标签后进行递交,递交给相应的处理模块进行处理并将处理结果返回给每个裁决通过的执行体,记录未通过裁决的执行体信息,并将该执行体下线。如果N个执行体执行目标一致的个数小于(N/2)+1时,则认为裁决无法继续,执行体可能遭受了不可预知的攻击,这时是一个极端情况,此时记录信息后将全部执行体下线。
进一步的,本发明选用三个异构体系架构:Intel X86、海光X86、飞腾ARM;选用两个不同操作系统:CentOS、Ubuntu,采用他们的组合形成不同的执行体。
实施例1:
如图1所示,执行体1(Intel X86+CentOS),执行体2(海光X86+CentOS),执行体3(飞腾ARM 64+Ubuntu),执行体N(异构体系架构+操作系统)。
每个执行体的执行过程包括以下步骤:
①收到执行申请;
②解析执行申请并计算标签;
③嵌入标签到协议支持的合适位置;
④重新计算并填写执行申请长度(长度=标签长度+原执行申请长度);
⑤递交嵌入标签的执行申请。
为了让每个执行体能够支持以上步骤,需要重新编译对应功能的jar包,因此选用postgresql-jdbc 42.1-4版本,加入执行步骤①②③④⑤。
实施例2:
基于实施例1的执行体,具体的源码包为postgresql-jdbc-42.1-4.src,编译采用apache-maven-3.6.3。
编译命令
cd postgresql-jdbc-42.1-4.src
apache-maven-3.6.3/bin/mvn compile
apache-maven-3.6.3/bin/mvn package-Dmaven.test.skip=true
编译后目标文件
postgresql-jdbc-42.1-4.src/pgjdbc/target目录下会生成postgresql-42.1.4.jar
改名postgres.jar后放到原程序目录下,然后重启原程序,使执行体支持上述步骤。
实施例3:
如下图1所示,裁决模块收到各执行体发来的执行申请后,执行以下步骤进行标签比对工作
①解析执行申请并获得标签,比对标签是否一致,标签一致则说明执行申请裁决通过,不一致则记录日志并隔离执行体。
②选择裁决通过的任意一个执行申请,将不包含标签的执行部分递交给相应程序进行处理。
③向裁决通过的执行体返回执行结果。

Claims (7)

1.一种基于标签的拟态化改造方法,其特征在于给执行申请嵌入标签,标签一致则说明执行申请一致,然后裁决模块通过判断标签进行快速的裁决比对,裁决通过后对执行申请进行执行和返回,具体包括如下步骤:
步骤1、计算标签
执行体对执行申请进行计算,取执行申请的关键部分作为标签,或对执行申请的全部内容进行运算获得标签;
步骤2、嵌入标签
执行体将计算获得的标签嵌在执行内容的前部,将嵌入标签的执行内容递交给裁决模块;
步骤3、比对标签
裁决模块对多个执行申请的标签进行比对,若标签一致则认为执行体执行目标一致,认为此次执行申请有效,选择任意一个裁决通过的执行体的申请内容去掉标签后进行递交,递交给相应的处理模块进行处理并将处理结果返回给每个裁决通过的执行体;
若多个执行申请的标签不一致,则认为可能出现了运行异常或者受到攻击产生了不一致的数据;此时当N个执行体执行目标一致的个数大于等于(N/2)+1时,则认为此次执行申请有效,选择多个比对一致的执行目标中的任意一个的申请内容去掉标签后进行递交,递交给相应的处理模块进行处理并将处理结果返回给每个裁决通过的执行体,记录未通过裁决的执行体信息,并将该执行体下线;如果N个执行体执行目标一致的个数小于(N/2)+1时,则认为裁决无法继续,执行体可能遭受了不可预知的攻击,这时是一个极端情况,此时记录信息后将全部执行体下线。
2.根据权利要求1所述的一种基于标签的拟态化改造方法,其特征在于选择对执行申请的全部内容进行哈希,把哈希运算的结果作为标签。
3.根据权利要求1所述的一种基于标签的拟态化改造方法,其特征在于执行体将计算获得的标签嵌在执行内容的前部,将嵌入标签的执行内容递交给裁决模块。
4.根据权利要求1所述的一种基于标签的拟态化改造方法,其特征在于对执行内容采用的数据库协议程序本身进行分析,将标签放在不影响协议处理的位置,该位置具体位于存放原执行内容长度的区域和原执行内容区域之间。
5.根据权利要求1或4所述的一种基于标签的拟态化改造方法,其特征在于对使用的postgresql数据库协议进行改造,在该数据库协议的请求包头部嵌入标签,具体方案如下:
①对于简单语句:
在协议中的长度字段后,原SQL执行内容前加上标签;标签具体的组成为隔断字符+标签+隔断字符;加上标签后重新计算并填写执行内容长度,重新计算的长度为原SQL语句长度+标签长度;
②对于事务型语句:
事务型语句包含有事务的开始、事务的继续和事务的结束,此类SQL语句表示一个执行整体,因此对这类事务型语句采用主体部分相同的标签,但为了区分执行事务的不同阶段,采用不同的起始隔断字符。
6.根据权利要求5所述的一种基于标签的拟态化改造方法,其特征在于对于事务型语句,用隔断字符B表示一个事务的开始,C表示一个事务的继续,E表示一个事务的结束;事务型语句中嵌入的标签是事务的继续部分的执行内容的哈希。
7.根据权利要求5所述的一种基于标签的拟态化改造方法,其特征在于所述执行体为异构且不同操作系统的执行体,每个执行体提供相同功能的服务。
CN202210873328.9A 2022-07-22 2022-07-22 一种基于标签的拟态化改造方法 Pending CN115277163A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210873328.9A CN115277163A (zh) 2022-07-22 2022-07-22 一种基于标签的拟态化改造方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210873328.9A CN115277163A (zh) 2022-07-22 2022-07-22 一种基于标签的拟态化改造方法

Publications (1)

Publication Number Publication Date
CN115277163A true CN115277163A (zh) 2022-11-01

Family

ID=83770428

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210873328.9A Pending CN115277163A (zh) 2022-07-22 2022-07-22 一种基于标签的拟态化改造方法

Country Status (1)

Country Link
CN (1) CN115277163A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100737181B1 (ko) * 2006-06-15 2007-07-11 경북대학교 산학협력단 안전한 알에프아이디 시스템을 위한 저부하 및 재동기특성을 가진 상호인증 장치 및 그 방법
CN111181926A (zh) * 2019-12-13 2020-05-19 中国人民解放军战略支援部队信息工程大学 一种基于拟态防御思想的安全设备及其运行方法
CN111786946A (zh) * 2020-05-18 2020-10-16 中国电子科技集团公司电子科学研究院 拟态云服务异构执行体调度方法和装置
CN112100627A (zh) * 2020-10-30 2020-12-18 之江实验室 适用于拟态防御系统的多队列随机参数归一化装置及方法
CN112118128A (zh) * 2020-08-18 2020-12-22 河南信大网御科技有限公司 在线执行体故障的快速识别方法及恢复方法
CN112153024A (zh) * 2020-09-11 2020-12-29 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 基于SaaS平台的拟态防御系统
WO2021159834A1 (zh) * 2020-02-14 2021-08-19 平安科技(深圳)有限公司 异常信息处理节点分析方法、装置、介质及电子设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100737181B1 (ko) * 2006-06-15 2007-07-11 경북대학교 산학협력단 안전한 알에프아이디 시스템을 위한 저부하 및 재동기특성을 가진 상호인증 장치 및 그 방법
CN111181926A (zh) * 2019-12-13 2020-05-19 中国人民解放军战略支援部队信息工程大学 一种基于拟态防御思想的安全设备及其运行方法
WO2021159834A1 (zh) * 2020-02-14 2021-08-19 平安科技(深圳)有限公司 异常信息处理节点分析方法、装置、介质及电子设备
CN111786946A (zh) * 2020-05-18 2020-10-16 中国电子科技集团公司电子科学研究院 拟态云服务异构执行体调度方法和装置
CN112118128A (zh) * 2020-08-18 2020-12-22 河南信大网御科技有限公司 在线执行体故障的快速识别方法及恢复方法
CN112153024A (zh) * 2020-09-11 2020-12-29 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 基于SaaS平台的拟态防御系统
CN112100627A (zh) * 2020-10-30 2020-12-18 之江实验室 适用于拟态防御系统的多队列随机参数归一化装置及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
冯峰;周清雷: "基于拟态防御技术针对关键数据进行保护的架构研究", 现代计算机, pages 16 - 20 *
周清雷;冯峰;朱维军: "基于功能切片的拟态防御体系结构及安全等级评估方法", 通信学报, vol. 39, no. 2, pages 95 - 105 *

Similar Documents

Publication Publication Date Title
US7739737B2 (en) Method and apparatus to detect malicious software
Cesare et al. Classification of malware using structured control flow
Alrabaee et al. Fossil: a resilient and efficient system for identifying foss functions in malware binaries
Flake Structural comparison of executable objects
Bruschi et al. Code normalization for self-mutating malware
Gheorghescu An automated virus classification system
Jacobson et al. Labeling library functions in stripped binaries
US6718469B2 (en) System and method for executing computer virus definitions containing general purpose programming language extensions
US20170214704A1 (en) Method and device for feature extraction
US20160321453A1 (en) Method and device for detecting malicious code in an intelligent terminal
US11048798B2 (en) Method for detecting libraries in program binaries
Yuan et al. B2sfinder: Detecting open-source software reuse in cots software
CN107526970B (zh) 基于动态二进制平台检测运行时程序漏洞的方法
CN103902910A (zh) 检测智能终端中恶意代码的方法及装置
CN109983464B (zh) 检测恶意脚本
US20110047531A1 (en) Methods and apparatuses for selective code coverage
US20210173926A1 (en) Method and system for determining affiliation of software to software families
US11250129B2 (en) Method and system for determining affiliation of software to software families
Dullien et al. Automated attacker correlation for malicious code
Lakhotia et al. Imposing order on program statements to assist anti-virus scanners
CN114756868A (zh) 一种基于指纹的网络资产与漏洞关联方法及装置
Liu et al. Vulnerability analysis for x86 executables using genetic algorithm and fuzzing
Black et al. Evolved similarity techniques in malware analysis
CN115277163A (zh) 一种基于标签的拟态化改造方法
Ming et al. MalwareHunt: semantics-based malware diffing speedup by normalized basic block memoization

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20221101