Log4j 설치

보안공부/취약점 실습|2024. 11. 15. 17:56

Log4j 취약점을 테스트 해보고 싶어서 Log4j 를 설치하기로 했다.

 

최종적으로 위와 같은 폴더 구조가 될 것이다.

1. log4j-core, log4j-api 2.14.1 jar 파일 다운로드

https://repo1.maven.org/maven2/org/apache/logging/log4j/log4j-core/2.14.1/

https://repo1.maven.org/maven2/org/apache/logging/log4j/log4j-api/2.14.1/

 

위 경로에서 log4j-core와 log4j-api jar 파일을 다운로드한다.

Log4j 취약점이 있는 2.14.1 버전으로 다운로드 하였다.

 

2. WEB-INF/lib에 복사

간단하게 VSCode를 이용해서 만든거라 jar 파일을 수동으로 넣어줘야 했다.

먼저 WEB-INF/lib 폴더를 만들고 jar 파일을 넣는다.

 

 

3. apache-tomcat-10.1.33/lib에 복사

apache-tomcat 설치 폴더의 lib 폴더에도 jar 파일을 넣는다.

 

 

4. log4j2.xml 파일 만들기

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5level: %msg%n" />
        </Console>
        <File name="File" fileName="../logs/app.log">
            <PatternLayout>
                <Pattern>%d{yyyy-MM-dd HH:mm:ss} [%t] %-5level: %msg%n</Pattern>
            </PatternLayout>
        </File>
    </Appenders>

    <Loggers>
        <Root level="debug">
            <AppenderRef ref="Console"/>
            <AppenderRef ref="File"/>
        </Root>
    </Loggers>
</Configuration>

 

WEB-INF/classes에 log4j2.xml 파일을 만든다.

apache-tomcat 설치 폴더의 logs 폴더에 app.log 라는 이름으로 로그가 쌓인다.

 

 

5. 톰캣 재시작

./tomcat 설치폴더/bin/shutdown.sh

./tomcat 설치폴더/bin/startup.sh

 

shutdown.sh으로 종료 후 시작을 해야 적용이 된다.

 

6. 로그 테스트

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<head>
    <title>Document</title>
</head>
<body>
<%
    java.util.Date today = new java.util.Date();
    out.println("오늘 : " + today.toString());
%>
<%@ page import="org.apache.logging.log4j.LogManager" %>
<%@ page import="org.apache.logging.log4j.Logger" %>

<%
    Logger logger = LogManager.getLogger("MyLogger");
    logger.info("This is an info log message");
    logger.error("This is an error log message");
%>

</body>
</html>

 

위와 같이 수정 후 URL 접근 하면

tomcat 설치폴더/logs/app.log에 로그가 쌓인다.

 

반응형

'보안공부 > 취약점 실습' 카테고리의 다른 글

Log4j 취약점 테스트-2  (0) 2024.11.23
Log4j 취약점 테스트-1  (0) 2024.11.22
ldap 설치  (0) 2024.11.18

댓글()