IT

    [JAVA 보안] CVE-2021-44228 log4j2 취약점 분석/ lookups 과 JNDI / RCE / logback, log4jdbc-remix, slf4j

    2021년 12월 10일 Log4j 취약점 발견 12월 10일 Log4j 취약점이 공개되었다. 나는 해당 이슈를 뉴스를 통해 토요일날 처음 접했다. 보자마자 생각들었던게, 어? 내 시스템들에도 Log4j 라이브러리를 쓸텐데..? 문제 없는건가? 그리고... 나뿐만 아니라 국내며 해외며.. java 기반 시스템에선 엄청 많이 사용하고 있을텐데???.. 라는 생각이 들었다. log4j 란? log4j라는 라이브러리에서 취약점이 발견되었다. log4j 는 java 기반 시스템에서 쓰이는 logging library 로써 굉장히 광범위하게 쓰이는 로깅 라이브러리다. 전세계적으로 굉장히 보편화되어있고 많은 시스템에서 사용중이고 심지어 내가 운영중인 웹사이트도 해당 라이브러리를 사용하고있었기에 관심이 컸다. log..

    [ASUS 노트북] 절전모드시 키보드 백라이트 끄기 / 아수스 게이밍 / LED OFF / TUF FA506IV / ARMOURY CRATE

    보통 나는 특별히 어디 여행갈때 들고 다니는 경우를 제외하면 이렇게 고정하고 쓴다. 그런데 최근에 문제가 발생했다.. 잠자려는데.. 절전모드가 되서 모니터랑 유선키보드 조명도 다 꺼졌는데 천장에 빛이 깜빡깜빡 거렸다.. 그렇다.. 보통 사용할 때는 정적 으로 설정해놓았기 때문에 딱히 문제가 없는데 절전모드로 변경되면 이게 자동으로 브리딩 모드로 변하는 것이었다.. 불 다끈 방에 저 키보드가 깜빡깜빡 거리니 잠자는데 너무 방해가 됐다. 그래서 아ㅡㅡ 또 깜빡이네 하면서 노트북 화면을 덮거나 했었는데.. 이것도 한두번이지 매번 덮고.. 열고 하는게 귀찮아 어떻게 끄는지 찾아봤다.(인터넷에 검색해도 안나와 이것저것 해보다 겨우 찾아냈다..) ARMOURY CRATE 실행 보통 아수스 게이밍 쓰는 사람들은 기본..

    [Maria DB/MySQL] 마리아DB 타임존 변경 system_time_zone

    1년간 개인 서버를 운영하다가 now()함수를 돌렸을 때 시간이 맞지 않다는 것을 지금 발견했다..ㅋㅋ아마 작업하고 테스트 했을때 UTC하고 KST하고 9시간 밖에 차이가 안 났기 때문에, 못알아 챈 것 같다. ㅋㅋ select @@system_time_zone, @@global.time_zone; 일단 위 함수 돌렸을 때 시스템 시간이 UTC로 되어있었다. 이걸 한국 시간에 맞게 바꿔보자 ​ 방법 1. 임시 방편 - Maria 재부팅 하면 초기화 mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql 터미널을 이용해 우리 서버로 접속하고 위 명령어를 입력해주자. 아마 비번치라고 나오는데 비번 쳐주면 된다. 이 작업을 해야 시스템에서 사용하는 ..

    [Spring] 톰캣 재시작 없이 Java 파일 변경 적용하기 - Spring Loaded [Maven]

    톰캣으로 스프링 프로젝트를 개발하면서 은근 시간을 많이 잡아먹는 톰캣 재부팅.. JAVA 소스 한글자만 수정해도 반영되려면 톰캣을 재부팅 해야반영된다. 새로운 기능 개발을 하면서 이것저것 테스트할 때 수십법 재부팅을 해야하는데.. ​ 이게 개인 프로젝트 급이면 재부팅 머 10~30초 이내라지만, 기업급 프로젝트는 재부팅도 꽤나 많은 시간을 차지한다..재부팅 눌러놓고 커피나 뽑으러 가거나 했었지만 이게 은근 흐름을 끊고 그 몇분을 다 모아보면 꽤나 많은 시간이 허비 된다는 것을 느꼈다 ㅋㅋ... ​ 그래서 java파일 변경 후 톰캣 재부팅이 필요없는 Spring Loaded 적용하는 법을 알아보자. 1. Spring Loaded 설치 https://mvnrepository.com/artifact/org.s..

    [Maria DB] 스프링 원격 DB 접속 오류 / Cannot create PoolableConnectionFactory (Could not connect to address)

    문제 발생 오랫만에 서버 이전을 하고 DB 타겟을 바꾸고 서비스를 실행하는데 DB 연결이 안되는 문제가 나타났다. Cannot create PoolableConnectionFactory (Could not connect to address= (host=xxx.xxx.xxx.xxx)(port=3306)(type=master) : Connection refused: connect) 당시 로그는 위처럼 찍혔다. Could not get JDBC Connection 어쩌구..DB 커넥션을 맺은 JDBC 객체를 정상적으로 리턴받지 못한 모양이다. 왜지!? 전이랑 똑같이 했는데 왜 안돼! telnet 목적지IP 포트 회사에서 IF 서비스들을 많이 다뤄서 그런지 내 기계적으로 내 PC에서 텔넷부터 찍어봤다. 오잉....

    [아마존 AWS EC2] 서버 인스턴스 삭제하기 / 프리티어 종료! / Elastic IP 삭제

    이번에 아마존 EC2 인스턴스를 12개월 동안 무료로 사용할 수 있는 프리티어 기간이 끝난다는 메일을 받았다. 아무생각 없이 영원히 이용할 수 있을 것 같았던 EC2가.. 끝이라니..! 무료 사용 종료는 2020년 4월 30일.. 이번달이 지나고 나서 온디멘드 요금으로 전환된다. ​ 그래서 그냥 유료로 기존 EC2 서버를 운용 할 것인가. 아님 그냥 서비스를 종료할까, 아니면 다른 서버로 이주해서 계속 서비스를 할 것인가 고민을 많이 했다. ​ 고민끝에 서버를 이전하기로 했고, 기존 EC2 서버는 더 이상 요금이 발생하지 않도록 삭제하기로 했다. 1. EC2 인스턴스 종료 및 삭제 인스턴스 중지 EC2 인스턴스를 삭제하기 전에 실행중이라면 인스턴스를 종료해주자. ​ 1. EC2 대시보드에서 인스턴스를 눌..

    [WAS 이슈 해결 #2] MAT 힙 덤프 분석으로 JAVA 메모리 누수(Memory Leak) 잡기 - 톰캣 힙메모리 증가 문제 / Out of Memory

    저번 포스팅에서 CPU사용량, 힙메모리 사용량이 순간적으로 치솟아 서버가 다운되는 현상에 대해서 포스팅 했다. 이번에는 이 문제의 원인을 어떻게 밝혀냈고 해결했는지에 대해서 알아보자. https://extsdd.tistory.com/257 [WAS 이슈 해결 #1] java.lang.OutOfMemoryError: GC overhead limit exceeded 로 인한 Tomcat 서버 다운 / CPU 사용량 최근 운영중인 웹서비스가 비규칙적으로 다운되는 현상이 있었는데, 발생했던 문제와 그 문제를 해결하는 과정에 대해서 포스팅을 해보려고 한다. 서버 운영을 하는 실무자들에게 도움이 되었 extsdd.tistory.com 1. 힙메모리(Heap Memory) 덤프 -XX:+HeapDumpOnOutOfM..

    [WAS 이슈 해결 #1] java.lang.OutOfMemoryError: GC overhead limit exceeded 로 인한 Tomcat 서버 다운 / CPU 사용량 폭증

    최근 운영중인 웹서비스가 비규칙적으로 다운되는 현상이 있었는데, 발생했던 문제와 그 문제를 해결하는 과정에 대해서 포스팅을 해보려고 한다. 서버 운영을 하는 실무자들에게 도움이 되었으면 좋겠다. 문제 발생 ​ 첫 발생이 3월 초쯤 이었던가?.. 운영중인 웹 서비스가 종종 다운되는 현상을 겪었다. 운영 서버에 요청을 보내면 처리되지 않다가 결국 몇 분 뒤 Tomcat 서버가 죽어 위처럼 Service Unavailable 메시지를 띄었다. 보통 부하 분산과 장애에 대비해 WAS를 이중화 해놓기 때문에 WAS하나가 죽어도 다른 WAS가 처리해 줄껀데, 브라우저가 응답대기 상태도 아니고 Service Unavailable 을 띄운걸로 봐서는 WAS두개가 모두 죽은 것 같았다. ​ 어떤 문제가 있었던걸까? 여태..