Dynamic 静态分析和动态分析的区别是什么? 静态分析和动态分析在网络安全方面有什么区别?

Dynamic 静态分析和动态分析的区别是什么? 静态分析和动态分析在网络安全方面有什么区别?,dynamic,static,analysis,static-analysis,dynamic-analysis,Dynamic,Static,Analysis,Static Analysis,Dynamic Analysis,静态分析意味着“阅读源代码并尝试识别故障”。为了安全起见,静态分析工具试图在代码中找到安全漏洞,这些漏洞在代码发布供生产使用之前可能已经修复 动态分析意味着“观察应用程序的实际执行情况,以识别故障(例如,撤销空指针、通过数组末尾的数组访问、在不首先释放它的情况下重新使用动态分配的块,…”。在应用程序开发和调试期间完成,它可以发现错误,这些错误可能会在代码发布用于生产之前修复。在生产执行期间完成,它可以检测软件将要产生的错误,并防止这些错误(例如,不实际执行deref,而是报告应用程序错误),但由

静态分析意味着“阅读源代码并尝试识别故障”。为了安全起见,静态分析工具试图在代码中找到安全漏洞,这些漏洞在代码发布供生产使用之前可能已经修复

动态分析意味着“观察应用程序的实际执行情况,以识别故障(例如,撤销空指针、通过数组末尾的数组访问、在不首先释放它的情况下重新使用动态分配的块,…”。在应用程序开发和调试期间完成,它可以发现错误,这些错误可能会在代码发布用于生产之前修复。在生产执行期间完成,它可以检测软件将要产生的错误,并防止这些错误(例如,不实际执行deref,而是报告应用程序错误),但由于动态分析的侵入性,执行成本要高得多

每种技术都有不同的优势和劣势。这两种技术都因图灵导致无法完全推理软件活动而受到影响。这些工具中的大多数都会出现失误,遗漏问题或报告不真实的问题。通常这些工具都会尝试避免报告误报,因为人们不会使用这些工具产生大量这样的错误。限制误报往往也会限制对真实错误的报告,所以你不能确定一个干净的报告意味着“没有问题”