최근 OpenJDK 8에서 서비스 거부, 정보 유출, 임의 코드 실행, 심지어 Java 샌드박스 제한 우회로 이어질 수 있는 몇 가지 취약점이 발견되었습니다. Java 배포판을 평가하는 조직의 경우 업데이트 또는 마이그레이션을 계획할 때 OpenJDK와 OracleJDK의 차이점을 이해하는 것이 중요합니다. 이에 따라 Canonical은 영향을 받는 우분투 릴리스에서 OpenJDK 21, OpenJDK 17, OpenJDK 11, OpenJDK 8 등 여러 버전의 OpenJDK에 대한 보안 수정을 발표했습니다.
이 문서에서는 이러한 취약점에 대한 자세한 내용을 살펴보고 Linux 시스템 보안을 위한 지침을 제공합니다.
OpenJDK 8 취약점 수정
21131
이 취약점은 특정 UTF-8 문자열을 처리할 때 바운드를 부적절하게 처리하는 것으로 발견된 핫스팟 구성 요소와 관련된 취약점입니다. 이 결함으로 인해 버퍼 오버플로가 발생할 수 있으며, 공격자가 영향을 받는 시스템에서 서비스 거부를 유발하거나 임의의 코드를 실행할 수 있습니다.
21138
핫스팟 구성 요소의 또 다른 취약점은 무한 루프를 트리거할 수 있다는 점입니다. 자동화된 시스템이 지나치게 큰 심볼을 처리하도록 속이면 시스템이 연속 루프에 진입하여 서비스 거부를 일으킬 수 있습니다.
21140
핫스팟 구성 요소에는 부적절한 범위 확인 제거와 관련된 결함도 포함되어 있습니다. 이 취약점으로 인해 공격자는 서비스 거부를 일으키거나 임의의 코드를 실행하거나 Java 샌드박스 제한을 우회할 수 있습니다.
CVE-2024021144
OpenJDK의 Concurrency 구성 요소가 Pack200 아카이브 형식에서 헤더 유효성 검사를 잘못 수행하는 것으로 발견되었습니다. 공격자가 이 취약점을 악용하여 서비스 거부를 일으킬 수 있습니다.
21145
세르게리 바이로코프는 2D 이미지를 처리할 때 부적절한 메모리 관리와 관련된 OpenJDK의 취약점을 발견했습니다. 이 결함으로 인해 공격자는 시스템에서 민감한 정보를 얻을 수 있습니다.
21147
핫스팟 구성 요소의 범위 확인 제거와 관련된 또 다른 문제도 발견되었습니다. 이 취약점은 CVE-2024-21140과 유사하게 공격자가 서비스 거부를 유발하거나 임의의 코드를 실행하거나 Java 샌드박스 제한을 우회할 수 있습니다.
Ubuntu 시스템 보안
이러한 취약점을 해결하려면 시스템을 최신 버전의 OpenJDK 8 패키지로 업데이트하는 것이 필수적입니다. Canonical은 다음을 포함한 다양한 Ubuntu 릴리스에 대한 보안을 제공해 왔습니다:
- 우분투 24.04 LTS
- 우분투 22.04 LTS
- 우분투 20.04 LTS
- 우분투 18.04 ESM
지원 수명이 다한 Ubuntu 18.04를 실행하는 시스템의 경우, 보안 수정은 Ubuntu Pro를 구독하는 ESM(확장 보안 유지 관리)을 통해서만 사용할 수 있습니다. 그러나 많은 비용을 들이지 않고 Ubuntu 18.04 시스템의 보안 수명을 연장하고자 하는 조직을 위한 대안이 있습니다.
TuxCare의 Ubuntu 18.04용 확장 수명 주기 지원(ELS)은 최대 5년 동안 벤더급 보안 패치를 추가로 제공함으로써 더욱 경제적인 솔루션을 제시합니다. 이 서비스는 리눅스 커널, OpenJDK, Apache, PHP, glibc, OpenSSL, OpenSSH, Python 패키지 등을 포함해 140개 이상의 패키지를 지원합니다. ELS를 이용하면 운영 체제의 보안을 유지하면서 안전한 마이그레이션을 계획할 수 있는 충분한 시간을 확보할 수 있습니다.
Source: 1

