数据流分析
    https://www.bookstack.cn/read/CTF-All-In-One/doc-5.4_dataflow_analysis.md

    数据流分析的分类
    流不敏感分析:Flow Insensitive,不考虑语句的先后顺序,按照物理顺序从上往下顺序分析每一个语句,忽略程序中存在的分支。
    流敏感分析:Flow Sensitive,考虑程序语句的执行顺序,通常需要利用程序的控制流图(CFG)
    路径敏感分析:Path Sensitive,不仅考虑语句执行的先后顺序,还对程序的执行路径条件加以判断,以确定分析使用的语句序列是否对应着一条可实际运行的程序执行路径。

    根据分析程序路径的深度分类
    过程内分析:intraprocedure analysis,只针对程序中函数内的代码。
    过程间分析:inter-procedure analysis,考虑函数之间的数据流,即需要跟踪分析目标数据在函数之间的传递过程
    上下文不敏感分析(context-insensitive):将每个调用或返回看做一个 “goto” 操作,忽略调用位置和函数参数取值等函数调用的相关信息
    上下文敏感分析(context-sensitive):对不同调用位置调用的同一函数加以区分

    image.png
    北京大学 软件分析
    https://www.bilibili.com/video/BV14X4y1N7nx?from=search&seid=9073392278546408847

    南京大学 软件分析
    https://www.bilibili.com/video/BV1b7411K7P4

    静态程序分析Static Program Analysis

    https://pascal-group.bitbucket.io/teaching.html