jndi注入笔记
笔记
首先要理解jndi与rmi和ldap的关系,通俗的说,jndi相当于是一个接口,rmi和ldap是访问这个接口的协议。
RMI(远程方法调用)通俗的说就像将一个class放在A机器上,然后在B机器中调用这个class的方法
在审计jndi注入时重点关注.lookup,如
1 |
|
如果servername
可控则会存在jndi注入
1 |
|
项目实例
如笔记所说,context.lookup几个参数,我们查看这几个参数是否可控
在头部引用的MessageQueueDto类中
做了实体定义
从调用该实体的WorkConfigQuery
类中的queryMessageQueue
方法得知各参数对应的标签
因为URL等标签值可控,导致漏洞产生,接下来就找到调用该方法的servlet就可以进行漏洞利用
声明:
本文章用于学习交流,严禁用于非法操作,出现后果一切自行承担,阅读此文章表示你已同意本声明。
Disclaimer:
This article is for study and communication. It is strictly forbidden to use it for illegal operations. All consequences shall be borne by yourself. Reading this article means that you have agreed to this statement.