CN115033870A - 一种基于大数据云部署的反恶意篡改代码方法和装置 - Google Patents

一种基于大数据云部署的反恶意篡改代码方法和装置 Download PDF

Info

Publication number
CN115033870A
CN115033870A CN202210627769.0A CN202210627769A CN115033870A CN 115033870 A CN115033870 A CN 115033870A CN 202210627769 A CN202210627769 A CN 202210627769A CN 115033870 A CN115033870 A CN 115033870A
Authority
CN
China
Prior art keywords
code
code packet
encrypted
generate
target document
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
CN202210627769.0A
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.)
Shanghai Qiyue Information Technology Co Ltd
Original Assignee
Shanghai Qiyue Information 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 Shanghai Qiyue Information Technology Co Ltd filed Critical Shanghai Qiyue Information Technology Co Ltd
Priority to CN202210627769.0A priority Critical patent/CN115033870A/zh
Publication of CN115033870A publication Critical patent/CN115033870A/zh
Pending legal-status Critical Current

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/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/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

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)
  • Storage Device Security (AREA)

Abstract

本申请涉及一种基于大数据云部署的反恶意篡改代码方法、装置、电子设备及计算机可读介质。该方法包括:由待部署的初始代码包中提取目标文档;对所述目标文档进行加密生成包含有加密信息的加密代码包;将所述加密代码包发送到预定的运行平台;通过所述加密信息解密所述加密代码包生成解密代码包;在预定的运行平台通过解密代码包进行部署。本申请涉及的防止恶意篡改代码的方法、装置、电子设备及计算机可读介质,能够避免内部代码泄露的风险,也避免恶意植入的风险,安全快速的在第三方平台部署代码文件,保证系统安全、数据安全。

Description

一种基于大数据云部署的反恶意篡改代码方法和装置
技术领域
本申请涉及计算机信息处理领域,具体而言,涉及一种基于大数据云部署的反恶意篡改代码方法、装置、电子设备及计算机可读介质。
背景技术
随着云平台的发展,越来越多的企业和个人愿意将应用软件部署到云平台中,除了首次部署软件代码外,每次软件的更新均需要再次进行代码的云平台部署。一般情况下,直接将软件代码部署在云平台或者其他第三方平台时,代码数据很有可能被破解,企业和个人要面临内部数据隐私等泄露的风险。代码数据也很有可能被恶意通过字节码植入破坏性代码,影响用户的交易信息和个人隐私安全。代码数据也很有可能被破解者解密,从而熟悉本公司产品流程,破解者可能绕过业务产品的关键逻辑,从而给企业造成严重的经济损失。
在所述背景技术部分公开的上述信息仅用于加强对本申请的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本申请提供一种基于大数据云部署的反恶意篡改代码方法、装置、电子设备及计算机可读介质,能够避免内部代码泄露的风险,也避免恶意植入的风险,安全快速的在第三方平台部署代码文件,保证系统安全、数据安全。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请的一方面,提出一种基于大数据云部署的反恶意篡改代码方法,该方法包括:由待部署的初始代码包中提取目标文档;对所述目标文档进行加密生成包含有加密信息的加密代码包;将所述加密代码包发送到预定的运行平台;通过所述加密信息解密所述加密代码包生成解密代码包;在预定的运行平台通过解密代码包进行部署。
可选地,还包括:获取所述初始代码包的存储地址;根据所述初始代码包的代码特征确定目标文档;确定加密秘钥;根据所述存储地址、所述目标文档的路径、所述加密秘钥生成部署配置信息。
可选地,由待部署的初始代码包中提取目标文档,包括:根据部署配置信息提取所述目标文档的路径;基于所述路径提取所述目标文档。
可选地,对所述目标文档进行加密生成包含有加密信息的加密代码包,包括:根据部署配置信息提取加密秘钥;通过所述加密秘钥对所述目标文档进行加密,生成替换文档和加密信息;在所述初始代码包中删除所述目标文档;基于删除目标文档的初始代码包、所述替换文档、所述加密信息生成所述加密代码包。
可选地,通过所述加密秘钥对所述目标文档进行加密,生成替换文档和加密信息,包括:将所述目标文档按照aop切面方式进行配置;通过所述加密秘钥加密所述目标文档,生成同名的替换文档和加密信息。
可选地,基于删除目标文档的初始代码包、所述替换文档、所述加密信息生成所述加密代码包,包括:在所述初始代码包中删除所述目标文档,并基于所述替换文档生成所述加密代码包;将所述加密信息存储在所述加密代码包的预设位置。
可选地,在所述初始代码包中删除所述目标文档,并基于所述替换文档生成所述加密代码包,包括:在所述初始代码包中按照预设顺序逐一删除所述目标文档;将删除目标文档的初始代码包和所述替换文档共同打包以生成所述加密代码包。
可选地,通过所述加密信息解密所述加密代码包生成解密代码包,包括:在所述加密代码包的加载过程中,启动预设函数;基于预设函数对所述加密代码包进行解密以生成解密代码包。
可选地,基于预设函数对所述加密代码包进行解密以生成解密代码包,包括:解压所述加密代码包;基于预设函数由所述加密代码包的预设位置提取加密信息;基于所述加密信息对所述加密代码包中的替换文档进行解密以生成所述解密代码包。
可选地,基于所述加密信息对所述加密代码包中的替换文档进行解密以生成所述解密代码包,包括:基于所述加密信息对所述加密代码包中的替换文档进行解密,生成替换代码;将所述替换代码填充到解密后的加密代码包的原路径位置以生成所述解密代码包。
根据本申请的一方面,提出一种基于大数据云部署的反恶意篡改代码装置,该装置包括:文档模块,用于由待部署的初始代码包中提取目标文档;加密模块,用于对所述目标文档进行加密生成包含有加密信息的加密代码包;发送模块,用于将所述加密代码包发送到预定的运行平台;解密模块,用于通过所述加密信息解密所述加密代码包生成解密代码包;部署模块,用于在预定的运行平台通过解密代码包进行部署。
根据本申请的一方面,提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上文的方法。
根据本申请的一方面,提出一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上文中的方法。
根据本申请的防止恶意篡改代码的方法、装置、电子设备及计算机可读介质,通过由待部署的初始代码包中提取目标文档;对所述目标文档进行加密生成包含有加密信息的加密代码包;将所述加密代码包发送到预定的运行平台;通过所述加密信息解密所述加密代码包生成解密代码包;在预定的运行平台通过解密代码包进行部署的方式,能够避免内部代码泄露的风险,也避免恶意植入的风险,安全快速的在第三方平台部署代码文件,保证系统安全、数据安全。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
通过参照附图详细描述其示例实施例,本申请的上述和其它目标、特征及优点将变得更加显而易见。下面描述的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码方法及装置的系统框图。
图2是根据一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码方法的流程图。
图3是根据另一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码方法的流程图。
图4是根据另一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码方法的示意图。
图5是根据另一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码方法的示意图。
图6是根据一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码装置的框图。
图7是根据一示例性实施例示出的一种电子设备的框图。
图8是根据一示例性实施例示出的一种计算机可读介质的框图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本申请将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本申请概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本申请所必须的,因此不能用于限制本申请的保护范围。
如上文所述,由于直接将代码传送到第三方云端部署存在多种数据风险,本申请的发明人认为,在实际应用中,软件代码需要进行加密后,再上传到公有云机器上再部署,从而避免非本公司的人下载部署包反编译查看企业内容代码。所以,本申请提出了一种基于大数据云部署的反恶意篡改代码方法,下面借助于具体的实施例进行详细说明。
图1是根据一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码方法及装置的系统框图。
如图1所示,系统架构10可以包括终端设备101、102、103,网络104和运行平台105。网络104用以在终端设备101、102、103和运行平台105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与运行平台105交互,以接收或发送代码包等。终端设备101、102、103上可以安装有各种代码开发类应用,还可安装有数据处理类应用、数据传输类应用、即时通信工具、邮箱客户端等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
终端设备101、102、103可例如由待部署的初始代码包中提取目标文档;终端设备101、102、103可例如对所述目标文档进行加密生成包含有加密信息的加密代码包;终端设备101、102、103可例如将所述加密代码包发送到预定的运行平台105;运行平台105可例如通过所述加密信息解密所述加密代码包生成解密代码包;终端设备101、102、103可例如在预定的运行平台105通过解密代码包进行部署。
终端设备101、102、103可例如获取所述初始代码包的存储地址;终端设备101、102、103可例如根据所述初始代码包的代码特征确定目标文档;终端设备101、102、103可例如确定加密秘钥;终端设备101、102、103可例如根据所述存储地址、所述目标文档的路径、所述加密秘钥生成部署配置信息。
终端设备101、102、103和运行平台105均可以是一个实体的服务器,还可例如为多个服务器组成,需要说明的是,本申请实施例所提供的防止恶意篡改代码的方法可以由运行平台105和/或终端设备101、102、103执行,相应地,防止恶意篡改代码的装置可以设置于运行平台105和/或终端设备101、102、103中。
图2是根据一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码方法的流程图。防止恶意篡改代码的方法20至少包括步骤S202至S210。
在一个实施例中,可获取所述初始代码包的存储地址;根据所述初始代码包的代码特征确定目标文档;确定加密秘钥;根据所述存储地址、所述目标文档的路径、所述加密秘钥生成部署配置信息。可在部署配置信息中设定部署相关的技术参数,可通过命令行输入部署配置信息以便在后续的过程中自动提取相关参数。
如图2所示,在S202中,由待部署的初始代码包中提取目标文档。可根据部署配置信息提取所述目标文档的路径;基于所述路径提取所述目标文档。一般而言,初始代码数据中并不是所有的内容都是需要进行加密的,初始代码数据中的配置文件、描述文件、加载依赖文件等均不需要加载,所以,可以根据部署配置信息中的设置,提取需要进行加密的部分文件作为所谓目标文档。不对所有的代码包进行加密,仅对部分核心文件进行加密的方式能够节约处理速度,降低加密的复杂度。
在S204中,对所述目标文档进行加密生成包含有加密信息的加密代码包。可根据部署配置信息提取加密秘钥;通过所述加密秘钥对所述目标文档进行加密,生成替换文档和加密信息;在所述初始代码包中删除所述目标文档;基于删除目标文档的初始代码包、所述替换文档、所述加密信息生成所述加密代码包。
加密秘钥可根据文档中数据的类型和数据传输方式进行具体的设定,在对目标文档进行加密之后,生成加密信息,加密信息中可包含公钥、私钥、密码等信息。将加密后的目标文档、加密信息和删除之后的原始文档再次进行打包,生成加密代码包。
值得一提的是,不同类型的代码包和不同的目标文档在删除的过程中需要遵守不同的删除顺序,加密代码包的生成的具体内容将在图3对应的实施例中详细描述。
在S206中,将所述加密代码包发送到预定的运行平台。可将加密代码包发送到第三方云平台,或者其他的公共平台。
在S208中,通过所述加密信息解密所述加密代码包生成解密代码包。可在所述加密代码包的加载过程中,启动预设函数;基于预设函数对所述加密代码包进行解密以生成解密代码包。
在一个实施例中,可解压所述加密代码包;基于预设函数由所述加密代码包的预设位置提取加密信息;基于所述加密信息对所述加密代码包中的替换文档进行解密以生成所述解密代码包。不同的代码包在启动运行是均会需要不同的辅助启动的函数,可根据加密代码包的属性类别,调用冉的预设函数辅助启动并解压。
更具体的,可例如,基于所述加密信息对所述加密代码包中的替换文档进行解密,生成替换代码;将所述替换代码填充到解密后的加密代码包的原路径位置以生成所述解密代码包。
在S210中,在预定的运行平台通过解密代码包进行部署。解密代码包可实现和初始代码包一样的功能,可通过解密代码包在第三方云平台上进行部署并运行。
根据本申请的防止恶意篡改代码的方法,通过由待部署的初始代码包中提取目标文档;对所述目标文档进行加密生成包含有加密信息的加密代码包;将所述加密代码包发送到预定的运行平台;通过所述加密信息解密所述加密代码包生成解密代码包;在预定的运行平台通过解密代码包进行部署的方式,能够避免内部代码泄露的风险,也避免恶意植入的风险,安全快速的在第三方平台部署代码文件,保证系统安全、数据安全。
应清楚地理解,本申请描述了如何形成和使用特定示例,但本申请的原理不限于这些示例的任何细节。相反,基于本申请公开的内容的教导,这些原理能够应用于许多其它实施例。
图3是根据另一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码方法的流程图。图3所示的流程30是对图2所示的流程中S204“对所述目标文档进行加密生成包含有加密信息的加密代码包”的详细描述。
如图3所示,在S302中,根据部署配置信息提取加密秘钥。
在S304中,通过所述加密秘钥对所述目标文档进行加密,生成替换文档和加密信息。可将所述目标文档按照aop(面向切面编程)方式进行配置;通过所述加密秘钥加密所述目标文档,生成同名的替换文档和加密信息。
在S306中,在所述初始代码包中删除所述目标文档。
在S308中,基于删除目标文档的初始代码包、所述替换文档、所述加密信息生成所述加密代码包。可在所述初始代码包中删除所述目标文档,并基于所述替换文档生成所述加密代码包;将所述加密信息存储在所述加密代码包的预设位置。
在一个实施例中,可在所述初始代码包中按照预设顺序逐一删除所述目标文档;将删除目标文档的初始代码包和所述替换文档共同打包以生成所述加密代码包。
为了便于理解本申请的具体执行思路和流程,在下文中以jar代码包为例进行具体的说明。常见的war包的处理方式和jar包的处理方式类型,可共同参考本实施例。
一般而言jar或War包解压后有3个文件夹:BOOT-INT:存放该应用的第一方代码;META-INT:配置文件;org:类加载用的依赖类。其中,BOOT-INF存放的是原始代码class文件,需要对其进行加密处理。
其中,BOOT-INF文件夹分四类:java文件、静态前端文件、配置文件都在classes文件夹内,lib是maven引入的jar包文件。通过具体的分析可知,classes的class文件和lib包的中二方包要加密。
依据jar代码包的特性,在后文中可借助如下函数辅助处理:
lingxi-jarx-core:Jarx的核心模块,对jar包解压、包下class加密功能,重新压缩成jar包;
lingxi-jarx-crypto:Jarx的加密模块,用何种方式加密、解密;
lingxi-jarx-agent:Jarx的agent启动依赖解密模块;
lingxi-jarx-fatjar:Jarx的打包工具模块,从控制台中获取一系列参数调用core包加密jar。
可定义如表1所示的配置参数:
Figure BDA0003678352100000091
Figure BDA0003678352100000101
表1
图4是根据另一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码方法的示意图。图4描述了jar中的辅助函数进行加密解密的过程。在实际处理的过程中,可利用公钥进行加密,更具体的,可用RSA对一个原始密码加密,存放到一个文件内,如果在配置信息中有指定Mac地址,则将RSA加密放到另外一个文件内,加密后的加密信息存储在文件中,可预先设置其存储的文件夹。
在配置信息中,如有多个Mac地址就用逗号隔开即可。考虑到打制品包只能用一个最终制品,避免多制品不一致问题,多个Mac地址仅对应一个代码包,在代码包的配置信息中定义多个Mac进行区分。
待加密的文件代码可以按aop的切面方式进行配置,这种方式非常有利于对BOOT-INF下的源文件进行IO操作,因为包名就是文件夹的名称。在解压的时候,只要解压得到文件夹,就可以把该文件夹下的所有文件遍历去加密即可,最后在约定的文件夹内用java包名方式存储加密后的文件即可。
打完加密包可借助javaagent的技术进行解密和部署,javaagent是一个jar包,它必须依附在正常的部署包中才能启动,javaagent技术是在应用启动前先加载的特殊jar包,正因为有此特性,可以在原代码执行前还原源代码动作。在加密的时候是把原始密码和Mac地址群分别放在预设的文件里面,解密的时候可通过javaagent函数在预设的文件夹中取出并进行解密和解压缩。
无论是懒加载或非懒加载的jar包,类被加载时都会先经过javaagent,javaagent作为应用的门卫角色,所有class被应用使用之前都会被优先校验或替换过,可以保证加密后的代码包进行解密生成解密代码包,从而不会在部署的时候出现错误。
图5是根据另一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码方法的示意图。图5描述了jar中的辅助函数进行加密解密的详细过程。如图5所示,先根据配置信息中的filePath确定文件是否存在,是否是jar类型的文件,确认之后,进行后续处理。
还需要判断有二方包的代码需要加密,有就把二方包的jar解压,解压的临时目录可设置在当前的lib下,二方包的目录就建立和二方包名称在加_temp_来存储,二方包哪些文件夹下的文件要加密就配合-packages参数使用。在一个具体的实施例中,class文件的加密可是用原始密码进行AES方式加密的。
是把临时文件夹打包成新fatjar包,必须先打包lib下的jar(如果有指定二方包加密的话),再删掉_temp_结尾的临时目录,再整体把_temp_打成fatjar就是最后的完整可交付的jar包了,最后删除_temp_目录即可完成打包过程。
根据本申请的防止恶意篡改代码的方法,加密的包打出来后反编译是无法看到任何源码的,起到了保护源代码的意义,即使被盗载,没有私钥解密两道关口是无法看到真正的文件内容的,同时在应用启动的时候利用javaagent技术又能在使用时还原正确源代码,保证了系统安全、应用数据安全。进一步地,本申请针对JAR包代码、接口、核心逻辑进行加固保护,避免业务核心逻辑泄漏。有效杜绝各种反编译和恶意篡改行为,对源码进行高强度加密,抵挡黑客反编译,保护源码文件安全。无论是一方JAR包还是二方JAR包均可进行全方位加固保护,防止逆向分析、动态调试、恶意篡改等行为,保护核心业务逻辑。
本领域技术人员可以理解实现上述实施例的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本申请提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本申请示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图6是根据另一示例性实施例示出的一种基于大数据云部署的反恶意篡改代码装置的框图。如图6所示,防止恶意篡改代码的装置60包括:文档模块602,加密模块604,发送模块606,解密模块608,部署模块610。
文档模块602用于由待部署的初始代码包中提取目标文档;文档模块602还用于根据部署配置信息提取所述目标文档的路径;基于所述路径提取所述目标文档。
加密模块604用于对所述目标文档进行加密生成包含有加密信息的加密代码包;加密模块604还用于根据部署配置信息提取加密秘钥;通过所述加密秘钥对所述目标文档进行加密,生成替换文档和加密信息;在所述初始代码包中删除所述目标文档;基于删除目标文档的初始代码包、所述替换文档、所述加密信息生成所述加密代码包。
发送模块606用于将所述加密代码包发送到预定的运行平台;
解密模块608用于通过所述加密信息解密所述加密代码包生成解密代码包;解密模块608还用于在所述加密代码包的加载过程中,启动预设函数;基于预设函数对所述加密代码包进行解密以生成解密代码包。
部署模块610用于在预定的运行平台通过解密代码包进行部署。
根据本申请的防止恶意篡改代码的装置,通过由待部署的初始代码包中提取目标文档;对所述目标文档进行加密生成包含有加密信息的加密代码包;将所述加密代码包发送到预定的运行平台;通过所述加密信息解密所述加密代码包生成解密代码包;在预定的运行平台通过解密代码包进行部署的方式,能够避免内部代码泄露的风险,也避免恶意植入的风险,安全快速的在第三方平台部署代码文件,保证系统安全、数据安全。
图7是根据一示例性实施例示出的一种电子设备的框图。
下面参照图7来描述根据本申请的这种实施方式的电子设备700。图7显示的电子设备700仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700以通用计算设备的形式表现。电子设备700的组件可以包括但不限于:至少一个处理单元710、至少一个存储单元720、连接不同系统组件(包括存储单元720和处理单元710)的总线730、显示单元740等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元710执行,使得所述处理单元710执行本说明书中的根据本申请各种示例性实施方式的步骤。例如,所述处理单元710可以执行如图2,图3中所示的步骤。
所述存储单元720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)7201和/或高速缓存存储单元7202,还可以进一步包括只读存储单元(ROM)7203。
所述存储单元720还可以包括具有一组(至少一个)程序模块7205的程序/实用工具7204,这样的程序模块7205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备700也可以与一个或多个外部设备700’(例如键盘、指向设备、蓝牙设备等)通信,使得用户能与该电子设备700交互的设备通信,和/或该电子设备700能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口750进行。并且,电子设备700还可以通过网络适配器760与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器760可以通过总线730与电子设备700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,如图8所示,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本申请实施方式的上述方法。
所述软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如下功能:由待部署的初始代码包中提取目标文档;对所述目标文档进行加密生成包含有加密信息的加密代码包;将所述加密代码包发送到预定的运行平台;通过所述加密信息解密所述加密代码包生成解密代码包;在预定的运行平台通过解密代码包进行部署。该计算机可读介质还可实现如下功能:获取所述初始代码包的存储地址;根据所述初始代码包的代码特征确定目标文档;确定加密秘钥;根据所述存储地址、所述目标文档的路径、所述加密秘钥生成部署配置信息。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本申请实施例的方法。
以上具体地示出和描述了本申请的示例性实施例。应可理解的是,本申请不限于这里描述的详细结构、设置方式或实现方法;相反,本申请意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。

Claims (13)

1.一种基于大数据云部署的反恶意篡改代码方法,其特征在于,包括:
由待部署的初始代码包中提取目标文档;
对所述目标文档进行加密生成包含有加密信息的加密代码包;
将所述加密代码包发送到预定的运行平台;
通过所述加密信息解密所述加密代码包生成解密代码包;
在预定的运行平台通过解密代码包进行部署。
2.如权利要求1所述的方法,其特征在于,还包括:
获取所述初始代码包的存储地址;
根据所述初始代码包的代码特征确定目标文档;
确定加密秘钥;
根据所述存储地址、所述目标文档的路径、所述加密秘钥生成部署配置信息。
3.如权利要求2所述的方法,其特征在于,由待部署的初始代码包中提取目标文档,包括:
根据部署配置信息提取所述目标文档的路径;
基于所述路径提取所述目标文档。
4.如权利要求2所述的方法,其特征在于,对所述目标文档进行加密生成包含有加密信息的加密代码包,包括:
根据部署配置信息提取加密秘钥;
通过所述加密秘钥对所述目标文档进行加密,生成替换文档和加密信息;
基于删除目标文档的初始代码包、所述替换文档、所述加密信息生成所述加密代码包。
5.如权利要求4所述的方法,其特征在于,通过所述加密秘钥对所述目标文档进行加密,生成替换文档和加密信息,包括:
将所述目标文档按照aop切面方式进行配置;
通过所述加密秘钥加密所述目标文档,生成加密信息和同名的替换文档。
6.如权利要求4所述的方法,其特征在于,基于删除目标文档的初始代码包、所述替换文档、所述加密信息生成所述加密代码包,包括:
在所述初始代码包中删除所述目标文档,并基于所述替换文档生成所述加密代码包;
将所述加密信息存储在所述加密代码包的预设位置。
7.如权利要求6所述的方法,其特征在于,在所述初始代码包中删除所述目标文档,并基于所述替换文档生成所述加密代码包,包括:
在所述初始代码包中按照预设顺序逐一删除所述目标文档;
将删除目标文档的初始代码包和所述替换文档共同打包以生成所述加密代码包。
8.如权利要求1所述的方法,其特征在于,通过所述加密信息解密所述加密代码包生成解密代码包,包括:
在所述加密代码包的加载过程中,启动预设函数;
基于预设函数对所述加密代码包进行解密以生成解密代码包。
9.如权利要求8所述的方法,其特征在于,基于预设函数对所述加密代码包进行解密以生成解密代码包,包括:
解压所述加密代码包;
基于预设函数由所述加密代码包的预设位置提取加密信息;
基于所述加密信息对所述加密代码包中的替换文档进行解密以生成所述解密代码包。
10.如权利要求9所述的方法,其特征在于,基于所述加密信息对所述加密代码包中的替换文档进行解密以生成所述解密代码包,包括:
基于所述加密信息对所述加密代码包中的替换文档进行解密,生成替换代码;
将所述替换代码填充到解密后的加密代码包的原路径位置以生成所述解密代码包。
11.一种基于大数据云部署的反恶意篡改代码装置,其特征在于,包括:
文档模块,用于由待部署的初始代码包中提取目标文档;
加密模块,用于对所述目标文档进行加密生成包含有加密信息的加密代码包;
发送模块,用于将所述加密代码包发送到预定的运行平台;
解密模块,用于通过所述加密信息解密所述加密代码包生成解密代码包;
部署模块,用于在预定的运行平台通过解密代码包进行部署。
12.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-10中任一所述的方法。
13.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-10中任一所述的方法。
CN202210627769.0A 2022-06-06 2022-06-06 一种基于大数据云部署的反恶意篡改代码方法和装置 Pending CN115033870A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210627769.0A CN115033870A (zh) 2022-06-06 2022-06-06 一种基于大数据云部署的反恶意篡改代码方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210627769.0A CN115033870A (zh) 2022-06-06 2022-06-06 一种基于大数据云部署的反恶意篡改代码方法和装置

Publications (1)

Publication Number Publication Date
CN115033870A true CN115033870A (zh) 2022-09-09

Family

ID=83122787

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210627769.0A Pending CN115033870A (zh) 2022-06-06 2022-06-06 一种基于大数据云部署的反恶意篡改代码方法和装置

Country Status (1)

Country Link
CN (1) CN115033870A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117596084A (zh) * 2024-01-19 2024-02-23 天津航天机电设备研究所 一种面向网信安全的软件持续集成系统及方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117596084A (zh) * 2024-01-19 2024-02-23 天津航天机电设备研究所 一种面向网信安全的软件持续集成系统及方法
CN117596084B (zh) * 2024-01-19 2024-04-16 天津航天机电设备研究所 一种面向网信安全的软件持续集成系统及方法

Similar Documents

Publication Publication Date Title
US10523640B2 (en) Secure processing environment for protecting sensitive information
CN109992987B (zh) 基于Nginx的脚本文件保护方法、装置及终端设备
US10296728B2 (en) Method and system for providing cloud-based application security service
CN111191195A (zh) 一种用于保护apk的方法和装置
CN110245466B (zh) 软件完整性保护和验证方法、系统、设备及存储介质
US9292708B2 (en) Protection of interpreted source code in virtual appliances
CN112733180A (zh) 数据查询方法、装置和电子设备
CN113032741B (zh) 类文件加密方法、类文件运行方法、装置、设备及介质
CN111382447B (zh) 安装包的加密方法、存储介质及计算机设备
CN115033870A (zh) 一种基于大数据云部署的反恶意篡改代码方法和装置
CN112035803B (zh) 一种基于Windows平台软件的保护方法及装置
CN113946863A (zh) 数据加密存储方法、系统、设备及存储介质
CN113342425A (zh) 一种Linux嵌入式系统的启动方法、装置和存储介质
CN109995534B (zh) 一种对应用程序进行安全认证的方法和装置
CN114547653B (zh) 开发环境的加密方法、解密方法及装置、设备和介质
CN111831978A (zh) 一种对配置文件进行保护的方法及装置
CN110737910B (zh) 一种Android log解密管理方法、装置、设备和介质
CN114139117A (zh) 应用程序加固方法、装置、电子设备及存储介质
CN110298146B (zh) 一种应用程序的处理、运行方法及装置
CN111475844A (zh) 一种数据共享方法、装置、设备及计算机可读存储介质
CN113407434B (zh) 调试文件的处理方法、装置
CN113849819B (zh) 命令行指令的处理方法、装置、计算机设备和存储介质
KR101556908B1 (ko) 프로그램 보호 장치
CN117077180B (zh) 勒索加密数据恢复可行性评估及处理装置、方法、电子设备及存储介质
CN110780884B (zh) 一种信息处理方法、装置及设备

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
CB02 Change of applicant information
CB02 Change of applicant information

Country or region after: China

Address after: Room 1109, No. 4, Lane 800, Tongpu Road, Putuo District, Shanghai, 200062

Applicant after: Shanghai Qiyue Information Technology Co.,Ltd.

Address before: Room a2-8914, 58 Fumin Branch Road, Hengsha Township, Chongming District, Shanghai, 201500

Applicant before: Shanghai Qiyue Information Technology Co.,Ltd.

Country or region before: China