
Apache Struts2 S2-045 (CVE-2017-5638) 원격 코드 실행 취약점에 대한 개념 증명 익스플로잇 - 악의적인 Content-Type 헤더를 통한.
#CNVD-ID CNVD-2017-02474 발표일 2017-03-07 위험 수준 높음 (AV:N/AC:L/Au:N/C:C/I:C/A:C) 영향 제품 Apache struts >=2.3.5,<=2.3.31 Apache struts >=2.5,<=2.5.10 CVE ID CVE-2017-5638 취약점 설명 Apache Struts는 엔터프라이즈급 Java 웹 애플리케이션을 생성하기 위한 오픈소스 프레임워크입니다. Apache Struts2에는 S2-045 원격 코드 실행 취약점이 존재합니다. 원격 공격자는 이 취약점을 이용하여 웹 서버의 제어권을 직접 획득할 수 있습니다.
#취약점 유형 일반 소프트웨어/하드웨어 취약점
#URL 참조 링크 https://cwiki.apache.org/confluence/display/WW/S2-045 취약점 해결 방안 Apache Struts 공식 사이트는 출시된 새 버전에서 이 취약점을 수정했습니다. Jakarta Multipart parser 모듈을 사용하는 사용자는 Apache Struts 버전 2.3.32 또는 2.5.10.1로 업그레이드하는 것이 좋습니다: #https://cwiki.apache.org/confluence/display/WW/S2-045
#요약 Jakarta Multipart parser를 기반으로 파일 업로드 시 원격 코드 실행 가능. 이 내용을 읽어야 할 대상 모든 Struts 2 개발자 및 사용자 취약점의 영향 Jakarta Multipart parser 기반 파일 업로드 시 RCE 가능 최대 보안 등급 높음 권장 사항 Struts 2.3.32 또는 Struts 2.5.10.1로 업그레이드 영향받는 소프트웨어: Struts 2.3.5 - Struts 2.3.31, Struts 2.5 - Struts 2.5.10 보고자 Nike Zheng dot zheng at dbappsecurity dot com dot cn> CVE 식별자 CVE-2017-5638 문제 악의적인 Content-Type 값을 사용하여 RCE 공격을 수행할 수 있습니다. Content-Type 값이 유효하지 않으면 예외가 발생하며, 이를 사용하여 사용자에게 오류 메시지를 표시합니다. 해결책 Jakarta 기반 파일 업로드 Multipart parser를 사용하는 경우 Apache Struts 버전 2.3.32 또는 2.5.10.1로 업그레이드하십시오. 또한 Multipart parser의 다른 구현으로 전환할 수도 있습니다. 하위 호환성 하위 호환성 문제는 예상되지 않습니다. 대체 방법 Content-Type을 검증하고 multipart/form-data와 일치하지 않는 의심스러운 값이 있는 요청을 폐기하는 Servlet 필터를 구현합니다.