banner

블로그

Aug 25, 2023

해커가 Windows 시스템 권한을 얻을 수 있는 새로운 은밀한 기술

보안 연구원들이 Windows 필터링 플랫폼을 악용하여 사용자 권한을 높여 Windows에서 가장 높은 권한 수준인 SYSTEM에 대한 권한을 높이는 도구인 NoFilter를 출시했습니다.

이 유틸리티는 공격자가 더 높은 권한으로 악성 코드를 실행해야 하거나 다른 사용자가 이미 감염된 장치에 로그인한 상태에서 피해자 네트워크에서 측면으로 이동해야 하는 악용 후 시나리오에 유용합니다.

Microsoft는 WFP(Windows 필터링 플랫폼)를 "네트워크 필터링 응용 프로그램을 만들기 위한 플랫폼을 제공하는 API 및 시스템 서비스 집합"으로 정의합니다.

개발자는 WFP API를 사용하여 네트워크 데이터가 대상에 도달하기 전에 필터링하거나 수정할 수 있는 코드, 네트워크 모니터링 도구, 침입 탐지 시스템 또는 방화벽에서 볼 수 있는 기능을 만들 수 있습니다.

사이버 보안 회사인 Deep Instinct의 연구원들은 너무 많은 증거를 남기지 않고 수많은 보안 제품에 의해 탐지되지 않고 Windows 시스템에서 권한을 상승시키기 위한 세 가지 새로운 공격을 개발했습니다.

첫 번째 방법을 사용하면 WFP를 사용하여 스레드 및 프로세스의 보안 컨텍스트에서 사용자와 해당 권한을 식별하는 코드 조각인 액세스 토큰을 복제할 수 있습니다.

스레드가 권한 있는 작업을 실행할 때 보안 식별자는 연결된 토큰에 필요한 액세스 수준이 있는지 확인합니다.

Deep Instinct의 보안 연구원인 Ron Ben Yizhak은 NtQueryInformationProcess 함수를 호출하면 프로세스가 보유한 모든 토큰이 포함된 핸들 테이블을 얻을 수 있다고 설명합니다.

Yizhak은 기술 블로그 게시물에서 "해당 토큰에 대한 핸들을 다른 프로세스에서 복제하여 SYSTEM으로 에스컬레이션할 수 있습니다."라고 언급했습니다.

연구원은 tcpip.sys라는 Windows 운영 체제의 중요한 드라이버에는 상태 저장 필터링을 위해 WPF ALE(Application Layer Enforcement) 커널 모드 레이어에 대한 장치 IO 요청에 의해 호출될 수 있는 여러 기능이 있다고 설명합니다.

“WfpAleProcessTokenReference를 호출하기 위해 장치 IO 요청이 전송됩니다. 이는 서비스의 주소 공간에 연결되고 SYSTEM에 속한 서비스의 토큰을 복제하여 해시 테이블에 저장합니다." - Ron Ben Yizhak

NoFilter 도구는 이러한 방식으로 WPF를 남용하여 토큰을 복제하여 권한 상승을 달성합니다.

연구원은 DuplicateHandle에 대한 호출을 피함으로써 스텔스가 증가하고 많은 엔드포인트 탐지 및 대응 솔루션이 악의적인 동작을 놓칠 가능성이 높다고 말합니다.

두 번째 기술은 IPSec 연결을 트리거하고 인쇄 스풀러 서비스를 남용하여 SYSTEM 토큰을 테이블에 삽입하는 것입니다.

RpcOpenPrinter 함수를 사용하면 프린터에 대한 -handle을 이름으로 검색합니다. 이름을 "\\127.0.0.1"로 변경하면 서비스가 로컬 호스트에 연결됩니다.

RPC 호출 후 SYSTEM 토큰을 검색하려면 WfpAleQueryTokenById에 대한 여러 장치 IO 요청이 필요합니다.

Yizhak은 IPSec 정책 구성은 일반적으로 네트워크 관리자와 같이 합법적인 권한이 있는 사용자가 수행하는 작업이기 때문에 이 방법이 첫 번째 방법보다 더 은밀하다고 말합니다.

“또한 정책은 의사소통을 변경하지 않습니다. 어떤 서비스도 이에 의해 영향을 받지 않으며 네트워크 활동을 모니터링하는 EDR 솔루션은 로컬 호스트에 대한 연결을 무시할 가능성이 높습니다.”

Yizhak의 게시물에 설명된 세 번째 기술을 사용하면 측면 이동 목적으로 손상된 시스템에 로그인한 다른 사용자의 토큰을 얻을 수 있습니다.

연구원은 액세스 토큰을 해시 테이블에 추가할 수 있다면 로그인한 사용자의 권한으로 프로세스를 시작하는 것이 가능하다고 말합니다.

그는 로그인한 사용자로 실행되는 원격 절차 호출(RPC) 서버를 찾고 스크립트를 실행하여 도메인 관리자로 실행되고 RPC 인터페이스를 노출하는 프로세스를 찾았습니다.

토큰을 획득하고 로그인된 사용자의 권한으로 임의 프로세스를 실행하기 위해 연구원은 공격 도구 세계의 새로운 구성 요소인 OneSyncSvc 서비스와 SyncController.dll을 남용했습니다.

해커와 침투 테스터는 이 세 가지 기술을 Microsoft 보안 대응 센터에 보고한 결과 회사에서 해당 동작이 의도된 것이라고 발표했기 때문에 이 세 가지 기술을 채택할 가능성이 높습니다. 이는 일반적으로 수정이나 완화가 없음을 의미합니다.

공유하다