知识大全 Java免受逆向工程攻击的措施
Posted 字节
篇首语:贵有恒,何必三更起、五更眠、最无益,只怕一日曝、十日寒。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Java免受逆向工程攻击的措施相关的知识,希望对你有一定的参考价值。
Java免受逆向工程攻击的措施 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
针对Java易遭受逆向工程攻击的原因 今天我将向大家介绍目前市场上关于防止Java免受逆向工程攻击的集中措施 同时指出这几种措施在防范逆向工程攻击的时候存在的不足之处
首先是板载措施 它并不足以防止逆向工程 大多数虚拟机都包含一些使逆向工程复杂化的功能 Java允许用户在JAR存档中提供的每个类上设置一个数字证书 以确保原始文件没有被更改 虽然这样做并无害处 但该功能相当容易清除 并且仅针对静态补丁方法提供保护 而静态补丁只是攻击场景中的一小部分 而且 这种方法并不能针对运行时应用于内存的补丁提供保护
Java还通过虚拟机执行字节码验证器 该验证器在执行通过的字节码之前对其进行自动分析 这可以防止执行 奇怪 的代码 也使字节码注入变得更加困难
然而 尽管这些措施给攻击者造成了困难 但对于充分保护知识产权还远远不够
其次是Java封装技术 开发人员通常用以防止 class文件静态分析和字节码反汇编的一种方法是封装 这种方法通过应用加密/解密完整文件来防止对类文件的分析 通过封装 开发人员将受保护文件的原始加载器更换为处理加密/解密的自定义加载器 加密使用将 class文件从标准Java class格式更改为仅 密钥 所有者可读格式的算法来防止对这些文件的分析 然而 class文件的字节码在一个内存位置中仍保持可读 在系统加载器尝试加载该类之前的时刻 通常可从该位置访问字节码 如果黑客能够找到那个内存位置 就可以访问原始状态的该类
最后 防止黑客攻击该内存位置需要第二种技术 称为混淆 混淆可产生一个更加复杂 难于理解并且与原始代码具有相同行为方式的代码版本 有几种不同类型的混淆方法可用于指令集 程序员可以通过替换二进制代码中的所有字符串来混淆代码 这样就更加难以找到一个好的切入点来开始逆向工程攻击 他们可以通过插入指向垃圾代码的跳转并返回来迷惑攻击者 或混淆源代码或字节码
开发人员也可以选择使用名为Const Code转换的技术来混淆常量 例如 密钥有时在应用程序中存储为一组字节 如果黑客确定了这些字节的位置 他们就可以访问这些字节 为混淆一个常量(如密钥) Const Code算法将常量转换为可产生同一常量的多个不同的命令
cha138/Article/program/Java/hx/201311/25659相关参考
网络层安全的安全性检测应符合以下要求: 1、防攻击:信息网络应能抵御来自防火墙以外的网络攻击,使用流行的攻击手段进行模拟攻击,不能攻破判为合格; 2、因特网访问控制:信息网络应根据需求控制内部
如果必须在密闭空间使用内燃机,工友应采取下列哪一项措施免受废气所影响?
如果必须在密闭空间使用内燃机,工友应采取下列哪一项措施免受废气所影响?。A.佩戴防尘口罩B.排放废气远离密闭空间C.工人需定期检验肺部组织【参考答案】B[拓展知识]密闭空间内的安全氧气浓度为?A.百分
如果必须在密闭空间使用内燃机,工友应采取下列哪一项措施免受废气所影响?
如果必须在密闭空间使用内燃机,工友应采取下列哪一项措施免受废气所影响?。A.佩戴防尘口罩B.排放废气远离密闭空间C.工人需定期检验肺部组织【参考答案】B[拓展知识]密闭空间内的安全氧气浓度为?A.百分
SQL注入攻击的原理及其防范措施 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! ASP编程门槛很
入侵检测系统应该具备以下特性: 1)必须具备丰富的攻击方法库,能够检测到当前主要的黑客攻击; 2)软件厂商必须定期提供更新的攻击方法库,以检测最新出现的黑客攻击方法; 3)必须能够在入侵行为
入侵检测系统应该具备以下特性: 1)必须具备丰富的攻击方法库,能够检测到当前主要的黑客攻击; 2)软件厂商必须定期提供更新的攻击方法库,以检测最新出现的黑客攻击方法; 3)必须能够在入侵行为
检测方法: 1)以系统输入为突破口。利用输入的容错性进行正面攻击; 2)申请和占用过多的资源压垮系统导致破坏安全措施,从而进入系统; 3)故意使系统出错,利用系统恢复的过程,窃取用户口令及其
检测方法: 1)以系统输入为突破口。利用输入的容错性进行正面攻击; 2)申请和占用过多的资源压垮系统导致破坏安全措施,从而进入系统; 3)故意使系统出错,利用系统恢复的过程,窃取用户口令及其
知识大全 如何用javac 和java 编译运行整个Java工程
如何用javac和java编译运行整个Java工程 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
蛤、蚌广泛分布于江河、湖泊和池塘之中。它们的身体由两片贝壳包围,贝壳一般有三层,最外层是角质层,保护里面的钙质免受钻孔虫子的侵蚀;中层为棱柱层,由碳酸钙聚集组成;内层为光洁绚丽的珍珠层。