🇰🇷 한글 설명
Apache Shiro의 Jakarta EE 통합 모듈을 사용할 때, 권한이 낮은 사용자가 조작된 HTTP 요청을 보내 서버가 공격자의 URL로 연결을 시도하고 데이터를 전송하게 만들 수 있습니다. 이 취약점은 Jakarta EE 통합 모듈을 사용하는 Apache Shiro 2.x 버전부터 3.0.0 버전까지 영향을 미칩니다.
💡 쉬운 설명
해커가 특수한 요청을 보내면 서버가 해커의 컴퓨터로 몰래 접속하여 정보를 보내게 만드는 보안 약점입니다. 낮은 권한을 가진 사용자라도 서버를 조종하여 외부로 데이터를 유출시킬 수 있습니다.
🇺🇸 원문 (English)
When Apache Shiro is used with the Jakarta EE integration module, a low-privileged user can craft an HTTP request that causes the server to initiate a connection to an attacker-controlled URL and transmit attacker-controlled data. This vulnerability affects Apache Shiro versions 2.x through 3.0.0 only in deployments that use the Jakarta EE integration module.
Mitigation: Upgrade to version 3.0.1 or later, which fixes the issue. +
Alternatively, you can set the `org.apache.shiro.form-resubmit-host` (String) and `org.apache.shiro.form-resubmit-port` (Integer) system properties to restrict the host and port that Shiro will connect to when resubmitting a form.
📍 영향받는 시스템
Apache Shiro 2.x ~ 3.0.0 (Jakarta EE 통합 모듈 사용 시)
⚔️ 공격 벡터
조작된 HTTP 요청을 통한 서버 측 요청 위조(SSRF) 및 데이터 유출
🛡️ 대응 방법
Apache Shiro 3.0.1 이상으로 업그레이드하거나 시스템 속성(host, port) 설정을 통해 접속 범위를 제한하십시오.
🔧 검증 코드
프로젝트 설정 파일에서 Shiro 버전을 확인하여 취약한 버전 범위(2.x ~ 3.0.0)에 해당하는지 체크합니다.
grep -r "shiro" /path/to/your/project/pom.xml 2>/dev/null | grep -E '2\.|3\.0\.0'