🇰🇷 한글 설명
Micronaut 프레임워크 2.5.9 미만 버전에서 경로 탐색(Path Traversal) 취약점이 발견되었습니다. 기본 설정 상태에서 URL에 '/../../'를 포함하면 파일 시스템의 임의의 파일에 접근할 수 있습니다. 이 문제는 Micronaut이 파일 접근 범위를 설정된 경로로 제한하지 않아 발생합니다.
💡 쉬운 설명
해커가 웹 주소에 특수 문자를 입력하여 서버 안에 있는 중요한 파일을 몰래 훔쳐볼 수 있는 문제입니다. 마치 집 문을 열고 들어오는 것이 아니라, 창문을 통해 집 안의 서랍까지 열 수 있는 것과 같습니다.
🇺🇸 원문 (English)
Micronaut is a JVM-based, full stack Java framework designed for building JVM applications. A path traversal vulnerability exists in versions prior to 2.5.9. With a basic configuration, it is possible to access any file from a filesystem, using "/../../" in the URL. This occurs because Micronaut does not restrict file access to configured paths. The vulnerability is patched in version 2.5.9. As a workaround, do not use `**` in mapping, use only `*`, which exposes only flat structure of a directory not allowing traversal. If using Linux, another workaround is to run micronaut in chroot.
📍 영향받는 시스템
Micronaut versions prior to 2.5.9
⚔️ 공격 벡터
URL 경로에 '/../../'와 같은 상위 디렉토리 이동 문자를 삽입하여 파일 시스템 접근
🛡️ 대응 방법
Micronaut 버전을 2.5.9 이상으로 업데이트하거나, 매핑 시 '**' 대신 '*'를 사용하고 Linux 환경에서는 chroot를 적용합니다.
🔧 검증 코드
출력된 Micronaut의 버전을 확인하여 2.5.9 미만인지 체크합니다.
mvn dependency:list | grep micronaut