7장. 확인된 문제


다음 하위 섹션에서는 버전 7.10의 알려진 문제에 대해 설명합니다.

7.1. CVE 보안 취약점

미들웨어 통합 플랫폼인 Fuse는 다수의 타사 구성 요소와 잠재적으로 통합될 수 있습니다. Fuse의 일부 타사 종속 항목에 보안 취약점이 있을 수 있는 가능성을 항상 제외할 수 있는 것은 아닙니다. 이 섹션에서는 Fuse 7.10의 타사 종속 항목에 영향을 미치는 보안과 관련된 일반적인 취약점 및 노출 (CVE)에 대해 설명합니다.

CVE-2020-13936 CVE-2020-13936 속도: 공격자가 템플릿을 수정할 수 있는 경우 임의의 코드 실행 속도

Velocity 템플릿을 수정할 수 있는 공격자는 임의의 Java 코드를 실행하거나 Servlet 컨테이너를 실행하는 계정과 동일한 권한으로 임의의 시스템 명령을 실행할 수 있습니다. 이는 신뢰할 수 없는 사용자가 Apache Velocity Engine 버전을 실행하는 속도 템플릿을 2.2까지 업로드/수정할 수 있는 애플리케이션에 적용됩니다.

Fuse 7.9 이상은 이 보안 취약점으로부터 보호하기 위해 수정된 Velocity 버전(즉, 버전 2.3)만 사용하도록 종속성을 수정했습니다. 애플리케이션 코드에 Apache Velocity 구성 요소에 대한 명시적인 종속성이 있는 경우 이러한 종속성을 업그레이드하여 고정 버전을 사용하는 것이 좋습니다.

ENT Cryostat-8113 CVE-2018-10237 guava: Atomic CryostatArray 및 CompoundOrdering 클래스의 바인딩되지 않은 메모리 할당을 통해 원격 공격자가 서비스 거부를 일으킬 수 있습니다 [fuse-7.0.0]

Google Guava 버전 11.0~24.1은 Atomic CryostatArray 클래스(Java serialization로 직렬화된 경우) 및 CompoundOrdering 클래스(GWT 직렬화로 직렬화된 경우)의 바인딩되지 않은 메모리 할당에 취약합니다. 공격자는 Guava를 사용하고 신뢰할 수 없는 데이터를 역직렬화하여 서비스 거부를 유발하는 애플리케이션을 악용할 수 있습니다. 자세한 내용은 CVE-2018-10237 을 참조하십시오.

이 보안 취약점을 방지하려면 다음을 권장합니다.

  • Atomic CryostatArray 인스턴스 또는 알 수 없는 소스에서 CompoundOrdering 인스턴스를 역직렬화하지 마십시오.
  • Guava 버전 24 및 이전 버전을 사용하지 마십시오 (일부 경우에는 이전 버전을 피할 수 없습니다).

Guava, Fuse 7.7 이상에서는 이전 버전(vulnerable) 버전을 방지하기 위해 모든 컨테이너가 기본적으로 Guava 27을 선택하도록 Maven bill of materials (BOM) 파일을 구성했습니다. 즉, Fuse BOM을 Maven 프로젝트에 통합하는 경우(POM 파일의 종속성 Management 섹션에 BOM에 대한 종속성 을 추가) 명시적 버전을 지정하지 않고 Guava 아티팩트에 대한 종속성을 지정하면 Guava 버전이 BOM에 지정된 버전으로 기본 설정됩니다. 이 버전은 Fuse 7.7 BOM의 버전 27입니다.

그러나 하나 이상의 일반적인 사용 사례는 Apache Karaf (OSGi) 컨테이너를 포함하는데, 여기서 Guava ( Guava)의 취약한 버전을 사용하지 않는 것은 불가능합니다: OSGi 애플리케이션이 Guava와 Swagger를 함께 사용하는 경우, Swagger에 필요한 버전이기 때문에 Guava 20을 사용해야 합니다. 여기서 우리는 왜 이것이고 이전 (vulnerable) Guava 20 라이브러리를 되돌리도록 POM 파일을 구성하는 방법을 설명합니다. 먼저 이중 OSGi 체인 의 개념을 이해해야합니다.

이중 OSGi 체인

OSGi 런타임의 번들은 패키지 제약 조건(패키지 이름 + 선택적 버전/범위) Cryostat- Cryostatimports 및 export를 사용하여 함께 연결됩니다. 각 번들에는 여러 개의 가져오기가 있을 수 있으며 일반적으로 해당 번들에는 여러 번 번들이 지정된 번들이 있습니다. 예를 들면 다음과 같습니다.

BundleA
+-- BundleB
|   +-- BundleCa
+-- BundleCb
Copy to Clipboard Toggle word wrap

BundleABundleBBundleCb 에 따라 다르며 BundleBBundleCa 에 따라 다릅니다. BundleCaBundleCb 는 동일한 패키지를 내보내는 경우 번들과 동일하지만 버전(범위) 제약으로 인해 BundleBBundleA 와 다른 BundleC 버전을 사용합니다.

애플리케이션에 Guava 및 Swagger에 대한 종속성을 포함할 때 발생하는 상황을 반영하기 위해 이전 다이어그램을 다시 작성합니다.

org.jboss.qe.cxf.rs.swagger-deployment
+-- Guava 27
+-- Swagger 1.5
    +-- reflections 0.9.11
        +-- Guava 20
Copy to Clipboard Toggle word wrap

이 번들 구성을 배포하려고 하면 org.osgi.framework.BundleException: 제약 조건 위반을 사용합니다.

Guava 20으로 되돌리기

프로젝트에서 Guava 및 Swagger 라이브러리(직접 또는 간접적으로)를 모두 사용하는 경우 다음과 같이 Guava 번들 가져오기에 대해 명시적 버전 범위(또는 전혀 범위 없음)를 사용하도록 maven-bundle-plugin 을 구성해야 합니다.

<Import-Package>
    com.google.common.base;version="[20.0,21.0)",
    com.google.common.collect;version="[20.0,21.0)",
    com.google.common.io;version="[20.0,21.0)"
</Import-Package>
Copy to Clipboard Toggle word wrap

이 구성을 사용하면 OSGi 애플리케이션이 Guava 20 라이브러리로 되돌아갑니다. 따라서 이 경우 Atomic CryostatArray 인스턴스를 역직렬화하는 것을 방지하는 것이 특히 중요합니다.

CVE-2017-12629 bler/Lucene -security bypass to access sensitive data -CVE-2017-12629

Apache Performr는 Apache Lucene 검색 엔진을 사용하는 널리 사용되는 오픈 소스 검색 플랫폼입니다. 애플리케이션이 Apache Lucene과 함께 Apachesriovr를 사용하는 경우(예: Camel achievedr 구성 요소를 사용하는 경우) 이 보안 취약점의 영향을 받을 수 있습니다. 이 취약점에 대한 자세한 내용과 수행할 완화 단계를 보려면 연결된 보안 권고를 참조하십시오.

참고

Fuse 런타임에서는 Apache achievedr 또는 Apache Lucene을 직접 사용하지 않습니다. 보안 위험은 통합 애플리케이션 컨텍스트에서 Apache achievedr 및 Apache Lucene을 함께 사용하는 경우(예: Camel Quarkusr 구성 요소를 사용하는 경우)만 발생합니다.

CVE-2021-30129 mina-sshd-core: Apache Mina SSHD Server의 메모리 누출 서비스 거부

Apache Mina SSHD의 sshd-core의 취약점으로 인해 공격자가 서버를 오버플로하여 OutOfMemory 오류가 발생할 수 있습니다. 이 문제는 Apache Mina SSHD 버전 2.0.0 이상 버전의 SFTP 및 포트 전달 기능에 영향을 미칩니다. Apache Mina SSHD 2.7.0에서 해결되었습니다.

Apache Mina SSHD의 이 취약점은 이 취약점이 있는 특정 암호화 알고리즘을 사용 중단하는 SSHD-1004 에 의해 해결되었습니다. JBoss EAP의 Karaf 및 Fuse 7.10의 Fuse 7.10에서는 더 이상 사용되지 않는 알고리즘은 계속 지원됩니다(이전 버전과의 호환성을 위해). 그러나 더 이상 사용되지 않는 알고리즘 중 하나를 사용하는 경우 대신 다른 알고리즘을 사용하도록 애플리케이션 코드를 리팩터링하는 것이 좋습니다.

Fuse 7.10에서는 기본 암호화 알고리즘이 다음과 같이 변경되었습니다.

Expand
Fuse 7.9Fuse 7.10Fuse 7.10에서 더 이상 사용되지 않음

aes128-ctr

aes128-ctr

 
 

aes192-ctr

 
 

aes256-ctr

 
 

aes128-gcm@openssh.com

 
 

aes256-gcm@openssh.com

 

arcfour128

arcfour128

제공됨

aes128-cbc

aes128-cbc

 
 

aes192-cbc

 
 

aes256-cbc

 

3des-cbc

3des-cbc

제공됨

blowfish-cbc

blowfish-cbc

제공됨

Fuse 7.10에서는 기본 키 교환 알고리즘이 다음과 같이 변경되었습니다.

Expand
Fuse 7.9Fuse 7.107.10에서 더 이상 사용되지 않음

diffie-hellman-group-exchange-sha256

diffie-hellman-group-exchange-sha256

 

ecdh-sha2-nistp521

ecdh-sha2-nistp521

 

ecdh-sha2-nistp384

ecdh-sha2-nistp384

 

ecdh-sha2-nistp256

ecdh-sha2-nistp256

 
 

diffie-hellman-group18-sha512

 
 

diffie-hellman-group17-sha512

 
 

diffie-hellman-group16-sha512

 
 

diffie-hellman-group15-sha512

 
 

diffie-hellman-group14-sha256

 

diffie-hellman-group-exchange-sha1

diffie-hellman-group-exchange-sha1

제공됨

diffie-hellman-group1-sha1

diffie-hellman-group1-sha1

제공됨

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat