제로데이 취약점, 악용 및 공격 설명
끊임없이 발전하는 사이버 보안 환경 속에서, 사이버 범죄 역시 더욱 정교한 수법으로 진화하고 있습니다. 오늘날 사이버 공격자들은 사용자들이 인지하지 못하는 사이에도 교묘하게 정보를 탈취하고 있습니다. 이러한 공격 방식 중 하나가 바로 제로데이 공격입니다.
이 글에서는 제로데이 취약점과 공격, 작동 원리, 그리고 이러한 공격을 감지하고 예방하는 방법에 대해 자세히 알아보겠습니다.
제로데이 취약점, 익스플로잇 및 공격이란 무엇인가?
제로데이 취약점: 이는 사이버 공격자가 먼저 발견했지만, 소프트웨어 개발자나 공급업체는 아직 알지 못하는 컴퓨터 소프트웨어 또는 시스템의 보안 결함을 의미합니다. 이처럼 숨겨진 보안상의 허점은, 출시 이후에도 아무도 그 존재를 모르기 때문에 즉각적인 해결이 불가능합니다. 이러한 취약점을 파악하고 수정하는 데에는 수개월에서 심지어 1년까지도 걸릴 수 있습니다.
이러한 공격에 '제로데이'라는 이름이 붙은 이유는, 소프트웨어 개발자가 이 보안 결함을 수정하는 데 주어진 시간이 사실상 '0일'이기 때문입니다.
제로데이 익스플로잇: 제로데이 익스플로잇은 시스템에 불법적으로 접근하기 위해 악성 코드나 스피어 피싱 등을 설치하는 데 사용되는 코드 조각입니다.
제로데이 공격: 사이버 공격자는 제로데이 공격을 통해 개발자나 소프트웨어 시스템에서 알려지지 않은 취약점을 악용합니다. 이 공격은 실행 중에 효과적으로 방어할 수단이 없기 때문에 매우 위험할 수 있습니다.
그렇다면 제로데이 공격이 왜 위험하며, 공격자들은 왜 이러한 공격을 감행하는 걸까요? 좀 더 자세히 알아보겠습니다.

제로데이 공격이 위험한 이유는 무엇인가?
제로데이 공격은 사이버 보안 영역에서 점점 더 심각한 위협으로 자리 잡고 있습니다. 이러한 공격의 가장 큰 문제점은, 제로데이 익스플로잇이 미지의 영역에 속하거나, 개발자들이 미처 파악하지 못한 보안 취약점을 이용한다는 점입니다.
때로는 이러한 보안 결함이 발견되지 않은 채로 몇 달이나 방치되기도 합니다. 소프트웨어 전문가들이 공격을 인지하기 전까지는 취약점을 수정할 수 없습니다. 제로데이 공격은 매우 파괴적이기 때문에, 백신 소프트웨어의 서명 기반 검사로는 탐지하기 어렵습니다.
이러한 공격으로 인해 개인 사용자나 기업 모두 엄청난 손실을 입을 수 있습니다. 많은 사이버 범죄자들이 랜섬웨어 공격을 통해 돈을 벌기 위해 제로데이 익스플로잇을 활용하고 있습니다.
체크포인트 웹사이트의 자료에 따르면, 공격자들은 Log4j 취약점을 발견한 직후 72시간 만에 83만 건의 공격을 시도했습니다.

제로데이 공격자의 동기
- 정보 탈취: 사이버 공격자의 주요 목적은 금전적 이익을 얻는 것입니다. 금융 정보, 은행 거래 내역, UPI 코드 등 중요한 개인 정보를 훔칩니다.
- 해커티비즘: 일부 공격자들은 정치적 또는 사회적 신념을 이유로 정부 기관을 공격합니다. 이러한 공격을 통해 민감한 정보가 유출되거나 웹사이트가 손상될 수 있습니다.
- 국가 지원 공격자: 최근에는 정부와 국가 기관도 제로데이 공격을 활용합니다. 이들은 주로 간첩 행위, 사이버 전쟁, 정보 수집 등을 목적으로 공격을 감행합니다.
- 화이트 해커: 화이트 해커는 악의적인 의도를 가지고 있지 않습니다. 이들은 제로데이 취약점을 발견하여 소프트웨어 개발자에게 알리고 수정을 요청합니다.
- 파괴적인 공격자: 일부 공격자들은 복수심이나 쾌락을 위해 취약점을 악용하여 시스템에 혼란을 야기하거나 서비스를 마비시킵니다.
- 암시장: 사이버 공격자들은 국가, 범죄자, 기업 등 가장 높은 가격을 제시하는 구매자에게 제로데이 취약점과 익스플로잇을 판매하기도 합니다.
- 범죄 조직: 일부 범죄 조직은 마약 밀매, 인신매매 등 불법 활동에 제로데이 공격을 사용합니다.
위에 언급된 해커들은 일부 유형에 불과하지만, 사이버 위협을 방지하고 사이버 보안 수준을 높이기 위해 이들을 인지하는 것이 중요합니다.

제로데이 공격은 어떻게 발생하는가?
공격자들은 정부 기관, 하드웨어, 소프트웨어, IoT 장치, 대기업, 취약한 시스템, 기타 주요 인프라를 공격 대상으로 삼습니다.
제로데이 공격의 작동 방식은 다음과 같습니다.
1단계: 취약점 발견
사이버 공격자들은 유명한 애플리케이션, 플랫폼, 웹사이트에서 보안 취약점을 찾으려고 합니다. 이러한 취약점은 코드의 오류, 암호화 누락, 또는 무단 액세스를 허용하는 보호되지 않은 코드 영역 등 소프트웨어의 모든 결함일 수 있습니다.
2단계: 익스플로잇 개발
공격자는 개발자나 소프트웨어 공급업체보다 먼저 소프트웨어의 취약점을 발견합니다. 그런 다음 이 취약점을 이해하고 제로데이 익스플로잇을 만듭니다. 공격자들은 이 코드를 사용하여 공격을 실행합니다.
제로데이 익스플로잇은 설치 후 더 많은 악성 코드를 배포할 수 있는 악성 코드가 포함된 코드일 수 있습니다. 이러한 코드는 매우 위험하여 시스템 전체에 퍼져 손상을 일으킬 수 있습니다.
익스플로잇 코드는 관리자 권한을 획득하거나 악의적인 활동을 수행할 수도 있습니다. 현재 개발자들은 이러한 취약점을 인식하지 못합니다. 공격자는 이러한 취약점이나 제로데이 익스플로잇을 암시장에서 높은 가격에 판매할 수도 있습니다.
3단계: 공격 실행
공격자는 특정 대상을 겨냥하거나 대규모 공격을 계획하고, 의도에 따라 제로데이 익스플로잇을 배포합니다. 대량 피싱 이메일이나 스피어 피싱을 통해 특정 개인이나 대규모 그룹에게 익스플로잇을 배포할 수 있습니다.
4단계: 악성 코드 감염
피해자는 피싱 이메일을 통해 악성 코드를 다운로드하거나 설치하거나 악성 웹사이트를 클릭합니다. 이 악성 코드는 브라우저, 운영 체제, 애플리케이션, 하드웨어 등에 영향을 미칩니다.
5단계: 취약점 해결 및 패치
소프트웨어 공급업체는 테스트 과정에서 또는 제3의 고객을 통해 보안 결함을 발견합니다. 그리고 소프트웨어 개발팀에 이 결함을 알립니다. 소프트웨어 전문가들은 취약점을 수정하고 패치를 배포합니다. 시스템 소프트웨어를 업데이트한 사용자는 더 이상 이러한 보안 결함에 취약하지 않습니다.

제로데이 공격의 시스템 취약점 유형
제로데이 공격자들이 주로 공격하는 취약점 유형은 다음과 같습니다.
- 운영 체제 결함: 공격자는 운영 체제, 애플리케이션, 서버의 취약점을 악용하여 시스템에 깊숙이 접근할 수 있습니다.
- 웹 브라우저 및 플러그인: 웹 브라우저를 악용하는 것은 공격자들이 시스템과 프로젝트에 대한 완벽한 접근 권한을 얻기 위해 사용하는 일반적인 수법입니다. 공격자들은 또한 웹 플러그인, 브라우저 확장 프로그램, Java 및 Adobe Flash와 같은 브라우저 플러그인을 표적으로 삼습니다.
- 하드웨어 취약성: 일부 제로데이 공격자들은 모바일이나 컴퓨터 시스템의 펌웨어와 칩셋 같은 하드웨어 취약성을 공격합니다. 이러한 결함은 하드웨어 업데이트가 필요하기 때문에 패치하기가 까다로울 수 있습니다.
- 네트워크 프로토콜: 공격자들은 네트워크 프로토콜이나 라우터, 스위치 등 네트워크 장치의 보안 취약점을 악용합니다. 이 취약점은 시스템의 네트워크 연결을 끊거나 무단 액세스를 허용할 수 있습니다.
- 컴퓨터 웜: 해커들은 호스트 시스템에 침투할 때 컴퓨터 웜을 이용하여 방어망을 무력화시킵니다. 이러한 공격은 인터넷 전체로 퍼져 혼란을 야기하고 감지하기 어려울 수 있습니다.
- 제로데이 악성 코드: 이 악성 코드는 아직 알려지지 않았으며, 이를 탐지할 수 있는 특정 백신 소프트웨어가 없습니다. 공격자들은 악성 웹사이트, 이메일, 기타 취약한 웹사이트 및 애플리케이션을 통해 이러한 악성 코드를 배포할 수 있습니다.
- 기타 취약점: 이러한 취약점에는 알고리즘 오류, 데이터 암호화 누락, 비밀번호 보안 문제, 인증 결함 등이 포함될 수 있습니다.
제로데이 공격을 식별하는 방법
일반적으로 제로데이 공격은 소프트웨어 전문가와 공급업체가 감지하기 어렵습니다. 익스플로잇을 식별하면 제로데이 익스플로잇에 대한 정보를 찾을 수 있습니다.
제로데이 공격을 식별하는 방법은 다음과 같습니다.
- 코드 분석: 코드 분석은 파일의 기계어 코드를 검사하여 의심스러운 활동을 탐지하는 방법입니다. 그러나 코드가 복잡할 경우 악성 코드나 결함을 탐지하는 데 어려움이 있을 수 있습니다.
- 행동 분석: 설명할 수 없는 트래픽 증가, 비정상적인 파일 액세스, 비정상적인 시스템 프로세스 등을 통해 제로데이 공격을 탐지할 수 있습니다.
- 침입 탐지 시스템 (IDS): IDS는 악의적인 활동을 탐지하고, 취약점과 알려진 익스플로잇을 식별합니다.
- 샌드박싱 기술: 샌드박싱 기술은 애플리케이션을 시스템의 나머지 부분과 분리하여, 제로데이 공격이 다른 시스템 영역으로 확산되는 것을 방지합니다.
- 취약점 스캐닝: 취약점 스캐닝은 제로데이 공격을 감지하는 데 중요한 역할을 합니다. 취약점을 식별, 스캔, 우선순위를 지정하고 해결하여 위험을 완화합니다.
- 패치 관리: 패치 관리는 취약한 시스템에 패치를 적용하는 과정입니다. 패치 관리는 일반적으로 취약점 관리 스캔에 의존합니다.

제로데이 공격을 예방하는 방법
제로데이 공격 예방은 소프트웨어 개발자에게 알려지지 않은 취약점을 다루기 때문에 가장 어려운 부분 중 하나입니다. 다음은 기업과 조직이 제로데이 공격을 예방하기 위한 모범 사례입니다.
- 보안 프로그램 구축: 사업 유형과 위험 수준을 고려하여 숙련된 보안 프로그램을 구축하고 강력한 보안팀을 구성합니다.
- 관리형 보안 서비스 제공업체: 24시간 운영되는 적절한 보안 서비스 제공업체를 선택하여 피싱과 같은 잠재적 위협을 지속적으로 감시하고 사이버 범죄로부터 조직을 보호하십시오.
- 강력한 웹 앱 방화벽 설치: 강력한 방화벽은 수신 트래픽을 검사하고, 위협을 확인하며, 모든 악성 웹사이트를 차단합니다.
- 패치 관리 개선: 패치 관리 기능을 개선하여 제로데이 공격을 방지하고 소프트웨어의 모든 취약점을 완화하십시오.
- 취약점 관리: 취약점 관리 프로그램은 모든 취약점을 교정 및 완화하고 소프트웨어 프로젝트의 전반적인 위험을 줄이는 데 도움을 줍니다.
- 소프트웨어 지속적 업데이트: 소프트웨어를 정기적으로 업데이트하면 제로데이 공격 가능성을 줄일 수 있습니다. 사이버 범죄자들은 조직의 보안 소프트웨어에 대한 방대한 지식을 가지고 있습니다. 따라서 소프트웨어 업데이트는 필수적입니다.
- 잦은 테스트 수행: 소프트웨어 개발자가 시뮬레이션과 테스트를 자주 수행하면 제로데이 취약점이 발생할 가능성이 있는 영역을 파악하는 데 도움이 됩니다.
- 직원 교육 및 도구 제공: 직원들에게 사이버 공격과 사회 공학에 대한 교육을 제공하고, 피싱, 스피어 피싱 캠페인을 보고 및 탐지하고 악의적인 시도나 위협을 모니터링할 수 있는 도구를 제공하십시오.
- 백업 계획 유지: 민감한 데이터 손실을 방지하기 위해 항상 복구 백업 계획을 준비하십시오.

제로데이 공격의 예시
제로데이 공격의 실제 사례를 살펴보겠습니다.
#1. 스턱스넷
2010년에 NSA와 CIA 보안팀은 악성 컴퓨터 웜인 스턱스넷을 발견했습니다. 스턱스넷은 SCADA(감시 제어 및 데이터 수집) 시스템을 대상으로 하여 이란의 핵 프로그램을 손상시켰습니다. 이 공격은 Windows의 여러 제로데이 취약점을 이용하여 산업 시스템과 운영을 제어했습니다.
#2. 하트블리드
하트블리드는 OpenSSL이라는 암호화 라이브러리에 영향을 미치는 제로데이 취약점입니다. 2014년, 이 결함으로 인해 공격자는 OpenSSL의 취약한 버전을 사용하는 웹사이트 및 서비스에서 중요한 데이터를 훔칠 수 있었습니다. 이 제로데이 공격은 보안 취약점을 즉시 해결하고 공격으로부터 데이터를 보호하는 것의 중요성을 보여주었습니다.
#3. 쉘쇼크
쉘쇼크는 2014년 9월에 Bash (Bourne-Again Shell) 명령줄 인터프리터에서 발견된 제로데이 취약점입니다. 이 공격으로 사이버 공격자들은 무단 접근 권한을 얻고 임의 명령을 실행할 수 있었습니다.
#4. 어도비 플래시 플레이어
해커들은 어도비 플래시 플레이어에서 다양한 제로데이 취약점을 발견했습니다. 이 공격에서 사이버 공격자들은 이메일 첨부 파일이나 웹사이트에 포함된 악성 플래시 파일을 이용하여 시스템을 완전히 제어했습니다.
#5. 줌
공격자들은 줌에서 제로데이 취약점을 발견했습니다. 이 공격에서 공격자들은 사용자가 이전 버전의 윈도우를 사용하는 경우 사용자 시스템에 원격으로 접근할 수 있었습니다. 해커는 특정 사용자를 대상으로 삼아 시스템을 제어하고 모든 데이터에 액세스할 수 있었습니다.
#6. 애플 iOS
애플의 iOS 또한 제로데이 취약점으로 피해를 입었습니다. 2020년과 2023년 9월에 공격자들은 페가수스 스파이웨어를 사용하여 많은 전문가, 언론인, 정부 관계자들이 사용하는 iOS 기기를 원격으로 손상시켰습니다.
#7. 오로라 작전
오로라 작전은 구글, 어도비 시스템, 아카마이 테크놀로지, 랙스페이스, 주니퍼 네트워크, 야후, 시만텍, 모건 스탠리 등 여러 조직을 공격 대상으로 삼았습니다.
구글은 2010년에 이 공격을 발견했으며, 사이버 공격은 2009년 중반부터 시작되어 연말까지 계속되었습니다. 사이버 공격자들은 Internet Explorer의 제로데이 취약점을 악용하여 구글과 다른 회사에 접근했습니다.
#8. 트위터
2022년에는 트위터 제로데이 공격으로 인해 데이터 유출이 발생했습니다. 공격자들은 이 소셜 미디어 플랫폼의 제로데이 취약점을 이용하여 540만 개의 계정 목록을 확보했습니다.
제로데이 공격의 피해자가 된 경우 어떻게 해야 할까?
- 공격이 확인되면 즉시 감염된 시스템을 격리하십시오.
- 조사를 위해 스크린샷, 보고서 등의 디지털 증거를 보관하십시오.
- 이러한 공격에 전문적인 대응을 할 수 있는 보안팀과 협력하여 필요한 예방 조치를 취하십시오.
- 소프트웨어 및 보안팀과 함께 최대한 빨리 취약점을 해결하고 영향을 받은 시스템과 장치를 복구하십시오.
- 제로데이 공격이 어떻게 발생했는지 분석하고, 향후 보안 관리 프로그램을 계획하십시오.
- 공격에 대해 관계자, 법률팀, 고위 당국에 알리십시오.
만약 조직이 심각한 데이터 침해를 겪을 경우, 법적 조치를 취하는 것을 고려해야 합니다.
결론
제로데이 공격은 사이버 보안 환경에서 매우 심각한 위협입니다. 이러한 공격을 탐지하고 해결하는 것은 매우 어렵지만, 모범 사례를 따르면 이 위험한 사이버 공격을 방지할 수 있습니다.
보안 연구원과 개발자로 구성된 강력한 소프트웨어 보안팀을 구성하면 제로데이 취약점을 신속하게 패치할 수 있습니다.
다음은 보안을 유지하는 데 도움이 되는 최고의 사이버 보안 규정 준수 소프트웨어입니다.