6

我一直在尝试检测源代码文件中的硬编码密码。

目前我正在检查变量分配和比较标识符与密码匹配的子字符串,pswd。

但这会导致很多误报,例如在这种情况下(从配置文件中读取密码)

String PASSWORD_KEY = "server.password";
String password = prop.getProperty(PASSWORD_KEY);

我可以标记出一些子字符串,例如键、位置、路径,我可以跳过它们的错误生成,但除此之外我想不出更好的方法。

所有建议表示赞赏。

4

1 回答 1

1

隐藏后门的真实世界案例了解到,代码通常更加模糊,以使用指示目的的变量名称。

因此,为了做到万无一失,您需要进行完整的静态分析,并在代码检查器中拥有“智能”以理解代码并找到身份验证发生的位置,然后向后工作以验证没有隐藏的方法来实现这一点.

恕我直言,聘请某人进行(安全)代码审查比尝试自动化更便宜。

于 2016-01-07T16:11:34.903 回答