🇰🇷 한글 설명
spring-boot-actuator-logview 라이브러리 0.2.13 미만 버전에서 디렉토리 트래버설 취약점이 발견되었습니다. 파일 이름은 검증되지만 베이스 폴더 파라미터에 대한 검증이 미흡하여, 공격자가 로그 디렉토리 외부의 파일에 접근할 수 있습니다.
💡 쉬운 설명
로그 파일을 보여주는 기능의 허점을 이용해, 원래 보여주면 안 되는 컴퓨터 내부의 중요한 파일들을 몰래 훔쳐볼 수 있는 문제입니다. 파일 경로를 조작하여 로그 폴더 밖으로 나갈 수 있는 것이 원인입니다.
🇺🇸 원문 (English)
spring-boot-actuator-logview in a library that adds a simple logfile viewer as spring boot actuator endpoint. It is maven package "eu.hinsch:spring-boot-actuator-logview". In spring-boot-actuator-logview before version 0.2.13 there is a directory traversal vulnerability. The nature of this library is to expose a log file directory via admin (spring boot actuator) HTTP endpoints. Both the filename to view and a base folder (relative to the logging folder root) can be specified via request parameters. While the filename parameter was checked to prevent directory traversal exploits (so that `filename=../somefile` would not work), the base folder parameter was not sufficiently checked, so that `filename=somefile&base=../` could access a file outside the logging base directory). The vulnerability has been patched in release 0.2.13. Any users of 0.2.12 should be able to update without any issues as there are no other changes in that release. There is no workaround to fix the vulnerability other than updating or removing the dependency. However, removing read access of the user the application is run with to any directory not required for running the application can limit the impact. Additionally, access to the logview endpoint can be limited by deploying the application behind a reverse proxy.
📍 영향받는 시스템
eu.hinsch:spring-boot-actuator-logview 0.2.13 미만 버전
⚔️ 공격 벡터
HTTP 요청 파라미터(base)에 상위 디렉토리 이동 경로(../)를 삽입하여 파일 접근
🛡️ 대응 방법
라이브러리를 0.2.13 버전 이상으로 업데이트하거나 해당 의존성을 제거하십시오.
🔧 검증 코드
출력된 결과에서 라이브러리 버전이 0.2.13 미만인지 확인하십시오.
mvn dependency:tree | grep 'eu.hinsch:spring-boot-actuator-logview'