软件安全漏洞分析与发现 复习笔记

1 绪论

  • 本节无考点,仅供了解。





2 基础知识

考点: 汇编码理解和撰写,三种内存地址,不同的页管理方式。windows保护模式可能出题

  • 汇编算法的阅读理解
  • 给出汇编片段,理解其意思,输入->输出
  • 保护模式的内存寻址,现代OS的分页机制
  • x86机器码转换到汇编代码
  • windows内存管理分页模式推导,系统调用
  • ELF动态代码链接延迟绑定(逆向中综合),linux下的系统调用

2.1 处理器硬件架构基础

CPU按照字长可分为16位、32位和64位。


  • 汇编指令细节这里不展开了。下面是考试要求:

    这里给个示例代码:
asm 复制代码
section .data
    array dd 1, 2, 3, 4, 5  ; 定义一个数组,包含5个元素
    array_len equ 5         ; 定义数组长度

section .text
    global _start

_start:
    xor eax, eax            ; 将 eax 清零,用于存储累加和
    xor ecx, ecx            ; 将 ecx 清零,用于索引数组元素

sum_loop:
    cmp ecx, array_len      ; 比较索引是否达到数组长度
    jge end_loop            ; 如果索引 >= 数组长度,跳转到 end_loop

    add eax, [array + ecx*4] ; 将当前数组元素的值加到 eax
    inc ecx                 ; 索引加1
    jmp sum_loop            ; 跳回到 sum_loop 开始

end_loop:
    ; 这里可以添加其他代码,eax 中已经包含数组元素的累加和

    ; 退出程序
    mov eax, 1
    int 0x80

保护模式

  • 实模式没有内存保护机制,任何程序都可以访问系统内的任意内存地址。这导致一个程序可能会覆盖另一个程序的内存,从而导致系统崩溃。
    保护模式内存寻址
    逻辑地址转线性地址


    线性地址转物理地址

1.给定一个逻辑(虚拟)地址,尝试找到它的物理地址

在现代操作系统中,虚拟地址通过分页机制映射到物理地址。这个过程涉及页目录和页表。以下是一个示例过程:

虚拟地址结构(假设 32 位系统):

虚拟地址:0x12345678

页目录索引:虚拟地址的高 10 位(0x12345678 >> 22)

页表索引:虚拟地址的中间 10 位((0x12345678 >> 12) & 0x3FF)

页内偏移:虚拟地址的低 12 位(0x12345678 & 0xFFF)

查找过程:

使用页目录索引查找页目录,找到页表地址。

使用页表索引查找页表,找到物理页框地址。

物理地址 = 物理页框地址 + 页内偏移。

2.使用程序指令无法访问物理地址,那么操作系统是如何修改页目录表和页表

操作系统运行在高特权级别(内核模式),可以直接访问和修改页目录和页表。以下是一个示例过程:

特权级

2.2 反汇编与反编译基础

略。

2.3 Windows 操作系统基础




2.4 Linux 操作系统基础

略。

3 基础分析工具介绍

略。查ppt。

4 程序切片 (重点)

考点程序切片 :集中出题。

1、控制流、数据流(可达性(参考ppt中的案例)、活跃变量)和程序依赖图(包括数据依赖和控制依赖)

2、现有的切片方法的应用:基于图可达性的静态切片计算

3、不考察数据流方程

4、最好提前看一下动态切片(方法二)的例子

  • 程序切片
    • 数据流和控制流(和污点分析结合),控制流图(如何画)和程序依赖图的区别
    • 可到达定义(算法,示例)、活性分析(理解概念)
    • 静态切片
      • 数据流方程(不考察,了解即可)
      • 图可达算法
    • 动态切片(往年静态切片为主,说不定会有动态)
      • 基于程序依赖的切片(几种优化方法,和可到达定义的结合)
      • 方法三后不用看




控制流分析



数据流分析

可到达定义分析(考察计算题)

  • 修正:上图中的语句2 的可到达语句不包括4。


定义集合

我们先确定每个语句的 Gen 和 Kill 集合:

Gen(0) = {0}

Kill(0) = {}

Gen(1) = {1}

Kill(1) = {}

Gen(2) = {2}

Kill(2) = {}

Gen(4) = {4}

Kill(4) = {1}

Gen(5) = {5}

Kill(5) = {0}

Gen(7) = {7}

Kill(7) = {1, 4}

Gen(8) = {8}

Kill(8) = {0, 5}

Gen(9) = {9}

Kill(9) = {2}

路径分析

接下来我们分析从入口到 [9] 的所有路径:

0\] -\> \[1\] -\> \[2\] -\> \[3\] -\> \[4\] -\> \[5\] -\> \[9

0\] -\> \[1\] -\> \[2\] -\> \[3\] -\> \[6\] -\> \[7\] -\> \[8\] -\> \[9

在每个路径上,我们计算每个语句的 In 和 Out 集合。

路径1: [0] -> [1] -> [2] -> [3] -> [4] -> [5] -> [9]

In(0) = {}

Out(0) = Gen(0) = {0}

In(1) = Out(0) = {0}

Out(1) = Gen(1) ∪ (In(1) - Kill(1)) = {1} ∪ {0} = {0, 1}

In(2) = Out(1) = {0, 1}

Out(2) = Gen(2) ∪ (In(2) - Kill(2)) = {2} ∪ {0, 1} = {0, 1, 2}

In(3) = Out(2) = {0, 1, 2}

Out(3) = In(3) = {0, 1, 2}

In(4) = Out(3) = {0, 1, 2}

Out(4) = Gen(4) ∪ (In(4) - Kill(4)) = {4} ∪ {0, 2} = {0, 2, 4}

In(5) = Out(4) = {0, 2, 4}

Out(5) = Gen(5) ∪ (In(5) - Kill(5)) = {5} ∪ {2, 4} = {2, 4, 5}

In(9) = Out(5) = {2, 4, 5}

路径2: [0] -> [1] -> [2] -> [3] -> [6] -> [7] -> [8] -> [9]

In(0) = {}

Out(0) = Gen(0) = {0}

In(1) = Out(0) = {0}

Out(1) = Gen(1) ∪ (In(1) - Kill(1)) = {1} ∪ {0} = {0, 1}

In(2) = Out(1) = {0, 1}

Out(2) = Gen(2) ∪ (In(2) - Kill(2)) = {2} ∪ {0, 1} = {0, 1, 2}

In(3) = Out(2) = {0, 1, 2}

Out(3) = In(3) = {0, 1, 2}

In(6) = Out(3) = {0, 1, 2}

Out(6) = In(6) = {0, 1, 2}

In(7) = Out(6) = {0, 1, 2}

Out(7) = Gen(7) ∪ (In(7) - Kill(7)) = {7} ∪ {0, 2} = {0, 2, 7}

In(8) = Out(7) = {0, 2, 7}

Out(8) = Gen(8) ∪ (In(8) - Kill(8)) = {8} ∪ {7} = {7, 8}

In(9) = Out(8) = {7, 8}

对于路径1和路径2,我们得出In(9) = {2, 4, 5} ∪ {7, 8} = {2, 4, 5, 7, 8}

综合所有路径 Out(9) = Gen(9) ∪ (In(9) - Kill(9)) = {4, 5, 7, 8, 9}

9\] 处的可到达定义是 {4, 5, 7, 8, 9}。 ![](https://img-blog.csdnimg.cn/direct/fc33e0c4759f484aaf53d6b2e1331f90.png) Soundness(正确性):在数据流分析中,一个分析方法是"sound"的,意味着它不会遗漏任何可能影响程序行为的重要信息。在可到达定义分析中,soundness 意味着所有实际可能到达某点的定义都应该被包含在结果中。 False Positives(误报):在可到达定义分析中,误报指的是分析认为某个定义可达,但实际上在程序执行时不可能达到。一般来说,为了保持正确性,分析方法通常会倾向于保守,即宁愿包含更多的定义(可能的误报),也不遗漏任何实际可达的定义。 该方法是 sound 的,不会遗漏任何可能的定义。由于保守的性质,可能会存在误报,但这是为了确保正确性而做出的权衡。 #### 活性分析(理解概念,不考计算) ![](https://img-blog.csdnimg.cn/direct/6d19ce7a4cb24a1abbe1b72cae03f5c8.png) ![](https://img-blog.csdnimg.cn/direct/51b94001398c46b4b40a2f479b7acd40.png) ### 程序依赖图 ![](https://img-blog.csdnimg.cn/direct/97f9c08aba7845c98f834747b1786625.png) ![](https://img-blog.csdnimg.cn/direct/d3327cc6a996494fa3332637c1b94edd.png) ![](https://img-blog.csdnimg.cn/direct/73e254ebd3f149cfa4567b0fd47686bb.png) * 实线:控制流依赖;虚线:数据流依赖;(叉掉的是ppt错了) ![](https://img-blog.csdnimg.cn/direct/38466747d9eb4de995baf7199c214133.png) * 新增的红线是数据依赖。 * PDG 统一不考虑指向自己的依赖边。考试不考 for 循环,换为 while。 ![](https://img-blog.csdnimg.cn/direct/d36fc580ab854099a97dc1ed19d16368.png) ### 程序切片 ![](https://img-blog.csdnimg.cn/direct/b543e7ed5cf84ae6838ca6ec2bc4365c.png) #### 基于数据流方程求解程序切片(不考) ![](https://img-blog.csdnimg.cn/direct/a03781be3a284703a67331ef77040bc8.png) ![](https://img-blog.csdnimg.cn/direct/ad8ad8164d474f508a17e3e04aed95ef.png) #### 基于图可达性的静态切片计算(考点) ![](https://img-blog.csdnimg.cn/direct/68148d25bd7444dbadddc76e06ca6884.png) ![](https://img-blog.csdnimg.cn/direct/ab70903fd5804a6ab9d7fe2adfc37521.png) ![](https://img-blog.csdnimg.cn/direct/be07011dd19f4ca98bd100599422561c.png) ![](https://img-blog.csdnimg.cn/direct/a9a4483b920a4ec2a341b6f4f2352a17.png) #### 动态切片 ![](https://img-blog.csdnimg.cn/direct/a5b6d845181a4ed9a2cfe682d61261e7.png) ![](https://img-blog.csdnimg.cn/direct/67adeb0d192c4f7896e1d3f25850cd3e.png) ![](https://img-blog.csdnimg.cn/direct/6e86774326c149c585c6f161f388c5c9.png) ![](https://img-blog.csdnimg.cn/direct/5975ed8b69714b2788cf88daf602519c.png) ![](https://img-blog.csdnimg.cn/direct/9288440bbe1947d09983fc024798e8eb.png) N=1,循环只有一次,所以切片不应该包含7。 ![](https://img-blog.csdnimg.cn/direct/7f4080eee637439fbefc2bfc8c50709b.png) ![](https://img-blog.csdnimg.cn/direct/b9625cbc9b3a42789b9485490efe7a15.png) 第二轮根本执行不到7。红色边需要删除。 ![](https://img-blog.csdnimg.cn/direct/f930af9ad5674b8ba2c6a7e6fbe4000a.png) ![](https://img-blog.csdnimg.cn/direct/33259a74549d4530968a23897df89422.png) 方法三之后不看。考试不考。 ## 5 污点分析 **考点** :污点分析:会应用程序切片的可达性分析等技术。不会出难题,会基于汇编码。 ![](https://img-blog.csdnimg.cn/direct/70c15dd3a80e4c129ddc39fdecf4bd5d.png) ### 污点传播 ![](https://img-blog.csdnimg.cn/direct/c658320d0212462fb1df2539ee2d62a8.png) ![](https://img-blog.csdnimg.cn/direct/3ee50be4a19b4a449c32f86bc46afa6a.png) ![](https://img-blog.csdnimg.cn/direct/c6c571f0af424798908a14b412d28304.png) ![](https://img-blog.csdnimg.cn/direct/0b50474ff0c041578b98b3e78430b694.png) ![](https://img-blog.csdnimg.cn/direct/ae9a0e62d4c046c28f678a715a12cd2f.png) ![](https://img-blog.csdnimg.cn/direct/779590537fe347dcad1416bf027352be.png) * 用户级监控缺陷:无法跟踪内核指令。许多安全漏洞可能涉及内核态的操作,例如缓冲区溢出、权限提升攻击等。如果监控工具无法跟踪内核态,将无法全面检测和分析这些安全漏洞,可能导致潜在的安全威胁被忽视。 ![](https://img-blog.csdnimg.cn/direct/2a63dfb0b9a042159ca9d47b67eedf49.png) ![](https://img-blog.csdnimg.cn/direct/b89551c5393041cc8acd88a8d790770d.png) ![](https://img-blog.csdnimg.cn/direct/f6ee3b1a552e46a4805d47a36c753c6e.png) ![](https://img-blog.csdnimg.cn/direct/e79bca794be541d386d7f4a1b9bf3b82.png) ![](https://img-blog.csdnimg.cn/direct/a40708dc09d14b50b7a6af8007fc5d52.png) ![](https://img-blog.csdnimg.cn/direct/f71bc3f86ff241ada6c506f1c065bc76.png) 当内存指针本身是污点时:任意地址读、写 ![](https://img-blog.csdnimg.cn/direct/67989e8c853e44a8a9418285eb93e306.png) ![](https://img-blog.csdnimg.cn/direct/bdfd2ce8d8ea4dd69bd9a44259d2df6d.png) ![](https://img-blog.csdnimg.cn/direct/34bd1ec9bfb44412b59f86f90fa6e359.png) ![](https://img-blog.csdnimg.cn/direct/5ccd1a71d6ee4bb9893f0b879e616c6d.png) ![](https://img-blog.csdnimg.cn/direct/290c256f949048b886378f9c28fb93a7.png) ## 6 模糊测试(了解概念即可) **考点:** 模糊测试:不会出综合题。重点是AFL。 * 模糊测试 * 基本原理 * AFL基本原理,实现细节(插桩,覆盖率获取) * 算法优化(不涉及) ![](https://img-blog.csdnimg.cn/direct/e14cb1f6c4954dc587d30e2b28cecc01.png) ![](https://img-blog.csdnimg.cn/direct/07e60b6a5aaa4ac08f111c1b25589807.png) ![](https://img-blog.csdnimg.cn/direct/7f8fd3dfa73245aabd83bcf5677e6dd4.png) ![](https://img-blog.csdnimg.cn/direct/51dc51919e5640338f0ab2e26d25bec7.png) ![](https://img-blog.csdnimg.cn/direct/f2fbfcfc34c84f04bf9be5041cb46478.png) ![](https://img-blog.csdnimg.cn/direct/39537057e1c9470ca934fd179188b8c6.png) ![](https://img-blog.csdnimg.cn/direct/faf4cec5c39f49b79e77bc802260c583.png) ![](https://img-blog.csdnimg.cn/direct/25b52438159943d59b622124f0d1681b.png) ![](https://img-blog.csdnimg.cn/direct/a2c19a686fc048ff9007c0c9640122bd.png) ![](https://img-blog.csdnimg.cn/direct/886210adcb3744ec8342f302f205346a.png) ![](https://img-blog.csdnimg.cn/direct/fcaf6430d28f4a28b66ac69597b34e8c.png) ![](https://img-blog.csdnimg.cn/direct/1955f9646261412e8ffd0eb428534669.png) 略。。 ### 反馈式模糊测试 AFL ![](https://img-blog.csdnimg.cn/direct/9c2c8ecadd654b56a6f5df5a8e026174.png) ![](https://img-blog.csdnimg.cn/direct/5611b216db6d4ee7b1aa8de71388e33b.png) ![](https://img-blog.csdnimg.cn/direct/cc92599646d24ade8cbd19b37ec7e410.png) ![](https://img-blog.csdnimg.cn/direct/ce397c9997fe41a19340e20ba446817e.png) ![](https://img-blog.csdnimg.cn/direct/e161c644e1574f768990092af108087d.png) ## 7 符号执行技术(重点) **考点** **符号执行**:重点考基本思路和方法,会用符号执行分析给定程序。注意动态/静态符号执行的区别,可能会考动态符号执行。混合符号执行的概念。常考题型:执行树。 * 符号执行 * 主要做什么 * 路径表达式 * **执行树**(如何画,经常出现的题型) * 动态符号执行(**基本概念**),与静态的区别,给定输入能否走到指定分支 ### 经典符号执行 ![](https://img-blog.csdnimg.cn/direct/7b52749055c14b38a97db6fd677ead59.png) ![](https://img-blog.csdnimg.cn/direct/34dafa2e860c48e5a545dd5a1d98d6d3.png) ![](https://img-blog.csdnimg.cn/direct/6009ce6a434846cda05e50b384dd99d0.png) ![](https://img-blog.csdnimg.cn/direct/6d183fbc1fba44829a9ec6befb589f21.png) ![](https://img-blog.csdnimg.cn/direct/8d3834f8a3ac4c82a4139d81489e4b1e.png) ![](https://img-blog.csdnimg.cn/direct/dc3047bd46bb4095a2612e3e264a44ec.png) #### 路径条件 ![](https://img-blog.csdnimg.cn/direct/ae95c810bd54411abcca3dc8757875b7.png) ![](https://img-blog.csdnimg.cn/direct/29a59bc3d81b45f3b5c5903762f5c0d3.png) ![](https://img-blog.csdnimg.cn/direct/a5e86adde62941ffb290d13bf2f329b1.png) ![](https://img-blog.csdnimg.cn/direct/d9502f1bf9344edda15b931c1254a279.png) ![](https://img-blog.csdnimg.cn/direct/634fccf20c2c46a794e363e8b1965f61.png) #### 执行树 ![](https://img-blog.csdnimg.cn/direct/f4e4919ab5a5471e80511ba1f3b773dc.png) ![](https://img-blog.csdnimg.cn/direct/c9b2cd91243b422cb252bff7730b620d.png) 注:上图loc:13的z值ppt里有误,以后面的ppt为准。z值此时不需要更新。 ![](https://img-blog.csdnimg.cn/direct/7ae3580b518748c49dda9e6b5c8c028b.png) ![](https://img-blog.csdnimg.cn/direct/d0bf5143e09540f19d54601e831a88c0.png) ![](https://img-blog.csdnimg.cn/direct/48d31dcb4aec48fbbc3da3224f94275d.png) ![](https://img-blog.csdnimg.cn/direct/239a042a1264427b85bdd4e850fb1da2.png) ![](https://img-blog.csdnimg.cn/direct/041896eeb2f2424192d0b9d48060e726.png) #### 过程内分析、过程间分析 ![](https://img-blog.csdnimg.cn/direct/1ece6105845f42c9b31c9c8365a38aa6.png) ![](https://img-blog.csdnimg.cn/direct/8bfe59f4554c4462b88879de0ab312bb.png) ### 动态符号执行(考概念) ![](https://img-blog.csdnimg.cn/direct/f82d19ee9e674d4fa7b3f35224779a1f.png) ![](https://img-blog.csdnimg.cn/direct/b16a5a34315844b49b1df29bdac05aef.png) ![](https://img-blog.csdnimg.cn/direct/103f8a4714884c76a87247d63345a876.png) ### 并行符号执行(非重点) ![](https://img-blog.csdnimg.cn/direct/d236a2cec7b74f8b9b794ffab7fcc88d.png) ### 选择符号执行(非重点) ![](https://img-blog.csdnimg.cn/direct/449885fd66204444b07a2ffccb53693a.png) ![](https://img-blog.csdnimg.cn/direct/7a42990a77c44c93a5e64572515d0d24.png) ![](https://img-blog.csdnimg.cn/direct/f6f3498e2eeb4a99829b28d8028effa2.png) ## 8 网络协议逆向分析 **考点**:考基本概念,可能会结合污点传播(基于分隔符的划分方法)、程序切片(基于字段来源回溯的方法,动态后向数据切片)。最好熟悉这一章三个方法的流程。状态机不考分析题。 * 网络协议逆向(基本概念) * 和污点,切片相关的内容,可能会进行结合 * 基于分隔符(污点) * 基于消息处理指令(调用栈恢复) * 基于字段来源回溯(切片) * 字段关系识别 * 密码算法逆向恢复(基本了解) ### 字段划分 ![](https://img-blog.csdnimg.cn/direct/370e09d700b544cbba09a8c10069ff40.png) ![](https://img-blog.csdnimg.cn/direct/8b48c2435163441b97ef9de2844ba94b.png) ![](https://img-blog.csdnimg.cn/direct/9e5b41d526354eb7b43f5098e2e37e29.png) ![](https://img-blog.csdnimg.cn/direct/b3baa671b38243cb980c0c24ac4ecd50.png) ![](https://img-blog.csdnimg.cn/direct/d6a70f0943134af8b9c82e47687cdaba.png) ![](https://img-blog.csdnimg.cn/direct/6b921b3f616f4ec088cc515497346785.png) ![](https://img-blog.csdnimg.cn/direct/fa283ef7548b44d39254147a2f893d6c.png) ![](https://img-blog.csdnimg.cn/direct/449629a95b9b4071aa49909421ffcc89.png) #### 基于分隔符的划分方法 ![](https://img-blog.csdnimg.cn/direct/daf78914bb5440bb9c430a8aa0edb8f0.png) ![](https://img-blog.csdnimg.cn/direct/7eaff6a9528447a7aa0e2dc11fc9e308.png) ![](https://img-blog.csdnimg.cn/direct/92d836b83fcc4a16a223b56448598b8e.png) ![](https://img-blog.csdnimg.cn/direct/a7505bef093747529d48e01299d1c447.png) ![](https://img-blog.csdnimg.cn/direct/be88cde864c94d21aee901e82dde238a.png) #### 基于消息处理指令上下文差异的划分方法 ![](https://img-blog.csdnimg.cn/direct/8bda131d3b634e86a0628a56c0a9d75d.png) ![](https://img-blog.csdnimg.cn/direct/3173bb9981714fbf94bfb3c6c34d4e88.png) ![](https://img-blog.csdnimg.cn/direct/496c749856e244e4b99a42bdf891dc5a.png) ![](https://img-blog.csdnimg.cn/direct/f9419b59b0c6437fa3d17057a02e8d22.png) ![](https://img-blog.csdnimg.cn/direct/665b4c41256648e093aa8a074f247846.png) #### 基于字段来源回溯的划分方法 ![](https://img-blog.csdnimg.cn/direct/64ee9399c5fc4572b5e1ba8c8e3d3eee.png) ![](https://img-blog.csdnimg.cn/direct/19c31339bf6d427db603e422e9c17297.png) ![](https://img-blog.csdnimg.cn/direct/cffe86a28ac845ebaeedc8b56163c13b.png) ![](https://img-blog.csdnimg.cn/direct/524ed1d715474b39b4bfe2b8ea66daba.png) ##### 基于切片的字段来源回溯 ![](https://img-blog.csdnimg.cn/direct/71a8756cdf244a929f5c9865d659f338.png) ![](https://img-blog.csdnimg.cn/direct/a5d9fc3bc29a44ec856a22b004fa2d4a.png) ![](https://img-blog.csdnimg.cn/direct/18b3c501e49a459cb4eb6b5a9f8850c1.png) ![](https://img-blog.csdnimg.cn/direct/2fc2efebdb384f44b1a81bef1fae277b.png) ### 字段间关系识别 ![](https://img-blog.csdnimg.cn/direct/6fcfa06765f149b6b0f01396af67b585.png) ![](https://img-blog.csdnimg.cn/direct/2cec26b3e0754be19009543074dd09d7.png) ![](https://img-blog.csdnimg.cn/direct/bd9a0ccba6ce4dac8a20bccf938c081c.png) ![](https://img-blog.csdnimg.cn/direct/678208c0b1d74c809a7d93f73805d427.png) #### 位置型字段 ![](https://img-blog.csdnimg.cn/direct/bd00a52fff52468cb2eaa9a78603bf90.png) ![](https://img-blog.csdnimg.cn/direct/09aa51201cfe4d22ac98c3179456f367.png) ![](https://img-blog.csdnimg.cn/direct/96ddccc7b5f142b9b58105eaa51f80ce.png) ![](https://img-blog.csdnimg.cn/direct/ec89b69e6d734698acf02e3dbe9eb8a5.png) ![](https://img-blog.csdnimg.cn/direct/678428d8229749efa4403f4063e67629.png) ### 字段语义恢复 ![](https://img-blog.csdnimg.cn/direct/9c6e1aeb611643c5a8937a41e6994075.png) ![](https://img-blog.csdnimg.cn/direct/b6bc2be278764939bd2cf50f074e5bdd.png) ![](https://img-blog.csdnimg.cn/direct/b8098518eace4ad1b46d267505e5a2d9.png) ![](https://img-blog.csdnimg.cn/direct/a9d6349b8e694d58a073386e963603b5.png) ![](https://img-blog.csdnimg.cn/direct/4cb66790c57749839d9f5cd81321e964.png) ![](https://img-blog.csdnimg.cn/direct/c377588500f04830b84a1ca79b73fb2d.png) ![](https://img-blog.csdnimg.cn/direct/92f7882740b64d6ab5809568963abb05.png) ![](https://img-blog.csdnimg.cn/direct/3e7c7e26cd5a49eba148d00c42446028.png) ![](https://img-blog.csdnimg.cn/direct/d0a8e81f919140ee8d85263ffcca8b16.png) ### 协议状态机恢复 ![](https://img-blog.csdnimg.cn/direct/4dc3940e6d694992be4eee99e0f69c46.png) ![](https://img-blog.csdnimg.cn/direct/9401fe568e8f410aadd3407ce0714a42.png) 略。 ![](https://img-blog.csdnimg.cn/direct/e3f9157559e1458e97eb67e90d876b10.png) ### 密码运算逆向恢复(了解即可) ![](https://img-blog.csdnimg.cn/direct/108c7016159c4897b9515ff5c0a4ed30.png) ![](https://img-blog.csdnimg.cn/direct/456de95a7e074e53bcd9a77686adc756.png) ![](https://img-blog.csdnimg.cn/direct/834fc244f373429b8505775c1c747da7.png) ![](https://img-blog.csdnimg.cn/direct/81b07a0d9b834ef7a594ad220b97efb2.png) ![](https://img-blog.csdnimg.cn/direct/384fabba910745869b272cd9670e51a5.png) ## 9 软件漏洞机理分析 **考点:** 识别代码中可能触发漏洞的脆弱点。需要掌握ppt中给出的示例 * 软件漏洞原理 * 漏洞类型 * 漏洞分析利用(综合) * 防护机制(基本概念) * 软件漏洞机理 * 脆弱点分析 * 路径分析 ![](https://img-blog.csdnimg.cn/direct/e62e7442d7254c99840630c8d763473d.png) ![](https://img-blog.csdnimg.cn/direct/43bb99f5daa04e6f8e7609b9b1be53ff.png) * 漏洞内容略。 ## 10 软件漏洞利用 **考点**: 会考漏洞利用。不会只靠各类漏洞的概念,需要在理解概念的基础上解题。 * 软件漏洞利用 * 最后综合题,ppt中实例 * 堆中脱链的计算

相关推荐
Alice-YUE1 小时前
【HTML5学习笔记1】html标签(上)
前端·笔记·学习·html·html5
Alice-YUE1 小时前
【HTML5学习笔记2】html标签(下)
前端·笔记·html·html5
jerry6091 小时前
LLM笔记(五)概率论
人工智能·笔记·学习·概率论
烧火大爷1 小时前
现代计算机图形学Games101入门笔记(十四)
笔记
xiao--xin3 小时前
计算机网络笔记(二十七)——4.9多协议标签交换MPLS
网络·笔记·计算机网络·mpls
Ivy烎3 小时前
【嵌入式笔记】Modbus TCP
笔记·tcp/ip·嵌入式·modbus tcp
愚润求学3 小时前
【Linux】动静态库链接原理
linux·运维·服务器·开发语言·笔记
FuckPatience4 小时前
日语简单记录
笔记
jerry6094 小时前
LLM笔记(六)线性代数
笔记·学习·线性代数·自然语言处理
草莓熊Lotso5 小时前
【C语言字符函数和字符串函数(一)】--字符分类函数,字符转换函数,strlen,strcpy,strcat函数的使用和模拟实现
c语言·开发语言·经验分享·笔记·其他