🇰🇷 한글 설명
Spring Cloud Gateway Server Webflux의 특정 버전에서 환경 변수와 시스템 속성이 공격자에게 노출될 수 있는 취약점이 발견되었습니다. 관리자나 신뢰할 수 없는 제3자가 SpEL을 사용하여 라우트를 통해 민감한 정보에 접근할 수 있는 환경에서 발생합니다.
💡 쉬운 설명
해커가 웹 서비스의 설정값이나 비밀번호 같은 중요한 정보를 몰래 훔쳐볼 수 있는 보안 구멍이 발견되었습니다. 특정 설정이 켜져 있고 보안이 취약할 때 발생할 수 있습니다.
🇺🇸 원문 (English)
The following versions of Spring Cloud Gateway Server Webflux may be vulnerable to the ability to expose environment variables and system properties to attackers.
An application should be considered vulnerable when all the following are true:
* The application is using Spring Cloud Gateway Server Webflux (Spring Cloud Gateway Server WebMVC is not vulnerable).
* An admin or untrusted third party using Spring Expression Language (SpEL) to access environment variables or system properties via routes.
* An untrusted third party could create a route that uses SpEL to access environment variables or system properties if: * The Spring Cloud Gateway Server Webflux actuator web endpoint is enabled via management.endpoints.web.exposure.include=gateway and management.endpoint.gateway.enabled=trueor management.endpoint.gateway.access=unrestricte.
* The actuator endpoints are available to attackers.
* The actuator endpoints are unsecured.
📍 영향받는 시스템
Spring Cloud Gateway Server Webflux (WebMVC 버전은 해당 없음)
⚔️ 공격 벡터
노출된 Actuator 엔드포인트를 통해 SpEL을 포함한 악의적인 라우트를 생성하여 환경 변수 탈취
🛡️ 대응 방법
Actuator 엔드포인트의 접근 권한을 제한하거나, 불필요한 gateway 엔드포인트 노출을 차단하십시오.
🔧 검증 코드
명령어 결과에 'gateway'가 포함되어 있고 접근 제한 설정이 없다면 취약할 가능성이 높습니다.
curl -s http://localhost:8080/actuator/gateway | grep -E 'management.endpoints.web.exposure.include'