commons-collections 라이브러리에 대한 일렬화/역직렬화 악용은 Red Hat JBoss 제품에 영향을 미칩니까? (CVE-2015-7501 )
Environment
- Red Hat JBoss A-MQ 6.x
- Red Hat JBoss BPM Suite (BPMS) 6.x
- Red Hat JBoss BRMS 6.x
- Red Hat JBoss BRMS 5.x
- Red Hat JBoss Data Grid (JDG) 6.x
- Red Hat JBoss Data Virtualization (JDV) 6.x
- Red Hat JBoss Data Virtualization (JDV) 5.x
- Red Hat JBoss Enterprise Application Platform 6.x
- Red Hat JBoss Enterprise Application Platform 5.x
- Red Hat JBoss Enterprise Application Platform 4.3.x
- Red Hat JBoss Fuse 6.x
- Red Hat JBoss Fuse Service Works (FSW) 6.x
- Red Hat JBoss Operations Network (JBoss ON) 3.x
- Red Hat JBoss Portal 6.x
- Red Hat JBoss SOA Platform (SOA-P) 5.x
- Red Hat JBoss Web Server (JWS) 3.x
Issue
-
JMXInvokerServlet
인터페이스에 영향을 미치는 Java 객체 직렬화에 대한 문제가 보고되었습니다:
http://foxglovesecurity.com/2015/11/06/what-do-weblogic-websphere-jboss-jenkins-opennms-and-your-application-have-in-common-this-vulnerability/ -
JMXInvokerServlet
에 액세스할 수 있는 인증되지 않은 공격자가 JBoss 서버를 실행하고 있는 사용자의 컨텍스트에서 임의의 코드를 실행할 수 있습니까? - 보안팀으로 부터 제로 데이 (Zero-Day) 취약점에 대한 경고를 받았습니다. RedHat은 이러한 취약점에 대해 인지하고 있으며 문제 해결을 위해 작업하고 있습니까? 작업하고 있다면 해결 방법은 언제쯤 릴리즈될 예정입니까?
-
commons-collections 라이브러리에 원격 코드 실행 취약점이 있습니까?
-
CVE-2015-7501 또는 CVE-2015-4852는 JBoss Middleware 제품에 영항을 미칩니까?
Resolution
환경 부분에 나열된 모든 제품은 취약점을 갖습니다. Red Hat은 이러한 문제를 해결하기 위해 수정 작업을 하고 있으며 가능한 빨리 에라타 및 패치를 릴리즈할 예정입니다. 현재 상태 및 관련된 모든 문제에 대한 내용은 Apache commons-collections: Remote code execution during deserialisation에서 참조하십시오.
임시적으로 이러한 역직렬화 취약점을 해결하기 위한 가장 신속한 방법은 모든 commons-collections jar 파일에서 취약점이 있는 클래스 파일 (InvokerTransformer
, InstantiateFactory
, InstantiateTransformer
)을 삭제하는 것입니다. 다만 이러한 수동 변경으로 예상치 못한 복잡한 문제가 발생하지 않도록 테스트해야 합니다.
애플리케이션에 commons-collection 라이브러리를 패키지화한 경우 향후 패치를 적용한 후에도 여전히 취약점이 있을 수 있습니다. 패키지화한 경우 commons-collections 라이브러리를 변경해야 합니다.
본 이슈는 JBoss Middleware 제품군에 영향을 미치는 것으로 CVE-2015-7501로 참조되어 있습니다. 다른 벤더의 경우 CVE-2015-4852로 참조되어 있습니다.
Root Cause
본 이슈는 여러 부분의 결함의 조합으로써 악용을 위해 여러 조건이 필요합니다. 공격자로부터의 원격 코드 실행 (RCE: Remote-Code Execution)이 성공하려면 다음과 같은 조건이 충족되어야 합니다:
- 신뢰할 수 없는 직렬화된 데이터 허용
- 데이터의 블라인드 역직렬화 허용
- 취약점을 갖는 클래스는 클래스 경로에 사용할 수 있어야 함
JMXInvokerServlet에 대한 보다 자세한 내용은 다음 문서에서 참조하십시오.
고객은 시스템 보안을 위해 "심층 방어 (defense-in-depth)" 접근 방식을 취하는 것이 좋습니다. Red Hat 제품 보안팀은 이러한 취약점 및 역직렬화 취약점 클래스와 관련하여 제품에 대한 최선의 방법을 모색하고 있습니다.
Java 역직렬화 문제에 대한 보다 자세한 내용은 Red Hat Security 블로그에서 참조하십시오. 차후 이러한 내용을 다루는 블로그를 더 많이 소개할 예정입니다.
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments