我不确定这里是否适合提问,如有任何帮助,我们将不胜感激。我想为 Java 构建一个静态污点分析工具。我的理解是该工具将从主入口点开始扫描所有 java 文件。对于每一行源代码,它都会对其进行解码并执行所需的操作。
例如,
1- Boolean x=false;
2- String s = x.toString();
第 1 行声明一个 boolean 变量,第 2 行将其转换为字符串。第 1 行将注意到 boolean 变量 'x' 已被声明,并在第 2 行将其转换为字符串。如果我检查 toString() 函数并执行所需的操作,我的工具只会理解它。
我的问题是,我是否需要为 Java 中为 boolean 类型定义的所有函数编写检查?其他数据类型和其他库函数怎么样?
例如,其他一些可用于 boolean 类型的函数是;
toString(boolean value)
compareTo(Boolean that)
etc.
最佳答案
为什么要重新发明轮子?你看了吗findbugs ? 如果你知道一些错误模式,然后用 findbugs 编写你自己的错误检测器,你就完成了。 Here , here , here和 here是一些起点......
关于java - Java 程序的静态污点分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18307464/