18 October 2024
7월 19일. 조용하던 전 세계 네트워크 망에 비상이 걸렸습니다. 주요 은행, 언론사 및 항공사들이 대규모 IT 중단 사태를 겪은 것입니다. 영국 런던 증권거래소의 서비스가 멈추고 시스템 오류로 인한 물리적 정전 사고까지 발생하며 장 개장이 지연되기도 했습니다.
아메리칸 항공, 델타 항공, 유나이티드 항공 등 대형 항공사와 한국에서는 LCC인 제주항공이 IT 장애로 인해 모든 항공편 운항이 중단되었습니다. 미국의 관문 공항 중 하나인 로스앤젤레스 공항과 유럽 항공의 핵심 공항 중 하나인 암스테르담 공항은 마비에 빠졌고, 미국 여러 주에서는 911 응급전화 서비스가 완전히 중단되기도 했으며, 호주를 포함한 국제 결제 시스템까지 일부분 마비가 발생하기도 했습니다.
세계 각국 IT 시스템을 마비시킨 초대형 전산사고
이런 초대형 전산사고는 뉴욕증시에까지 영향을 끼쳤습니다. IT 시스템들이 먹통을 일으키면서 관련주들이 일제히 하락한 것입니다. 또한 공교롭게도 이날은 약 2조 7천억 달러에 달하는 옵션 만기가 소화되는 날이었는데, 시스템이 일제히 멈추면서 시장이 방향성을 잡지 못한 채 3대 지수가 일제히 하락하기도 했습니다.
이상하게 대부분의 유닉스/리눅스 기반 시스템은 문제가 없었고, 마이크로소프트 윈도우즈만 반복되는 블루 스크린 오류 (BSOD, Blue Screen Of Death)가 이어지며 시스템 장애가 발생했는데요. 초기에는 마이크로소프트 윈도우즈의 문제로 의심되었습니다.
문제는 CrowdStrike라는 보안회사의 업데이트 결함이었습니다. CrowdStrike는 전 세계 주요 기업과 병원, 정부 기관 등 고객 숫자가 2만이 넘는 숨겨진 세계 1위의 보안 업체인데요. 2011년 설립 후, 랜섬웨어와 기타 해킹 위협에 대한 최고의 방어 수단 중 하나로 꼽히는 백신을 앞세워 굴지의 사이버보안 업체로 성장했습니다.
하지만 기업 이름 자체는 상당히 생소한데요. 이 업체는 B2C가 아닌 B2B 전문 업체였기 때문입니다. CrowdStrike의의 핵심 고객은 마이크로소프트, 애플, 오라클, 인텔, 버라이즌, 골드만삭스, 펩시코, 화이자, 존슨앤드존슨 등 포춘 500대 기업 대부분으로, 시장 점유율은 17%에 달합니다. 특히 CrowdStrike의 엔드포인트 솔루션은 지능형 해킹 징후를 실시간 모니터링. 분석해 자동으로 대응 체계를 발동시키는 솔루션으로 시장에 널리 배포되어 있는데요. 이 솔루션 '팰컨 센서(Falcon Sensor)'의 업데이트에 문제가 생겨 윈도우즈 커널(Kernel)을 오작동, 시스템과 충돌하며 BSOD 문제를 일으킨 것입니다.
팰컨 센서는 윈도우 부팅 시 필수적으로 실행, 악성코드가 실행하는 공격 패턴과 유사한 흔적을 분석하는 역할을 하게 되는데요. 이 과정에서 윈도우즈의 커널에 접속하거나 커널에 직접적으로 명령을 내리게 됩니다. 사실상 현대 보안 솔루션들이 대부분 이 커널에 직접적으로 연계되어 작업되기 때문에 매우 조심스럽게 접근해야 하죠. 커널은 운영체제의 핵심 소프트웨어입니다.
응용 프로그램이 요청하는 하드웨어 자원을 적절히 분배하거나, 응용 프로그램이 생성하는 작업 프로세스를 제어하고 메모리를 관리하며, 프로그램이 운영 체제에 요구하는 시스템 콜 등을 수행하는 가장 핵심 영역입니다. 이토록 중요한 소프트웨어이기 때문에 커널에 문제가 발생하면 운영 체제를 쓸 수 없게 되는데요. 이 커널이 오작동 하여 정지할 때를 커널 패닉이라 부릅니다. 마이크로소프트 윈도우즈에서 발생하는 대표적인 커널 패닉 화면이 블루스크린이죠.
긴급 해결책 등장했으나, 완전 해결까지는 아직 먼 길
평소 이 솔루션은 마이크로소프트사의 클라우드 컴퓨팅 네트워크인 Azure와 연결되어 있어 본사 시스템의 통제를 받아 문제가 발생했다 해도 원격으로 금방 되돌릴 수 있습니다. 하지만 문제가 발생한 업데이트는 개별 서버나 PC 단위에서 실행되다 보니 원격 명령을 내릴 틈도 없이 BSOD가 발생, 시스템을 사용할 수 없게 된 것입니다. CrowdStrike 측은 부랴부랴 공지를 내고 이번 사태가 "보안 사고나 사이버 공격이 아니"라고 진화에 나섰습니다.
해결책으로는 각 사용자가 Windows를 세이프 모드, 혹은 리커버리 모드로 기동하여 Windows/System32∕drivers∕CrowdStrike에 있는 C-00000291*.sys를 모두 삭제할 것을 제시했는데요. 로이터의 보도에 따르면 전 세계적으로 수백만대의 컴퓨터에 팰컨 센서가 깔린 것으로 추정된다고 할 정도라 문제는 더욱 심각합니다.
충돌이 엔드포인트, 즉 개별 컴퓨터나 가상머신에서 발생했기 때문에 문제 해결도 개별적으로 수동으로 이뤄져야 하기 때문입니다. 이 과정에는 며칠 이상 걸릴 것으로 추정되고, 글로벌 레벨의 피해가 우려됩니다. IDC에 보관되는 서버들은 아예 모니터나 입력장치가 연결되어 있지 않거나 Bitlocker등의 암호화가 걸려있고, 또 엔지니어가 직접 출입하는 과정에서 복잡한 승인 절차를 필요로 하기 때문에 물리적 해결 자체에도 시간이 더욱 많이 소요될 수 있습니다.
실제 각종 통신망 중단을 모니터링하는 다운디텍터에 따르면 MS 365는 물론 미 최대은행인 체이스, 뱅크오브아메리카, 결제업체인 비자, 아마존 등의 먹통이 당일 오후 4시까지 발생하기도 했습니다. 또한 물류회사인 UPS와 페덱스, Maersk(머스크) 등은 이번 사고로 일정에 차질이 빚어지기도 했습니다.
전세계 시스템 마비의 원인, Null Pointer Reference Exception 이란?
업계 곳곳에서는 공항, 은행 등 주요 인프라가 한 회사의 클라우드 서비스를 사용하는 탓에 이같이 작은 보안 업데이트 오류 하나에도 동시다발적인 대형 마비 사태가 벌어졌다고 언급했습니다. 중앙 시스템에서 문제가 생기면 피해 규모와 범위가 걷잡을 수 없이 커질 수 있는 구조적 위험이 있기 때문인데요.
원래 대형 업데이트 시 발생할 수 있는 문제를 예방하기 위해 지연 업데이트 옵션을 채택하고 있으나, 이번 업데이트는 콘솔에 대한 접근 방침을 정의하는 수시 업데이트 중 하나인 '정책 업데이트' 직후 발생한 문제라 지연 업데이트의 효용성조차 볼 수 없었습니다.
이번 팰컨 센서에서 문제를 일으킨 파일 291은 악성코드가 명명 파이프를 쓰고 있는지 추정하는 것을 정의하는 정책 파일로, 무엇이 악성코드인지 정의하여 팰컨 센서에게 명령하는 일종의 '작전 문서'와 같은 내용을 담고 있습니다. 하지만 이 파일의 내용이 모두 0으로 채워져 있어서 팰컨 센서가 비정상적인 정책을 수행하게 된 것입니다. 없는 공간의 정보를 읽어 들여 명령을 수행하려는 오류인 널 포인터 레퍼런스 익셉션(Null Pointer Reference Exception)이 발생한 것이죠.
이런 중요한 정책 파일 배포에 있어서 기초적인 검수조차 이루어지지 않았다는 의혹까지 제기되고 있다 못해 의도적인 공격이라는 음모론까지 퍼지는 등 문제가 계속 발생하고 있는데요. 만약 악의적인 코드가 배포되었다면 초대형 사고를 넘어 전 세계 인프라가 파괴 수준에 이르는 재난이 발생했을 수도 있었을 것입니다.
독점적 시장 구조로 인해 반복되는 보안 사고
흥미롭다 해야할지, 아이러니하다 해야할지 지난 2010년에는 McAfee(맥아피)도 문제가 있는 안티 바이러스 정의 업데이트 배포를 실시, 당시 널리 쓰이고 있던 윈도우즈 XP 커널 패닉을 일으킨 적 있었는데요. 당시 문제를 일으켰던 DAT 파일 5958버전은 윈도우즈 XP SP3을 대상으로 반복되는 리부트와 네트워크 기능 상실을 일으켰습니다.
윈도우즈의 핵심 기능 중 하나인 svchost.exe를 W32/Wecorl.a라는 바이러스로 오인하게 하면서 해당 기능을 차단, 문제를 일으켰던 것입니다. 많은 바이러스들이 svchost.exe로 위장한다고 하지만 이를 원천적으로 차단하면 윈도우즈 자체가 작동할 수 없었죠. 그런데 이 당시 McAfee의 CEO는 조지 커츠(George Kurtz)였습니다. 지금 CrowdStrike의 공동 창립자 겸 CEO이기도 하죠. 이런 사고가 과연 우연일까 하는 생각까지 듭니다.
이번 IT 사고의 규모가 어마어마해지면서 백악관조차 이번 사건에 나섰습니다. 앤 뉴버거 국가안보회의 사이버/신흥기술 담당 부보좌관은 현지시각 19일 애스펀 안보 포럼에서 "현시점에서 우리는 이게 IT 관련 패치의 문제라고 생각한다"고 밝히고 "필요한 지원을 하겠다"고 했는데요.
일부 언론은 마이크로소프트의 시장 독점에 초점을 맞추기도 했습니다. 공항, 은행 등 주요 인프라가 한 회사의 클라우드 서비스를 사용하는 탓에 사소한 업데이트 오류 하나만 나타나도 동시 다발적인 대형 마비 사태로 이어진다는 지적이죠. CrowdStrike와 마이크로소프트 모두 큰 피해를 입을 것으로 예상됩니다.
이런 공격을 막기 위해서는 여러 채널로 구성된 시스템을 사용하거나, 혹은 보조 시스템을 적당히 확보하는 것이 중요한데 이 마저도 보안 정책을 일관적으로 수행하고 업데이트를 잘 수행하고 있다면 보조 시스템도 함께 오염될 수 밖에 없는 사고이기 때문에 더욱 문제가 될 수 밖에 없다고 생각합니다. 보안에 있어서 가장 중요한 건 시스템의 안전성 확보와 함께 전문 인력이 항시 문제가 발생하지 않도록 지켜보는 것이 중요하다는 것을 다시 한번 생각하게 해주는 사고였습니다.
인텔렉추얼데이터는 eDiscovery 진행 시 필수적으로 진행하는 중요 데이터의 수집 및 처리의 모든 과정에서 발생 가능한 사고와 해킹 위험을 미리 감지하고 사전에 예방하는 철저한 보안 시스템을 갖추고 있습니다. 보다 안전하고 믿을 수 있는 eDiscovery가 필요하시다면 지금 바로 인텔렉추얼데이터의 전문가와 상담 받아보세요!