현재는 널리 사용하고 있어 그만큼 보안이 중요 하지만 Tomcat의 버그, 보안 취약점 등 설계상 결함을 이용해 공격자의 의도된 동작을 수행하도록 만들어진 절차나 일련의 명령, 스크립트, 프로그램 또는 특정한 데이터 조각을 사용한 공격 행위를 이르기도 한다.
이러한 취약점 공격(Exploit) 원인은 Tomcat의 디폴트 설정에 영향을 주며, 따라서 많은 서버들이 현재 취약점에 노출되어 있을 가능성이 높다. 사용자들이 디폴트 설정을 잘 바꾸지 않기 때문이다. 이 말은 많은 서버들이 현재 인터넷에 노출되어 있을 수 있다는 뜻이다.
최근에는 Tomcat의 취약점을 노린 공격이 증가하고 있다. 공격자가 취약점을 악용하여 취약한 서버에서 악성코드를 실행하고 제어권을 얻을 수 있다.
이런 취약점을 방치해둔 상태로 운영하게 된다면 취약점을 공격해 악성코드를 실행하여 악성코드 유포 및 운영 서버에 손상이 가해지거나 데이터가 약탈되는 등 다양한 취약점을 악용하는 사례가 늘어나고 있다.
예) 관리자 콘솔 취약점
예) tomcat-users.xml
Tomcat 관리자 콘솔의 로그인 시 사용하는 Username/Password는 "tomcat-users.xml" 파일에 암호화 되지 않는 원문인 평문으로 저장되어 있어서 보안에 그만큼 취약하다.
일회용 인증키 생성 주기가 30초 이면 30초 마다 일회용 인증키가 바뀌기 때문에 고정된 비밀번호와 결합하면 일회용 인증키 생성 주기 마다 새로운 비밀번호가 생성되기 때문에 고전적 방법인 주기적으로 Tomcat 관리자 콘솔의 비밀번호를 바꿀 필요가 없게 된다.
만약, 2-factor 인증 솔루션이 적용되어 있다면 비밀번호 입력란에 고정된 비밀번호만 입력하는 경우 Tomcat 관리자 콘솔에 로그인을 할 수 없게 된다.
Tomcat 콘솔 로그인 화면에서 비밀번호를 먼저 입력하고 공백 없이 이어서 일회용 인증키를 입력해야 한다. 예를 들어, 비밀번호가 "tomcat" 이고, 일회용 인증키가 "195921" 이라면 "tomcat195921"으로 입력한다.
설령, Tomcat 콘솔 로그인 정보인 Username/Password가 유출 되어도 일회용 인증키 생성 주기가 30초 이면 30초 마다 일회용 인증키가 바뀌기 때문에 고정된 비밀번호와 결합하면 일회용 인증키 생성 주기 마다 새로운 비밀번호가 생성되기 때문에 고전적 방법인 주기적으로 Tomcat 관리자 콘솔의 비밀번호를 바꿀 필요가 없게 된다.
만약, 2-factor 인증 솔루션이 적용되어 있다면 비밀번호 입력란에 고정된 비밀번호만 입력하는 경우 비밀번호 뒤에 덧붙인 일회용 인증키를 유추할 수 없어서 Tomcat 관리자 콘솔에 로그인을 할 수 없게 된다.
0개의 댓글이 있습니다.