Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2017-5638 — Apache Struts 2.0 RCE 취약점 - 공격자가 content-type 헤더를 통해 웹 애플리케이션에 OS 명령어를 주입할 수 있습니다. | Kitploit
도구/GitHubGitHub/payatu/cve-2017-5638
ReconnaissanceVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingCommand and Control
GitHubpayatu/cve-2017-5638

CVE-2017-5638

Apache Struts 2.0 RCE 취약점 - 공격자가 content-type 헤더를 통해 웹 애플리케이션에 OS 명령어를 주입할 수 있습니다.

저장소 보기
85139년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2017-5638

Apache Struts 2.0 RCE 취약점

이 스크립트는 CVE-2017-5638을 악용하는 스크립트입니다. 공격자가 content-type 헤더를 통해 OS 명령을 웹 애플리케이션에 주입할 수 있게 합니다. Apache Struts 2는 Java EE 웹 애플리케이션 개발을 위한 오픈 소스 웹 애플리케이션 프레임워크입니다. Java Servlet API를 사용하고 확장하여 개발자들이 모델-뷰-컨트롤러(MVC) 아키텍처를 채택하도록 장려합니다.

2017년 3월 마지막 주에 "Nike Zheng"이라는 이름으로 활동하는 Apache Struts 해커가 공개 개념 증명 익스플로잇을 게시하여 Apache Struts 2 취약 서버에서 얼마나 쉽게 원격으로 운영 체제 명령을 실행할 수 있는지 보여주었습니다.

해당 취약점, CVE-2017-5638 - https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-5638, 은 HTTP 요청에서 특수하게 조작된 Content-Type 값을 통해 인증되지 않은 원격 코드 실행(RCE)을 허용합니다. 공격자는 Content-Type에 대해 유효하지 않은 값을 생성하여 취약한 소프트웨어가 예외를 발생시키도록 할 수 있습니다. 소프트웨어가 오류 메시지를 표시하기 위해 준비할 때, Apache Struts Jakarta Multipart 파서의 결함으로 인해 악성 Content-Type 값이 표시되는 대신 실행됩니다.

이 공개 익스플로잇이 공개된 이후, 취약한 Apache 서버를 찾는 대량의 스캔이 관찰되었습니다. 익스플로잇이 매우 쉽게 실행될 수 있기 때문에 누구나 취약한 머신을 원격으로 아주 쉽게 악용할 수 있습니다. 따라서 대량의 스캔에 이은 빈번한 익스플로잇이 보고되었습니다.

저희 고객 중 한 분이 모든 IP를 스캔해 달라고 요청했습니다. 고객사는 취약한 Apache Struts 2 프레임워크를 대부분 사용하고 있었고, 어떤 IP(웹 서버)가 취약한 Apache 프레임워크를 실행 중인지 정확한 기록이 없었습니다. 테스트해야 할 IP는 거의 천 개에 가까웠습니다. 고객은 Linux 서버인지 Windows 서버인지에 대한 정보와 함께 모든 취약한 도메인을 제출하도록 요구했습니다. 각 IP를 개별적으로 스캔하는 지루한 작업을 피하기 위해 작은 스크립트를 작성했습니다.

스크립트는 다음 기능/작업을 결합합니다:

  1. 도메인 목록이 포함된 파일에서 취약한 도메인 이름을 하나씩 읽습니다.
  2. 취약한 서버를 확인하기 위해 공식 익스플로잇을 사용합니다.
  3. 익스플로잇을 실행하고 Windows 서버인지 Linux 서버인지 확인합니다.
도구 다운로드