23분 46초 만에 털린 69GB 백업: 필리핀 이주노동자 DB 유출로 본 윈도우 권한 상승 취약점
필리핀 해외고용관리국(POEA) 시스템에서 68.8GB 분량의 MS SQL 백업 파일이 24분 만에 유출된 침해 사고의 공격 메커니즘과 엔터프라이즈 방어 전략을 분석한다.
발행일: 2026.11.05
27개 MS SQL 백업 DB 연속 유출
해외 노동자 계약·신원 원장 포함
공격자 스테이징 서버 노출로 사후 인지
윈도우 토큰 남용과 rclone 도구를 결합한 24분간의 데이터 탈취 구조
필리핀 이주노동자부(DMW) 산하 과거 해외고용관리국(POEA) 전산망에서 68.837GiB 규모의 데이터베이스 백업 원장이 외부로 유출되었다. 이번 침해 사고의 핵심은 보안 패치가 누락된 제로데이 공격이 아니라, 윈도우 서버 기본 설정에 내재된 권한 상승 취약점을 악용했다는 점이다. 공격자는 시스템 내부 진입 후 단 23분 46초 만에 27개의 마이크로소프트 SQL 서버 백업 파일(.bak)을 단일 파이프라인으로 전송했다.
공격자는 시스템 권한을 장악하기 위해 공개 도구인 ‘갓포테이토(GodPotato)‘의 변종을 실행했다. 윈도우 서비스 계정에 기본 부여되는 토큰 가장 권한(SeImpersonatePrivilege)을 악용하면, 운영체제 취약점 패치 여부와 무관하게 즉시 로컬 최고 권한인 로컬 시스템(NT AUTHORITY\SYSTEM)으로 권한을 상승시킬 수 있다. 공격자는 데이터베이스 관리자 계정 암호를 크래킹할 필요 없이, 서비스 계정의 토큰만으로 호스트 파일 시스템의 모든 백업 저장소 접근 권한을 획득했다.
권한을 획득한 공격자는 오픈소스 파일 동기화 유틸리티인 rclone을 구동했다. 싱가포르에 위치한 업클라우드(UpCloud) 인프라로 초당 약 48MB/s의 속도로 대용량 파일 전송을 개시했다. 방화벽 내부에서 외부 클라우드로 대규모 트래픽이 일시에 방출되었음에도 불구하고, 대역폭 임계치 경보나 파일 무결성 모니터링은 전혀 작동하지 않았다.
초기 서비스 계정 장악부터 외부 클라우드 전송까지의 실행 단계
웹 취약점 또는 내부망 접근을 통해 웹·DB 구동 서비스 계정 권한 확보
SeImpersonatePrivilege 토큰을 가장하여 로컬 시스템 최고 권한 획득
로컬 및 네트워크 드라이브에 저장된 27개 .bak 백업 파일 원장 식별
싱가포르 스테이징 서버로 23분 46초간 68.8GB 연속 전송 완료
비암호화 백업 보관과 규제 과징금 리스크의 구체적인 비교
이번에 탈취된 27개 데이터베이스는 필리핀 해외 파견 노동자들의 고용 계약서, 금융 거래 내역, 신원 인증 원장인 ‘발릭 망가가와(Balik-Manggagawa)’ 시스템을 포함한다. 보안 연구 기관 헌트아이오(Hunt.io)의 분석에 따르면 해당 백업 파일들은 TDE(투명한 데이터 암호화)조차 적용되지 않은 평문 상태로 저장되어 있었다. 백업 파일이 암호화되지 않은 채 디렉터리에 방치되면, 네트워크 망을 분리해 두었더라도 호스트 권한 탈취 즉시 원본 데이터가 통째로 노출된다.
피해 기관은 자체 모니터링 시스템을 통해 침해를 감지하지 못했다. 공격자가 싱가포르 스테이징 서버의 디렉터리를 외부에 공개(Open Directory)해 두는 보안 실수를 저지른 뒤에야 민간 보안 연구진에 의해 유출 사실이 확인되었다. 필리핀 개인정보보호법(Data Privacy Act of 2012)에 따르면 대규모 민감정보 침해 사고 발생 시 연간 매출액 또는 관련 예산에 비례하는 과징금 처분과 함께 집행 책임자에 대한 형사 처벌이 부과된다.
| 평가 지표 | POEA 침해 인프라 상태 | 권장 엔터프라이즈 표준 규격 | 보안 격차 및 비즈니스 영향 |
|---|---|---|---|
| 백업 파일 암호화 | 미적용 (평문 .bak 보관) | AES-256 기반 TDE 및 백업 암호화 | 유출 즉시 데이터 복원 및 열람 가능 |
| 윈도우 계정 권한 | SeImpersonate 기본 활성화 | 서비스 계정 분리 및 권한 박탈 | 패치 없이도 단일 호스트 완전 장악 |
| 대용량 Egress 통제 | 무제한 (초당 48MB/s 허용) | 방화벽 데이터 유출 방지(DLP) 연동 | 24분 만에 전산망 핵심 원장 전량 유출 |
| 아웃바운드 모니터링 | 경보 미발생 (사후 탐지 불가) | 비인가 IP 대상 이상 트래픽 차단 | 50일 이상 침해 사실 인지 실패 |
| 규제 리스크 노출 | 개인정보보호법 위반 조사 착수 | 암호화 입증 시 통지 의무 완화 | 기관 신뢰도 추락 및 규제 처벌 직면 |
백업 보안 및 탐지 역량 비교
서비스 계정 토큰과 아웃바운드 트래픽 감시 체계의 치명적 공백
엔터프라이즈 환경에서 윈도우 서버를 운영할 때 가장 흔하게 발생하는 실수는 서비스 계정의 권한을 과도하게 부여하는 관행이다. IIS 웹 서버나 MS SQL 서버를 설치할 때 기본 생성되는 서비스 계정은 유지보수 편의를 위해 다수의 관리 토큰을 유지한다. 그중에서도 SeImpersonatePrivilege 및 SeAssignPrimaryTokenPrivilege는 클라이언트 요청을 대신 처리하기 위해 다른 계정의 보안 컨텍스트를 복제할 수 있는 권한이다. 갓포테이토와 같은 도구는 로컬 RPC 인터페이스를 조작하여 권한 수준이 가장 높은 시스템 계정의 토큰을 탈취한다.
이러한 공격 기법은 윈도우 보안 업데이트를 성실히 수행한 최신 패치 서버라 하더라도 방어할 수 없다. 운영체제의 결함을 찌르는 것이 아니라, 운영체제가 의도적으로 설계한 토큰 복제 메커니즘을 악용하기 때문이다. 결과적으로 서비스 계정이 장악되는 순간 해당 물리 머신 내의 모든 데이터베이스와 스토리지 파일은 공격자의 완전한 통제 하에 놓이게 된다.
더 심각한 결함은 네트워크 경계 영역에서 발생했다. 24분 동안 69GB의 데이터가 단일 IP 주소로 빠져나가는 동안 어떠한 방화벽이나 침입탐지시스템(IDS)도 이를 차단하지 못했다. 대다수 기업 인프라가 인바운드 트래픽 감시에만 보안 투자를 집중하고, 아웃바운드(Egress) 트래픽의 전송량이나 비인가 프로토콜 사용에는 관대한 정책을 취하고 있기 때문이다.
3단계 구조적 결함에 대응하는 기술적 통제책
서비스 계정 장악 후 24분 만에 68.8GB 분량의 비암호화 DB 원장 전량 탈취
SeImpersonatePrivilege 권한 방치와 Egress 대역폭 감시 체계의 부재
가장 권한 회수, 저장 데이터 TDE 강제 암호화, 이상 전송량 자동 격리 정책 구현
인프라 총괄 책임자가 즉각 집행해야 할 3대 기술 통제 조항
이번 사고는 레거시 공공기관뿐만 아니라 대규모 데이터베이스를 온프레미스나 가상 머신에서 운용하는 모든 엔터프라이즈에 공통적인 위협을 시사한다. 외부 침입을 100% 방어할 수 없다면, 내부 침투가 발생하더라도 대규모 원장 유출로 이어지지 않도록 연결 고리를 물리적으로 끊어내야 한다. 시스템 및 보안 엔지니어링 리더는 다음 3가지 조치를 인프라 전반에 즉시 적용해야 한다.
첫째, 윈도우 서비스 계정의 불필요한 토큰 가장 권한을 전수 회수해야 한다. 로컬 보안 정책(secpol.msc)의 ‘사용자 권한 할당’ 메뉴에서 ‘인증 후 클라이언트 가장(SeImpersonatePrivilege)’ 목록을 점검하라. 일반 서비스 구동 계정이 해당 권한을 가지고 있다면 즉시 제거하고, 관리 서비스 계정(gMSA)을 적용하여 권한의 최소화 원칙을 강제해야 한다. 이 조치만으로도 갓포테이토 류의 권한 상승 공격 경로를 완전히 무력화할 수 있다.
둘째, 데이터베이스 백업 파이프라인의 암호화 및 보관소 격리를 의무화해야 한다. 백업 생성 시점부터 인증서 기반 암호화(ENCRYPTION WITH ALGORITHM = AES_256)를 강제하고, 로컬 디스크가 아닌 분리된 불변(Immutable) 오브젝트 스토리지로 직접 쓰도록 구성해야 한다. 로컬 호스트 관리자 권한을 빼앗기더라도 암호화 키가 분리된 키 관리 시스템(KMS)에 보관되어 있다면 유출된 백업 파일은 단순한 무의미한 난수 덩어리에 불과하다.
셋째, 데이터베이스 호스트의 아웃바운드 인터넷 직접 통신을 완전 차단해야 한다. 데이터베이스 서버와 백업 서버는 외부 공용 IP로 직접 연결될 이유가 없다. 방화벽 차원에서 데이터베이스 서브넷의 Egress 규칙을 기본 차단(Default Deny)으로 설정하고, 사내 공인 프록시를 경유하지 않는 모든 외부 아웃바운드 세션을 즉시 드롭(Drop)시켜야 한다. 단일 세션에서 비정상적인 전송 속도가 감지되면 네트워크 인터페이스를 자동 격리하는 대역폭 임계치 정책을 병행해야 한다.