2023년 4월 패치 화요일(Patch Tuesday)에 대한 Akamai의 관점
누구에게도 속지 마세요. PT의 진짜 의미는 패치 화요일(Patch Tuesday)입니다. Akamai Security Intelligence Group은 이번 달에도 패치가 완료된 흥미로운 취약점을 조사했습니다.
이번 달에 약 100개의 CVE가 패치되었으며, 이 중 7개는 주요 패치이며, 2개는 CVSS 점수가 9.8로 높습니다. 패치된 CVE 중 1개는 실제로 사용됐으며, 패치된 제로데이 취약점으로 지정됐습니다.
이 보고서에서는 취약점의 심각성과 애플리케이션과 서비스에 대한 일반적인 영향을 평가하고 수정된 버그에 대한 현실적인 관점을 제공합니다. 패치 화요일이 발표될 때마다 며칠 내로 보고서를 발표합니다. 패치 당일에 Twitter 계정에서 간단한 실시간 개요 자료도 확인할 수 있습니다.
최신 보고서이며 연구가 진행됨에 따라 업데이트합니다. 계속 관심 가져주시기 바랍니다.
이 보고서에서는 버그가 패치된 다음 부문을 집중적으로 소개합니다.
실제 악용된 취약점
공용 로그 파일 시스템 - CVE-2023-28252
Windows CLFS(공용 로그 파일 시스템) 드라이버의 로컬 권한 상승 취약점이 Nokoyawa 랜섬웨어 공격에서 제로데이로 사용되었습니다( Kaspersky의 자료 참조). 해당 업데이트에서는 이 취약점의 근본 원인과 영향을 설명합니다. 이 취약점으로 인해 범위를 벗어난 쓰기 작업이 발생하며, 이는 결국 자유 커널 메모리 읽기/쓰기 원시 요소로 이어집니다. Windows Server 2003 R2 이후로 Windows에서 CLFS를 사용할 수 있으므로 이 취약점은 큰 영향을 미칩니다. 가능한 한 빨리 시스템을 패치하는 것이 좋습니다.
Microsoft Message Queuing
MSMQ(Microsoft Message Queuing) 서비스에는 세 가지 취약점이 있었습니다. 하나는 치명적인 9.8 RCE(원격 코드 실행) 취약점이고, 나머지 두 개는 서비스 거부 취약점입니다. 이 세 가지 취약점은 모두 CPR(Check Point Research)의 Haifei Li가 발견한 것으로, Haifei Li는 취약점에 대한 양질의 게시글 을 기고한 연구원입니다.
MSMQ 서비스는 Windows의 선택 기능으로, 여러 애플리케이션 간에 메시지를 전달하는 데 사용됩니다. 이 서비스는 선택 기능임에도 불구하고, Microsoft Exchange Server 같은 다양한 Windows용 엔터프라이즈 애플리케이션의 백그라운드에서 사용되고 있습니다. 관측 결과에 따르면, 이 서비스는 작업 환경의 약 50%에 설치되어 있으며 보통 두 대 이상의 머신에 설치된 것으로 나타났습니다.
RCE 취약점은 쉽게 트리거되므로(CPR에 따르면 단일 패킷만 있으면 됨), 최대한 빨리 패치를 적용하는 것이 좋습니다. 운영 연속성 또는 기타 이유로 인해 패치 적용이 불가능한 경우, 네트워크 세그멘테이션 정책을 사용하여 적어도 서비스에 대한 접속을 제한하는 것이 좋습니다. MSMQ 서비스는 포트 1801을 통해 접속할 수 있지만, 많은 클라이언트가 접속하지 않아야 하므로 (주로 엔터프라이즈 애플리케이션 자체에서 사용되기 때문에), 해당 포트 및 서비스에 대한 임의의 네트워크 접속을 제한하는 것을 권장합니다.. allowlist 정책을 사용하여 세그멘테이션을 실행하면 실제로 필요한 머신에만 접속을 허용할 수 있습니다.
CVE 번호 |
영향 |
필요한 접속 권한 |
---|---|---|
서비스 거부 |
네트워크 |
|
원격 코드 실행 |
네트워크 |
Windows Pragmatic General Multicast
PGM(Pragmatic General Multicast)은 신뢰할 수 있는 방식으로 여러 네트워크 구성원 간에 패킷을 전달하도록 설계된 프로토콜입니다. Windows에서 이 프로토콜을 구현하는 걸 신뢰할 수 있는 멀티캐스트라고 합니다. 이 패치 화요일에서는 CVSS 점수가 9.8인 치명적인 RCE 취약점 CVE-2023-28250을 해결했습니다.
관측 결과에 따르면, 작업 환경 중 40%에서 신뢰할 수 있는 멀티캐스트가 활성화된 것으로 나타났습니다. 대부분의 데이터 센터에서 이 기능이 활성화된 머신은 거의 없었지만, 여러 서버에서 PGM을 실행 중인 환경을 발견했습니다.
Windows Server 2003 이후로 PGM은 Windows 소켓을 사용합니다. 사용자 공간에서 이는 wshrm.dll 이라는 라이브러리에 구축됩니다. wshrm.dll은 PGM용 Windows 소켓 도우미 DLL을 뜻하며, 여기서 rm 은 원격 멀티캐스트를 나타냅니다. 커널 공간에서 PGM은 driver rmcast.sys를 통해 구현됩니다.
이번 패치에서는 호출 시 memset( DecodeParityPackets함수에 포함) 함수에 크기 검증을 추가했습니다. 문제 해결 전에는 원격 공격자가 특수하게 조작된 패킷을 전송해 정수 오버플로를 유발할 수 있었습니다. 이는 나중에 코드 실행으로 이어집니다. 명시적으로 언급되지는 않았지만, 이 취약점의 점수가 높았던 이유는 가능한 가장 높은 권한을 사용해 커널 모드에서 코드 실행이 이루어지기 때문인 것으로 유추해볼 수 있습니다.
다른 CVE에 대한 이전 보안 공지에 게시된 Microsoft 의 설명에 따르면, “취약한 시스템에 MSMQ(Message Queuing)를 설치하고 Windows PGM(Pragmatic General Multicast) 프로토콜을 활성화해야 합니다”(그림 1). 즉, PGM을 작동하려면 Message Queuing이 있어야 하므로 이전 섹션의 권장 사항이 여기에도 적용됩니다. 이는 Microsoft가 이번 달 CVE에 대해 게시한 방어 조치 및 FAQ의 내용과 한층 더 연관성이 높습니다.
CVE 번호 |
영향 |
필요한 접속 권한 |
---|---|---|
원격 코드 실행 |
네트워크 |
DHCP 서버 서비스
DHCP 프로토콜은 네트워크 트래픽 및 주소(IP 주소 할당, 기본 게이트웨이, DNS 서버 설정 등)를 관리하는 데 사용됩니다. Windows에는 Windows Server 설치에 추가 역할로 설치할 수 있는 DHCP 서버가 자체적으로 구축되어 있습니다. 관측 결과에 따르면, 약 40%의 작업 환경에 DHCP 서버 서비스가 있는 것으로 확인되었습니다.
이번에는 RCE를 실현하는 데 사용할 수 있는 DHCP 서버에서 치명적인 취약점이 발견되었습니다. DHCP는 전체 LAN 운영의 매우 중요한 요소이므로, 세그멘테이션을 통해 취약점 리스크를 방어하기가 어려울 수 있습니다. 서비스가 전체 네트워크에 개방되어야 하기 때문입니다. 그러나 마이크로세그멘테이션을 사용하면 소규모 소스 프로세스에서만 DHCP 서비스에 대한 네트워크 접속을 허용할 수 있습니다. 소스 프로세스 가시성을 갖춘 네트워크 모니터링 기능을 보유한 경우, 네트워크의 모든 고유한 DHCP 클라이언트를 매핑하고 해당 프로세스에만 접속하도록 제한할 수 있습니다. 그렇지 않다면 반드시 서버에 패치를 적용해야 합니다.
관측한 결과에 따르면 DHCP 서버에 접속하는 고유한 프로세스는 14개뿐이었습니다. 그리고 그 중 하나는 nmap이므로, 정확히는 13개입니다.
CVE 번호 |
영향 |
필요한 접속 권한 |
---|---|---|
원격 코드 실행 |
로컬 네트워크 |
Netlogon Remote Protocol
Netlogon Remote Protocol 은 Windows 도메인 환경에서 사용자와 머신 인증에 사용하는 프로토콜입니다. 도메인 컨트롤러 간의 동기화에도 사용합니다. 따라서 Windows 도메인 네트워크에서 필수적이기 때문에 CVE-2023-28268 은 대부분의 환경에 영향을 미칠 수 있습니다.
이는 2022년 11월의 권고 사항:CVE-2022-38023에서 다루었던 이전 취약점과 유사합니다. 두 취약점 모두 MITM(Machine-In-The-Middle) 공격을 사용하는 공격자, 그리고 RPC 봉인 대신 RPC 서명을 사용하는 공격자와 관련이 있습니다.
RPC 봉인을 적용하기 위해 Microsoft는 RequireSeal 레지스트리 키를 도입했습니다. 이전 권고 사항에 따르면, 이 레지스트리는 비활성화할 수 없으며 호환성 또는 적용 모드에서만 사용할 수 있습니다.
CVE 번호 |
영향 |
필요한 접속 권한 |
---|---|---|
권한 상승 |
네트워크, MITM |
Windows 원격 프로시저 호출
이번 달에는 RPC(원격 프로시저 호출, RPCSS CVE도 포함)와 관련된 세 가지 취약점이 발견되었습니다. RCE 취약점은 API 및 RPC 프로토콜 구현을 제공하는 RPC 런타임에 존재합니다. 이는 DLL rpcrt4.dll에서 구현됩니다. 다른 상대 쪽에 있는 RPCSS(원격 프로시저 호출 서비스)는 그 자체가 RPC 서버이며, DCOM 을 담당합니다. 즉, 네트워크를 통해 COM 클래스 및 오브젝트에 접속할 수 있도록 하는 역할을 합니다.
그리고 rpcrt4.dll 과 rpcss.dll 둘 다 Windows의 정상적인 작동에 매우 중요하며, 게다가 rpcrt4.dll 은 RPC를 사용하는 모든 프로세스에 로딩됩니다. 따라서 패치를 적용하지 않는 방식으로 리스크를 방어하는 건 불가능합니다.
CVE 번호 |
영향 |
필요한 접속 권한 |
---|---|---|
원격 코드 실행 |
네트워크, 인증 필요 |
|
권한 상승 |
||
정보 유출 |
이전에 다루었던 서비스
이번 달 패치 화요일(Patch Tuesday)의 많은 CVE는 과거에 이미 다루었던 시스템에 대한 것입니다. 이런 서비스에 대한 분석 또는 일반적인 권장 사항에 관심이 있는 경우, 이전 게시물을 확인해 보시기 바랍니다.
서비스 |
CVE 번호 |
영향 |
필요한 접속 권한 |
---|---|---|---|
원격 코드 실행 |
네트워크 접속, 경쟁 조건을 달성해야 함 |
||
원격 코드 실행 |
네트워크 |
||
스푸핑 |
페이지 생성 권한으로 인증 |
||
스푸핑 |
XSS 공격, 공격자가 인증을 받아야 함 |
||
원격 코드 실행 |
인증 필요 |
||
정보 유출 |
본 요약에서는 가용한 정보를 바탕으로 현재 이해와 권장 사항을 대략 알아봤습니다. Akamai의 검토는 지속적으로 수행되므로 이곳의 모든 정보는 변경될 수 있습니다. Twitter 계정을 방문해 실시간 업데이트를 확인할 수도 있습니다.