Computer >> 컴퓨터 >  >> 네트워킹 >> 네트워크 보안

네트워크 보안에서 익스플로잇(Exploit)이란? 개념부터 종류, 취약점과의 차이까지 총정리

익스플로잇(exploit)이란 무엇인가?

일상 언어에서 익스플로잇은 "누군가 또는 무언가를 이용해 자신의 목적을 달성하는 전략"을 의미합니다. 예를 들어 성적이 좋은 급우와 친한 척하며 숙제를 베끼는 것도 일상 속 익스플로잇의 예다.

반면 사이버 보안 분야에서 익스플로잇은 시스템, 애플리케이션, 네트워크 또는 운영체제의 약점을 공격자가 악용하는 방법이나 코드를 가리킵니다. 가장 흔한 형태는 컴퓨터를 장악하거나 네트워크에서 데이터를 탈취하는 데 사용되는 소프트웨어와 코드입니다.

시스템 익스플로잇의 작동 원리

익스플로잇의 실행은 버그나 약점을 이용해 소프트웨어를 설치하거나, 데이터를 생성하거나, 명령을 실행함으로써 애플리케이션과 시스템의 동작을 의도하지 않은 방향으로 바꾸는 과정입니다. 이렇게 익스플로잇을 활용해 이득을 취하는 사람을 '익스플로이터(exploiter)'라고 부릅니다.

익스플로잇의 주요 유형

원격(Remote) 익스플로잇 vs 로컬(Local) 익스플로잇

원격 익스플로잇은 취약한 시스템에 사전 접근 권한 없이 네트워크를 통해 취약점을 공격하는 방식입니다. 반면 로컬 익스플로잇은 공격자가 먼저 대상 시스템에 접근해야 하며, 보안 관리자가 부여한 권한보다 더 높은 권한을 획득하는 데 활용됩니다.

알려진(Known) 익스플로잇 vs 제로데이(Zero-day) 익스플로잇

익스플로잇은 취약점이 공개되었는지 여부에 따라서도 분류됩니다. 알려진 익스플로잇은 보안 연구자들이 이미 식별한 것으로, 개발사가 패치를 배포해 소프트웨어·운영체제·하드웨어의 구멍을 메울 수 있습니다. 반면 아직 공개되지 않은 취약점을 노리는 제로데이 익스플로잇은 패치가 없어 특히 위험합니다.

익스플로잇, 취약점, 공격 벡터의 차이

세 용어는 밀접하게 연관되어 있지만 서로 다른 개념입니다.

  • 취약점(Vulnerability): 코드에 존재하는 결함이나 방어 체계의 빈틈으로, 해커에게 악용될 잠재적 위험을 안고 있습니다. 모든 소프트웨어, 운영체제, 웹사이트, 서버에 취약점이 존재할 수 있습니다.
  • 익스플로잇(Exploit): 취약점을 실제로 악용해 무단 접근 등을 시도하는 코드나 기법입니다.
  • 공격 벡터(Attack Vector): 해당 취약점을 공격하기 위해 사용하는 경로나 방법을 의미합니다.

즉, 취약점이 존재한다면 그 시스템은 '악용 가능한(exploitable)' 상태이며, 공격이 실제로 성공한 사건 자체를 익스플로잇이라고 부르기도 합니다.

익스플로잇은 바이러스·악성코드인가?

익스플로잇 자체는 악성코드(malware)가 아닙니다. 다만 사이버 범죄자들은 익스플로잇을 이용해 바이러스, 랜섬웨어, 스파이웨어 같은 악성코드를 시스템에 침투시킵니다. 해커는 익스플로잇으로 컴퓨터 시스템에 접근한 뒤, 그 위에 악성코드를 설치하는 방식으로 공격을 확장합니다. 악성코드는 유형이나 탐지 가능 여부와 무관하게 항상 악의적인 의도를 지닌다는 점에서 익스플로잇과 구분됩니다.

익스플로잇 키트(Exploit Kit)란?

익스플로잇 키트는 사이버 공격을 손쉽게 시작할 수 있도록 관리 인터페이스, 다양한 애플리케이션용 취약점 모듈, 여러 플러그인을 하나로 묶은 도구 세트입니다. 자동화되어 있기 때문에 악성코드를 유포해 수익을 창출하는 목적으로 자주 사용됩니다.

일상 언어에서의 익스플로잇 예시

동사로서의 익스플로잇은 "능력을 최대한 활용하다"라는 긍정적 의미로도 쓰입니다. 최고 컨디션의 운동선수가 상대의 약점을 파고드는 것이나 산 정상 등반이라는 위업을 이루는 것도 익스플로잇으로 표현할 수 있습니다. 물론 미디어가 비극을 이용한다는 표현처럼 부정적으로 쓰이기도 하지만, 체스 선수가 상대 수비의 허점을 활용하는 경우처럼 반드시 도덕적으로 잘못된 것은 아닙니다.

얼마나 많은 익스플로잇이 존재하는가?

2017년 8월 기준, 익스플로잇 데이터베이스(Exploit Database)에는 CVE(Common Vulnerabilities and Exposures) 번호가 매핑된 익스플로잇이 11,079건(전체의 약 26%) 등록되어 있었습니다. 연구자들은 취약점 발견, 익스플로잇 공개, 패치 배포 사이의 시간 차를 분석하며 신속한 보안 대응의 중요성을 강조해 왔습니다.

노트북·PC를 노리는 익스플로잇

개인용 컴퓨터를 겨냥한 익스플로잇은 버그와 취약점을 악용하도록 설계된 프로그램으로, 범죄자들이 인터넷을 통해 불법적으로 컴퓨터에 접근하는 데 자주 사용됩니다.

공격자는 어떻게 취약점을 악용해 공격하는가?

엄밀히 정의하면 익스플로잇은 공격자가 보안 구멍을 노리거나 악용하기 위해 사용하는 애플리케이션 코드입니다. 익스플로잇 코드가 실행되는 순간 취약한 시스템에 악성코드가 배포되며, 때로는 다른 공격 요소들과 결합해 사용되기도 합니다. 따라서 조직은 취약점을 조기에 발견하고 패치를 적용하는 것이 익스플로잇 공격을 막는 가장 근본적인 방어책임을 기억해야 합니다.