该声明被 Checkmarx 正确地标记为可能的 LDAP_Injection。
String filter = "(&(objectclass=accessGroup)(member=cn=*)(dsApplicationName=" + application + "))";
使用 ESAPI 编码器,我希望这可以解决问题:
String saneApplication = org.owasp.esapi.reference.DefaultEncoder.getInstance().encodeForLDAP(application);
String filter = "(&(objectclass=accessGroup)(member=cn=*)(dsApplicationName=" + saneApplication + "))";
但 Checkmarx 仍将其标记为LDAP_Injection
.
不知道如何正确解决这个问题。
谢谢托马斯