CN113591089A - 一种数据混淆加密方法 - Google Patents

一种数据混淆加密方法 Download PDF

Info

Publication number
CN113591089A
CN113591089A CN202110923536.0A CN202110923536A CN113591089A CN 113591089 A CN113591089 A CN 113591089A CN 202110923536 A CN202110923536 A CN 202110923536A CN 113591089 A CN113591089 A CN 113591089A
Authority
CN
China
Prior art keywords
character string
initial data
data
data code
encryption result
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110923536.0A
Other languages
English (en)
Other versions
CN113591089B (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.)
Information and Data Security Solutions Co Ltd
Original Assignee
Information and Data Security Solutions 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 Information and Data Security Solutions Co Ltd filed Critical Information and Data Security Solutions Co Ltd
Priority to CN202110923536.0A priority Critical patent/CN113591089B/zh
Publication of CN113591089A publication Critical patent/CN113591089A/zh
Application granted granted Critical
Publication of CN113591089B publication Critical patent/CN113591089B/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/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/562Static detection
    • 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/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Bioethics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种数据混淆加密方法,所述方法包括:数据发送端生成待传输的初始数据代码;利用异或运算加密初始数据代码,获得一次加密结果;将一次加密结果转化为字符串数组以完成二次加密并将所述字符串数组发送给数据接收端;数据接收端对字符串数组进行解密,还原为一次加密结果;数据接收端再次利用异或运算对一次加密结果解密获得初始数据代码,最终执行初始数据代码;本发明的优点在于:一些不希望进行特征检测的场合下避免数据被杀毒软件检测而无法正常进行下一步操作,提高数据传输的效率以及安全性。

Description

一种数据混淆加密方法
技术领域
本发明涉及计算机网络安全技术领域,更具体涉及一种数据混淆加密方法。
背景技术
当今杀软的主流技术通过特征码检测为主,究其原因,一是该技术研究最早,发展最为成熟;二是能够准确有效标识病毒,基于特征检测开发的引擎检测效率高,因此为大多数放毒软件厂商所采用。鉴于此,国内外逐步开展了基于特征码的免杀技术研究。目前研究成果有源码免杀、花指令免杀、shellcode分离加载、shellcode混淆、加商业壳,调用底层API、冷门语言编写木马、利用unhook等方式绕过杀软检测。
目前主流C2控制端利用Cobalt Strike工具实现远控,Cobalt Strike是一款基于Java编写的全平台多方协同后渗透攻击框架,也称为CS。早期版本依赖Metasploit框架,Cobalt Strike 3.0之后则是作为单独的平台使用。其支持多种通信协议,包括http、https、dns、smb等,同时集成了提权、凭据导出、端口转发、端口扫描、横向移动、Socks代理、钓鱼攻击等功能,且支持丰富的扩展插件,几乎可以覆盖APT攻击链所需的各个技术环节。木马生成方面也涵盖了大多数的平台和攻击场景,包括PE木马、ELF木马、网页木马、Office宏病毒木马等,而通过自带工具生成木马具备强特征,已被大多厂商所查杀,因此目前大多数具备强特征的木马或者数据在传输过程中能够被查杀,在一些不希望进行特征检测的场合下如何实现数据免杀成了新的研究热点。
中国专利公开号CN112052432A,公开了一种终端设备授权方法,所述方法包括加密流程、解密流程及终端认证流程,加密流程包括,将终端设备的MAC地址形成一个二维数组,将二维数组的元素与字符R进行异或运算处理得到密文字符串,然后写入密钥文件;解密流程包括将密钥文件的密文字符串读取出来与字符R进行异或运算,然后处理得到终端设备的MAC地址;终端认证流程包括终端设备的MAC地址是否在预设的终端设备白名单中以及判断密钥文件是否在有效期内,来判断是否对终端设备进行授权。该专利申请的有益效果在于:利用终端设备的物理地址信息,加密成密钥文件,对终端设备进行认证,使得各终端设备的加密不再需要硬件加密锁,大大节约成本,同时提高项目管理效率。但是该专利申请采用一次异或加密,两次异或的方式进行解密,部分杀毒软件对异或是有特殊监控规则的,当出现循环异或时,程序的信息熵和会增加,就会被杀毒软件认为可疑,因此该专利申请难以绕过杀毒软件的特征检测。
发明内容
本发明所要解决的技术问题在于现有技术数据混淆加密方法难以绕过杀毒软件的特征检测,导致一些不希望进行特征检测的场合下数据依然被杀毒软件检测而无法正常进行下一步操作,影响数据传输的效率以及安全性。
本发明通过以下技术手段实现解决上述技术问题的:一种数据混淆加密方法,所述方法包括:
步骤一:数据发送端生成待传输的初始数据代码;
步骤二:利用异或运算加密初始数据代码,获得一次加密结果;
步骤三:将一次加密结果转化为字符串数组以完成二次加密,并将所述字符串数组发送给数据接收端;
步骤四:数据接收端对字符串数组进行解密,还原为一次加密结果;
步骤五:数据接收端利用异或运算对一次加密结果解密获得初始数据代码,最终执行初始数据代码。
本发明利用异或运算加密初始数据代码,获得一次加密结果,将一次加密结果转化为字符串数组完成二次加密之后发送给数据接收端,多层混淆,实现静态免杀,避免在一些不希望进行特征检测的场合下数据依然被杀毒软件检测而无法正常进行下一步操作,提高数据传输效率的同时提高数据传输的安全性。
进一步地,所述步骤一中生成的待传输的初始数据代码为一段shellcode。
进一步地,所述利用异或运算加密初始数据代码,获得一次加密结果的步骤包括:将初始数据代码与预设字符串进行异或运算以加密初所述始数据代码,获得一次加密结果。
进一步地,所述将一次加密结果转化为字符串数组以完成二次加密的步骤包括:利用转换函数将一次加密结果转化为MAC地址、IPv4地址、IPv6地址或UUID形式的字符串数组。
更进一步地,调用ntdll.dll库的转换函数RtlEthernetAddressToStringA()将一次加密结果转化为MAC地址形式的字符串数组。
更进一步地,所述数据接收端对字符串数组进行解密,还原为一次加密结果的步骤包括:数据接收端的加载器调用ntdll.dll库的函数RtlEthernetStringToAddressA()对字符串数组解密,还原为一次加密结果。
更进一步地,所述步骤五包括:数据接收端将步骤四还原后的一次加密结果与预设字符串进行异或运算,解密获得初始数据代码,最终执行初始数据代码。
更进一步地,所述方法还包括:在生成的待传输的初始数据代码之前插入自解密程序。
更进一步地,所述自解密程序的执行过程为:找到当前的IP寄存器值,利用找到的IP寄存器值与待传输的初始数据代码的距离找到待传输的初始数据代码的地址,逐字节地将步骤四还原后的一次加密结果与预设字符串进行异或运算。
更进一步地,所述步骤五还包括:返回步骤一,执行解码程序中的异或运算对步骤四中还原出的一次加密结果进行解密,获得初始数据代码,最终执行初始数据代码。
本发明的优点在于:
(1)本发明利用异或运算加密初始数据代码,获得一次加密结果,将一次加密结果转化为字符串数组完成二次加密之后发送给数据接收端,多层混淆,实现静态免杀,避免在一些不希望进行特征检测的场合下数据依然被杀毒软件检测而无法正常进行下一步操作,提高数据传输效率的同时提高数据传输的安全性。
(2)本发明在生成的待传输的初始数据代码之前插入自解密程序,通过插入的自解密程序对还原出的一次加密结果进行二次解密才能获得初始数据代码,所以内存中存储的并不是初始数据代码,通过查找内存的方式也无法找到初始数据代码,进一步提高数据传输的安全性。
附图说明
图1为本发明实施例所提供的一种数据混淆加密方法的算法流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,一种数据混淆加密方法,所述方法包括:
S1:数据发送端生成待传输的初始数据代码;本实施例中生成的待传输的初始数据代码为一段shellcode,shellcode是程序设计者根据需要设计的一段代码,该代码的作用不做特别限定,根据需要编写。本发明可以用于对数据进行加密传输以避免数据被破解或者用于不希望数据被杀毒软件检测而影响传输效率的问题,也可以用于攻防演练中攻击方对防守方进行攻击的时候发送特定代码以避免防守方查杀,通过攻防演练提升攻防双方的技能。
本实施例中,在生成的待传输的初始数据代码之前插入自解密程序,通过编写汇编代码转换为机器码并插入到异或加密shellcode之前,这段汇编代码的功能是:首先通过call pop技巧找到当前的ip寄存器值,然后利用找到的ip和shellcode的距离找到shellcode的地址,然后通过循环,逐字节异或进行解密恢复shellcode,然后执行程序。
S2:利用异或运算加密初始数据代码,获得一次加密结果;本实施例将初始数据代码与预设字符串进行异或运算以加密所述初始数据代码,获得一次加密结果,具体的,遍历shellcode字符串通过^运算符做异或运算,进行第一次加密。
S3:将一次加密结果转化为字符串数组以完成二次加密,并将所述字符串数组发送给数据接收端;本实施例中,利用转换函数将一次加密结果转化为MAC地址、IPv4地址、IPv6地址或UUID形式的字符串数组,其中,调用ntdll.dll库的转换函数RtlEthernetAddressToStringA()将一次加密结果转化为MAC地址形式的字符串数组,IPv4地址、IPv6地址或UUID与字符串数组之间的转换类似于MAC地址与字符串数组之间的转换,只是转换函数有所差别。
一次加密结果转化为MAC地址形式的字符串数组的程序过程如下:
RtlEthernetAddressToStringA((DL_EUI48*)bufptr,(PSTR)hptr);
\xFC\x48\x83\xE4\xF0\xE8====>FC-48-83-E4-F0-E8
S4:数据接收端对字符串数组进行解密,还原为一次加密结果;本实施例中,数据接收端的加载器调用ntdll.dll库的函数RtlEthernetStringToAddressA()对字符串数组解密,还原为一次加密结果,程序过程如下:
RtlEthernetStringToAddressA(S[i],(PCSTR*)hptr,(DL_EUI48*)hptr);
FC-48-83-E4-F0-E8====>\xFC\x48\x83\xE4\xF0\xE8
S5:数据接收端利用异或运算对一次加密结果解密获得初始数据代码,最终执行初始数据代码,具体过程为:返回S1,执行解码程序中的异或运算对S4还原后的一次加密结果与预设字符串进行异或运算,使得程序在内存中再次自解密,获得初始数据代码,最终执行初始数据代码。本实施例中,利用EnumWindows注册回调函数WNDENUMPROC执行shellcode,此时在内存中自异或解密,执行shellcode。
通过以上技术方案,本发明利用异或运算加密初始数据代码,获得一次加密结果,将一次加密结果转化为字符串数组完成二次加密之后发送给数据接收端,多层混淆,实现静态免杀,避免在一些不希望进行特征检测的场合下数据依然被杀毒软件检测而无法正常进行下一步操作,提高数据传输效率的同时提高数据传输的安全性。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种数据混淆加密方法,其特征在于,所述方法包括:
步骤一:数据发送端生成待传输的初始数据代码;
步骤二:利用异或运算加密初始数据代码,获得一次加密结果;
步骤三:将一次加密结果转化为字符串数组以完成二次加密,并将所述字符串数组发送给数据接收端;
步骤四:数据接收端对字符串数组进行解密,还原为一次加密结果;
步骤五:数据接收端利用异或运算对一次加密结果解密获得初始数据代码,最终执行初始数据代码。
2.根据权利要求1所述的数据混淆加密方法,其特征在于,所述步骤一中生成的待传输的初始数据代码为一段shellcode。
3.根据权利要求1所述的数据混淆加密方法,其特征在于,所述利用异或运算加密初始数据代码,获得一次加密结果的步骤包括:将初始数据代码与预设字符串进行异或运算以加密所述初始数据代码,获得一次加密结果。
4.根据权利要求1所述的数据混淆加密方法,其特征在于,所述将一次加密结果转化为字符串数组以完成二次加密的步骤包括:利用转换函数将一次加密结果转化为MAC地址、IPv4地址、IPv6地址或UUID形式的字符串数组。
5.根据权利要求4所述的数据混淆加密方法,其特征在于,调用ntdll.dll库的转换函数RtlEthernetAddressToStringA()将一次加密结果转化为MAC地址形式的字符串数组。
6.根据权利要求5所述的数据混淆加密方法,其特征在于,所述数据接收端对字符串数组进行解密,还原为一次加密结果的步骤包括:数据接收端的加载器调用ntdll.dll库的函数RtlEthernetStringToAddressA()对字符串数组解密,还原为一次加密结果。
7.根据权利要求3所述的数据混淆加密方法,其特征在于,所述步骤五包括:数据接收端将步骤四还原后的一次加密结果与预设字符串进行异或运算,解密获得初始数据代码,最终执行初始数据代码。
8.根据权利要求7所述的数据混淆加密方法,其特征在于,所述方法还包括:在生成的待传输的初始数据代码之前插入自解密程序。
9.根据权利要求8所述的数据混淆加密方法,其特征在于,所述自解密程序的执行过程为:找到当前的IP寄存器值,利用找到的IP寄存器值与待传输的初始数据代码的距离找到待传输的初始数据代码的地址,逐字节地将步骤四还原后的一次加密结果与预设字符串进行异或运算。
10.根据权利要求9所述的数据混淆加密方法,其特征在于,所述步骤五还包括:返回步骤一,执行解码程序中的异或运算对步骤四中还原出的一次加密结果进行解密,获得初始数据代码,最终执行初始数据代码。
CN202110923536.0A 2021-08-12 2021-08-12 一种数据混淆加密方法 Active CN113591089B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110923536.0A CN113591089B (zh) 2021-08-12 2021-08-12 一种数据混淆加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110923536.0A CN113591089B (zh) 2021-08-12 2021-08-12 一种数据混淆加密方法

Publications (2)

Publication Number Publication Date
CN113591089A true CN113591089A (zh) 2021-11-02
CN113591089B CN113591089B (zh) 2024-06-11

Family

ID=78257444

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110923536.0A Active CN113591089B (zh) 2021-08-12 2021-08-12 一种数据混淆加密方法

Country Status (1)

Country Link
CN (1) CN113591089B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117134914A (zh) * 2023-10-26 2023-11-28 山东山大鸥玛软件股份有限公司 一种基于硬件特征的一次一密的随机秘钥流式加密算法及系统

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101025978A (zh) * 2006-02-16 2007-08-29 三星电子株式会社 加密的数据播放器和加密的数据播放器系统
US20100299538A1 (en) * 2009-05-20 2010-11-25 Conexant Systems, Inc. Systems and Methods for Low-Latency Encrypted Storage
CN101964036A (zh) * 2010-10-29 2011-02-02 北京椒图科技有限公司 漏洞检测方法及装置
CN102725737A (zh) * 2009-12-04 2012-10-10 密码研究公司 可验证防泄漏的加密和解密
US20140006782A1 (en) * 2010-02-10 2014-01-02 SecurenCrypt, LLC Document encryption and decryption
CN106326693A (zh) * 2016-08-18 2017-01-11 广州优视网络科技有限公司 应用程序的代码混淆方法及装置
CN108255496A (zh) * 2018-01-19 2018-07-06 广州汇智通信技术有限公司 一种获取安卓应用原生层代码的方法、系统及相关装置
CN110598379A (zh) * 2019-09-23 2019-12-20 北京智游网安科技有限公司 一种实现字符串混淆的方法、系统、设备及存储介质
CN110633073A (zh) * 2019-09-17 2019-12-31 福建天晴在线互动科技有限公司 基于Il2cpp编译的Unity代码混淆的方法
CN111245802A (zh) * 2020-01-06 2020-06-05 银清科技有限公司 数据传输安全控制方法、服务器以及终端
CN112052432A (zh) * 2020-09-01 2020-12-08 禾麦科技开发(深圳)有限公司 终端设备授权方法及装置
CN112100582A (zh) * 2020-09-22 2020-12-18 焦点教育科技有限公司 一种应用强对称加密保护软件分发安全的方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101025978A (zh) * 2006-02-16 2007-08-29 三星电子株式会社 加密的数据播放器和加密的数据播放器系统
US20100299538A1 (en) * 2009-05-20 2010-11-25 Conexant Systems, Inc. Systems and Methods for Low-Latency Encrypted Storage
CN102725737A (zh) * 2009-12-04 2012-10-10 密码研究公司 可验证防泄漏的加密和解密
US20140006782A1 (en) * 2010-02-10 2014-01-02 SecurenCrypt, LLC Document encryption and decryption
CN101964036A (zh) * 2010-10-29 2011-02-02 北京椒图科技有限公司 漏洞检测方法及装置
CN106326693A (zh) * 2016-08-18 2017-01-11 广州优视网络科技有限公司 应用程序的代码混淆方法及装置
CN108255496A (zh) * 2018-01-19 2018-07-06 广州汇智通信技术有限公司 一种获取安卓应用原生层代码的方法、系统及相关装置
CN110633073A (zh) * 2019-09-17 2019-12-31 福建天晴在线互动科技有限公司 基于Il2cpp编译的Unity代码混淆的方法
CN110598379A (zh) * 2019-09-23 2019-12-20 北京智游网安科技有限公司 一种实现字符串混淆的方法、系统、设备及存储介质
CN111245802A (zh) * 2020-01-06 2020-06-05 银清科技有限公司 数据传输安全控制方法、服务器以及终端
CN112052432A (zh) * 2020-09-01 2020-12-08 禾麦科技开发(深圳)有限公司 终端设备授权方法及装置
CN112100582A (zh) * 2020-09-22 2020-12-18 焦点教育科技有限公司 一种应用强对称加密保护软件分发安全的方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117134914A (zh) * 2023-10-26 2023-11-28 山东山大鸥玛软件股份有限公司 一种基于硬件特征的一次一密的随机秘钥流式加密算法及系统
CN117134914B (zh) * 2023-10-26 2024-01-30 山东山大鸥玛软件股份有限公司 一种基于硬件特征的一次一密的随机秘钥流式加密算法及系统

Also Published As

Publication number Publication date
CN113591089B (zh) 2024-06-11

Similar Documents

Publication Publication Date Title
Sheldon et al. The insecurity of wireless networks
US20060008082A1 (en) System and method for securing communications between devices
Bulbul et al. Wireless network security: comparison of wep (wired equivalent privacy) mechanism, wpa (wi-fi protected access) and rsn (robust security network) security protocols
Masud et al. 3P-SAKE: privacy-preserving and physically secured authenticated key establishment protocol for wireless industrial networks
CN110659487B (zh) 用于保护基础设施免受分布式拒绝服务攻击的方法和系统
CN108616521B (zh) 网络接入方法、装置、设备及可读存储介质
EP0959586A2 (en) System and method for securing a computer communication network
Fuller et al. Misuse-based detection of Z-Wave network attacks
US11588852B2 (en) Vulnerability validation using attack payloads
US11522912B2 (en) Honeypot opaque credential recovery
CN109040059B (zh) 受保护的tcp通信方法、通信装置及存储介质
CN113591089B (zh) 一种数据混淆加密方法
CN114745202A (zh) 一种主动防御web攻击的方法及基于主动防御的web安全网关
Naidu et al. Review on authentication schemes for device security in lorawan
Min et al. OWASP IoT top 10 based attack dataset for machine learning
Khalid et al. Study of security and privacy issues in internet of things
Patel et al. Security Issues, Attacks and Countermeasures in Layered IoT Ecosystem.
Mudgerikar et al. Iot attacks and malware
Glass et al. Insecurity in public-safety communications: APCO project 25
CN112751668B (zh) 一种低成本物联网数据加密通信系统
Heriadi et al. Cyber security in IoT communication (Internet of Things) on smart home
Yao et al. Real-time detection of passive backdoor behaviors on Android system
Banoth et al. Modern cryptanalysis methods, advanced network attacks and cloud security
CN111767540A (zh) Jart恶意软件自动化分析方法、装置和计算机可读存储介质
CN108924146B (zh) 一种Web安全防护方法及系统

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
GR01 Patent grant
GR01 Patent grant