我用veracode扫描了该项目,它给出了CWE ID 93(CRLF注入(的问题,这个问题发生在波纹管线上-
InternetAddress[] address = {new InternetAddress(username)};
msg.setRecipients(Message.RecipientType.TO, address);
Veracode 在上面代码的第二行标记了问题 93。用户名是从请求对象解析的,该对象是字符串缓冲区
所以我的一位同事建议我应该使用验证方法来删除 CRLF 字符。地址对象上的验证方法会删除 CRLF 分隔符吗?
Use ESAPI(The OWASP Enterprise Security API( .它是完全免费的。
设置ESAPI后,下面的代码将解决此问题。
ESAPI.encoder((.decodeForHTML(username(