文章预览
前段时间看到群友问了这样一个问题: ldap: 和 rmi: 关键字被拦截了,是否还可以进行JNDI注入。方法很简单,就是使用ldaps,但后来发现很多人并不知道怎么搭建LDAPS服务器,正好CoNote里有这个功能,写篇简单的文章讲讲。 0x01 LDAPs是什么 在Java JNDI注入的过程中,用户传入一个URL,Java会根据URL的scheme来判断具体使用哪个包来处理,这些包的位置在 com.sun.jndi.url.* 中: 可见,这里除了我们常见的rmi、ldap等,还有一个ldaps,我们看下 com.sun.jndi.url.ldaps.ldapsURLContextFactory 的代码: package com.sun.jndi.url.ldaps; import com.sun.jndi.url.ldap.*; /** * An LDAP URL context factory that creates secure LDAP contexts (using SSL). * * @author Vincent Ryan */ final public class ldapsURLContextFactory extends ldapURLContextFactory { } 代码比我的钱包还干净,可见ldap和ldaps实际都由 com.sun.jndi
………………………………