软件防篡改技术综述

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

保护程 序里 面嵌入 验证模 块 , 并 执行 如下 任务 :对程 序完整 洼进行 验证 ,也 就是对 代 码块 预存值 和数 字签 名进行 验证 ,并确 保 这两 者维 持一致 性 同其他通 信相 协作 , 进 而使 防篡 改机制力 度 得 以加 强 。 ( 3 ) 动 态防篡 改完 善 实 际 上 ,相 应 机制 和检 测 机 制 之 间 的关 系是非 常密切 的 ,它们都是 防篡改技 术里 面重要 的构成 成分 。就算 检测 机制健 全 ,如若 没 有强 大的相 应机制 ,那 么整个 防篡 改机制 也就是 没有 功效 的。建 立在 多 点设置 基础 上的 防篡改 技术 ,通过 对哨兵 单元加 以利 用 , 进 而达到 保护 程序 的 目的。 按照需 求 的不 同可设 置 多种 哨兵 ,下面 为 常见 的两种 哨兵 :修复 代码 :此种 哨兵 可 使程序 具备 自我修 复能 力 。在 代码 完成性 遭受破 坏之 后 ,哨兵会 负责对 篡改代 码进 行修 复 ,使 之恢 复原状 并正 常运行 ,在保 护程 序里 面嵌入众 多 哨兵 ,从 而形 成一个
对策 。
( 2 ) 动 态防篡 改不 完善技 术 建 立 在 多 块 加 密 思 维基 础上 的 防篡 改技术 方案 通过 自我解 密和 自我修 改 ,在
2 防篡 改技术 的应 用 2 . 1 保护 商用 软件 的访 问控制机 制 商 用 软件 属 于付 费软 件 ,对 软 件 供 应商 而言 ,确保使 用者 通过合 理途径 来使 用软件 能对 其利益 起到保 障作 用 。当发布
文献 标识 码 :A
伴 随 软 件 应 用 范 围 的扩 展 ,软 件 的 序 完整性 以及保 护代 码校 验进行 计算 。
安全 性 问题 也变 得愈 发突 出。设计 出具 有
之后 的数 字 内容 。而 在 D R M 中最 常用 的
时效 性 的软件保 护方 案所wenku.baidu.com 备 的现实 意义
从 而让 攻击人 员不 能从词 法上 对其功 能进
程 序 的未 遭 破 坏 指标 是 用 完 整 性 来 表示 的。程序 完整性 表示 是从程 序 中提取 的。它作 为 防篡改技 术检 测 的基 础 ,其意 义重大 。 目前 ,防篡 改技 术包含 的完 整性 表示包含 如下 内容 :校验 和 :运 行程 序之 前 ,通过 报 文摘要方 式计算 程序 ,同时用 此结果进 行程 序完整 性 的标 识 。H a s h 值: 将H a s h函数 应用 在 程序 运 行 中间 值 以及 代 码 片段 上 ,同时用 计算 结果来 表示 完整 性 。数字 签名 :完整 性表 示采用 代码块 数

软件里 包含 访 问控 制模 块之 时 ,它 就可能 被篡 改 ,进 而造成 软件 访 问控 制机 制失去
口圜蹈匿蕊日 2 0 1 3 N O . 0 9 蕊 ( T ) 丽
信 息 技 术
软件 防篡改 技术综述
尤 作 琴
( 江 苏 省 电 力公 司 电 力 经 济技 术研 究 院 ,江 苏 南京 2 1 0 0 0 8)
摘 要 :本 文对 动 态 以及 静 态 的防 篡改进 行进 行 了重点介 绍 ,并对现 有 防篡 改技 术 予 以分 类 ,同时 对各种 方式 的局 限性 和优 劣进 行 了讨论 和 分析 ,最后 面 对防篡 改领 域现 存 的 问题 进行 了总结 , 同时对其 未 来研 究和发展 方 向提 出了相 应 建议 。 关键 词 :软件 ;防篡 改技 术 ;分 析 中图分 类号 :T P 3 1 ’
泛 的重视 。 阻止 程序 关键信 息被 非法使 用 态 防篡 改技术 分为控 制流 混淆 、 数据混 淆 、 此 种 模 式 可 将 二进 制代 码 分 成 几 部 或修 改是 软件 防篡改 目标之 一 ,其另一 目 词 法混淆 、预 防混淆 等 ,而前 三种混 淆技 分,我们可以不处理第一个程序 ,将其哈 标便 是对 篡改 予 以检 测 ,同时做 出 回应 。 术 经 由对 程序 中节本 元素 进行修 改来 提升 希值作 为下个 模块 的开启 钥匙 ,而将 第二 1 现 有 的防篡改技 术 程 序静 态分析 的难 度 ,更 加关 注的是 人工 个程序 的希 哈值作 为第 i个模块 的 开启钥 1 . 1 动态 防篡改技 术
字 签名 。
行判断 。数据 混淆 主要作 用在 于对程 序数
据元素 加 以修 改 ,修改 的 内容 包括数 组 、 变量 、常量及 别 的数据结 构 。控制 流混淆 主要对 程序控 制流 程加 以修改 。预 防混淆 的 目的在于使 软件 逆 向分 析程 序的难 度增 大 ,又或者按 照特 定方式 ,采 取相应 预 防
防篡改方 式便 是防止 屏幕捕 获 、 代码加 密 、 通 过 变 换 代 码使 程序 的静 态 分 析 增 代 码混淆 等 。 3防篡改 程序应 用实 例 3 . 1 东模块 加 载模 式
1 . 2静态 防篡改 技术
重 大 。最 近几年 ,作 为软件 保护 非常重 要 大 分析难 度 ,从而对 攻击 人员进 行逆 向攻 的手段 ,防篡 改技术 已经 引起 了研 究者 广 击 来提 取核心 代码加 以 阻止 。现如今 ,静
( 1 ) 完 整性表 示
攻 击 ,而 预 防混 淆更 为关 注 的则 是 工 具 匙 ,以此类 推 ,实行 多 重加密形 式 。通过 的攻击 。词法 混淆 主要用 于对程 序词 法结 对 逐层 加密 形式加 以利 用 ,能使 盗 用 以及 构 进行 修改 ,其 中最主要 的方 式便是 对标 篡改程 序 的行为得 到有效 防治 。 识 符名 称进行 修改 ,把程 序里 面的域 名 、 3 . 2软 件卫士 的检 查机制 ,此 种机制 方 法名 、类名 转换 成没有 意义 的标识 符 ,
相关文档
最新文档