사용자 도구

사이트 도구


java:logback

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
다음 판 양쪽 다음 판
java:logback [2017/07/10 10:42]
kwon37xi [Multi line to Single line]
java:logback [2021/12/15 10:16]
kwon37xi
줄 13: 줄 13:
   * logback-access : Tomcat/Jetty 등에 설치되어 웹 요청을 로깅할 수 있다.   * logback-access : Tomcat/Jetty 등에 설치되어 웹 요청을 로깅할 수 있다.
   * [[http://audit.qos.ch/|logback-audit]] : 장시간 추적이 필요한 비지니스 애플리케이션의 이벤트 로깅   * [[http://audit.qos.ch/|logback-audit]] : 장시간 추적이 필요한 비지니스 애플리케이션의 이벤트 로깅
 +
 +===== LOGBACK-1591 취약점 이슈 =====
 +  * 가급적 logback ''1.2.8'' 이상 버전을 사용할 것.
 +  * [[https://jira.qos.ch/browse/LOGBACK-1591|[LOGBACK-1591] Possibility of vulnerability - QOS.ch JIRA]]
 +  * 발생 가능성은 희박한 편임.
 +  * [[https://github.com/cn-panda/logbackRceDemo|cn-panda/logbackRceDemo: The project is a simple vulnerability Demo environment written by SpringBoot. Here, I deliberately wrote a vulnerability environment where there are arbitrary file uploads, and then use the `scan` attribute in the loghack configuration file to cooperate with the logback vulnerability to implement RCE.]]
 +  * write access to logback.xml
 +  * use of versions < 1.2.8
 +  * reloading of poisoned configuration data, which implies application restart or scan="true" set prior to attack
  
 ===== 설정 ===== ===== 설정 =====
줄 111: 줄 120:
 <code> <code>
 %replace(%msg){"\n","\\n"} %replace(%xException){"\n", "\\n"}%nopex%n %replace(%msg){"\n","\\n"} %replace(%xException){"\n", "\\n"}%nopex%n
 +</code>
 +
 +<code>
 +-- 공백으로 변환됨.
 +%replace(%msg){'[\r\n]', ''}
 </code> </code>
  
줄 152: 줄 166:
 </code> </code>
  
-====== Filter ======+===== Filter =====
   * [[http://logback.qos.ch/manual/filters.html|Logback Filters]]   * [[http://logback.qos.ch/manual/filters.html|Logback Filters]]
  
-===== GEventEvaluator =====+==== GEventEvaluator ====
   * ''EventEvaluatorFilter''에서 [[:groovy|Groovy]] 로 필터 조건을 줄수 있는 Evaluator.   * ''EventEvaluatorFilter''에서 [[:groovy|Groovy]] 로 필터 조건을 줄수 있는 Evaluator.
   * ''ILoggingEvent'' 객체가 ''e'' 혹은 ''event'' 변수로 전달되며 ''TRACE'',''DEBUG'',...''ERROR''도 변수로 전달된다.   * ''ILoggingEvent'' 객체가 ''e'' 혹은 ''event'' 변수로 전달되며 ''TRACE'',''DEBUG'',...''ERROR''도 변수로 전달된다.
줄 179: 줄 193:
   </appender>   </appender>
 </code> </code>
 +
 +
  
java/logback.txt · 마지막으로 수정됨: 2023/09/21 13:21 저자 kwon37xi