LDAP 삽입 (LDAP Injection)
Improper Neutralization of Special Elements used in an LDAP Query ('LDAP Injection')
Last updated
Improper Neutralization of Special Elements used in an LDAP Query ('LDAP Injection')
Last updated
import javax.naming.*;
import javax.naming.directory.*;
@RequestMapping("/searchUser")
public String searchUser(@RequestParam String username) throws NamingException {
DirContext ctx = new InitialDirContext();
String searchFilter = "(cn=" + username + ")";
NamingEnumeration<SearchResult> results = ctx.search("dc=example,dc=org", searchFilter, new SearchControls());
return "Search completed";
}import javax.naming.*;
import javax.naming.directory.*;
@RequestMapping("/searchUser")
public String searchUser(@RequestParam String username) throws NamingException {
DirContext ctx = new InitialDirContext();
SearchControls searchControls = new SearchControls();
searchControls.setSearchScope(SearchControls.SUBTREE_SCOPE);
// 안전한 방법: filterArgs를 사용하여 입력값 자동 이스케이프 처리
Object[] searchArguments = new Object[]{username};
NamingEnumeration<SearchResult> results = ctx.search("dc=example,dc=org", "(cn={0})", searchArguments, searchControls);
return "Search completed";
}