2024年3月10日发(作者:)

FindBugs1.3.9规则整理

FindBugs1.3.9规则整理

Findbugs中把影响代码质量分为以下几个部分:

Security 关于代码安全性防护

序号 Description

1.

Dm: Hardcoded constant database password

(DMI_CONSTANT_DB_PASSWORD)

代码中创建DB的密码时采用了写死的密码。

2.

Dm: Empty database password (DMI_EMPTY_DB_PASSWORD)

创建数据库连接时没有为数据库设置密码,这会使数据库没有必

要的保护。

3.

HRS: HTTP cookie formed from untrusted input

(HRS_REQUEST_PARAMETER_TO_COOKIE)

此代码使用不受信任的HTTP参数构造一个HTTP Cookie。

4.

HRS: HTTP Response splitting vulnerability

备注

(HRS_REQUEST_PARAMETER_TO_HTTP_HEADER)

在代码中直接把一个HTTP的参数写入一个HTTP头文件中,它为

HTTP的响应暴露了漏洞。

5.

SQL: Nonconstant string passed to execute method on an SQL

statement (SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE)

该方法以字符串的形式来调用SQLstatement的execute方法,

它似乎是动态生成SQL语句的方法。这会更容易受到SQL注入攻

击。

6.

XSS: JSP reflected cross site scripting vulnerability

(XSS_REQUEST_PARAMETER_TO_JSP_WRITER)

在代码中在JSP输出中直接写入一个HTTP参数,这会造成一个

跨站点的脚本漏洞。

Experimental

序号

1.

Description

LG: Potential lost logger changes due to weak

reference in OpenJDK

(LG_LOST_LOGGER_DUE_TO_WEAK_REFERENCE)

OpenJDK的引入了一种潜在的不兼容问题,特别是,

的行为改变时。它现在使用

内部弱引用,而不是强引用。–logger配置改变,它就

是丢失对logger的引用,这本是一个合理的变化,但

不幸的是一些代码对旧的行为有依赖关系。这意味着,

当进行垃圾收集时对logger配置将会丢失。例如:

public static void initLogging() throws Exception

{

Logger logger = ger("");

dler(new FileHandler()); // call to

change logger configuration

备注