해킹과 보안
인터넷 시대가 열린 이래, 보안 사고는 꾸준히 발생하고 있습니다. 2013년 미국 포털 야후(1995년 3월에 설립된 미국의 다국적 인터넷 포털사이트 기업)는 약 30억 명의 개인정보 유출 사건으로 전 세계 사람들에게 큰 충격을 주었고, 2017년 랜섬웨어 공격은 전 세계 병원과 기업을 마비시켰습니다. 그리고 지난 4월, SK텔레콤 해킹 사태로 인해 통신 보안의 중요성이 다시금 대두되고 있습니다. 기존의 인터넷 통신과 보안 시스템의 구조는 어떠하며, 해커들은 어떻게 보안의 틈새를 파고들 수 있을까요? 그리고 차세대 보안 기술인 양자 암호 통신은 이러한 문제를 어떻게 해결할 수 있을까요? 이번 기획 특집을 통해 인터넷 통신과 보안 시스템의 원리와 허점, 이를 이용한 실제 해킹 사례, 그리고 해킹을 방지하기 위한 양자 암호 통신에 대해 자세히 알아봅시다!
글. 무은재학부 25학번 31기 알리미 이현승
우리는 메신저나 인터넷 검색을 통해 수많은 데이터를 주고받으며 살아갑니다. 그런데 이 정보들은 어떤 방식으로 전달될까요? 또 정보가 자유롭게 오가는 만큼 정보 유출의 위험을 막기 위한 기본적인 보안 장치는 무엇일까요? 이번 꼭지에서는 인터넷 통신의 기반이 되는 프로토콜인 IP부터, 인터넷 보안 기술인 방화벽과 IDS, IPS가 어떤 원리로 작동하는지, 그리고 그 한계는 무엇인지 살펴보고자 합니다.
IP(Internet Protocol)와 패킷(Packet)
인터넷은 전 세계 컴퓨터들이 연결된 거대한 네트워크입니다. 하지만 단순히 연결돼 있다고 해서 서로 소통할 수 있는 것은 아닙니다. 이때 컴퓨터 간의 소통을 가능하게 만드는 규칙이 바로 IP(Internet Protocol)1입니다. 인터넷에 연결된 각 컴퓨터를 식별하기 위해 고유한 IP 주소를 부여하고, 데이터를 해당 주소로 전달하는 것입니다. 우리가 흔히 접하는 도메인 이름(예: www.example.com)은 실제로는 DNS(Domain Name System)2를 통해 IP 주소로 변환된 후 사용됩니다. 이처럼 IP 주소 체계는 인터넷 통신의 출발점입니다.

그림 1. 패킷의 구조
인터넷에서는 데이터가 한 번에 통째로 전송되지 않습니다. 큰 데이터를 쪼개어 전송하면 네트워크 문제 등으로 인해 데이터가 소실되었을 때 재전송의 비용을 줄이고, 자원을 더 효율적으로 사용할 수 있기 때문입니다. 정보는 모두 인터넷에서 데이터를 전송하는 기본 단위인 패킷(Packet)이라는 작은 조각으로 나뉘어 전송됩니다. 각각의 패킷은 출발지와 목적지를 담은 헤더, 그리고 실제 데이터를 담은 페이로드로 구성됩니다. 이를 관리하는 것은 컴퓨터 운영체제의 핵심인 커널(Kernel)로, 하드웨어 자원을 효율적으로 운용하며, 패킷의 흐름을 조율해 전송의 안정성을 유지하는 데 관여합니다. 커널이 하드웨어 자원을 관리하지만, 사용자와 직접 소통하지는 않습니다. 그래서 쉘(Shell)3과 같은 시스템 프로그램4이 그 사이에서 명령을 전달하는 다리 역할을 합니다.

그림 2. 패킷의 이동 경로
그렇다면 패킷은 네트워크 속에서 어떻게 길을 찾아 이동할까요? 패킷이 목적지까지 도달하기 위해서는 중간에 여러 라우터(Router)를 거칩니다. 라우터는 패킷이 어떤 경로를 따라야 가장 효율적으로 도착할 수 있는지를 계산하는 장치로, 일종의 네트워크 내비게이션 역할을 합니다. 그러나 이러한 경로 설정 과정에서도 보안 취약점이 발생할 수 있습니다. 모든 패킷이 정상적인 사용자에 의해 전송되는 것은 아니기 때문입니다. 이러한 기본 네트워크 구조는 데이터를 목적지까지 전달하는 데 초점을 맞추고 있을 뿐, 그 과정에서 발생할 수 있는 보안 위협을 식별하거나 차단하는 기능은 갖추고 있지 않습니다. 따라서 악의적인 트래픽5이나 공격을 걸러내기 위해서 방화벽이라는 별도의 보안 시스템이 필수적입니다.
방화벽의 계층 구조와 동작 방식
방화벽은 미리 정해진 규칙에 따라 네트워크를 허용하거나 차단해 외부 악성 트래픽으로부터 내부를 보호하는 장치로, 네트워크 통신 과정을 표준화한 OSI 7계층 모델을 기반으로 작동합니다. OSI 7계층 모델은 응용, 표현, 세션, 전송, 네트워크, 데이터 링크, 물리 계층으로 구성되며, 데이터가 통신 경로를 따라 이동하며 각 계층의 기능을 거칩니다. 특히, 네트워크 계층은 데이터를 보내고 받을 컴퓨터의 IP 주소를 관리하며 전송 계층은 어떤 서비스인지 구분하는 포트 번호를 다룹니다. 응용 계층은 실제 사용자가 주고받는 데이터와 서비스를 처리하는 단계입니다. 방화벽은 이 모델을 기반으로 데이터 흐름을 판단해 위험한 연결은 차단하고 안전한 통신만 허용합니다.

그림 3. OSI 7계층 모델
방화벽의 가장 단순한 방식은 패킷 필터링으로, OSI 3계층(네트워크 계층)과 4계층(전송 계층)에서 IP 주소나 포트 번호만으로 통신을 제어합니다. 즉, 데이터 수신자와 송신자의 주소만을 이용해 악성 트래픽을 탐지하는 방식입니다. 하지만 패킷 내부를 보지 못해 겉보기에 정상인 비정형 트래픽을 걸러내기 어렵습니다. 이를 보완한 상태 추적 방식6은 트래픽 히스토리 등의 통신 상태를 저장해 비정상 흐름을 감지하지만, 숨겨진 악성 내용은 식별하기 어렵습니다. 더 나아가 애플리케이션 게이트웨이7는 OSI 7계층(응용 계층)까지 분석해 메시지 내용 기반의 정밀 필터링이 가능합니다. 최신 방화벽은 여러 방식을 조합한 하이브리드 방식8을 사용하지만, 정해진 규칙에 의존하기 때문에 새로운 공격이나 고도로 위장된 트래픽 탐지에 한계가 있습니다.
이러한 방화벽의 구조적 한계는 인터넷 통신의 근본적 방식, 즉 IP와 패킷 기반의 설계와 밀접한 관련이 있습니다. 앞서 설명했던 패킷 전송 구조 자체는 트래픽의 목적이나 내용을 판단하지 않기 때문에, 공격자가 보낸 비정상 패킷 역시 아무런 제약 없이 라우터를 통과해 최종 목적지에 도달할 수 있습니다. 바로 이 지점에서 방화벽을 넘어서는 IDS와 IPS의 필요성이 대두됩니다.
침입 탐지와 방지 시스템
방화벽이 트래픽 흐름을 통제하는 1차 방어선이라면, IDS(침입 탐지 시스템)와 IPS(침입 방지 시스템)는 그 틈새를 파고드는 위협을 찾아내는 정밀 센서 역할을 합니다. IDS는 네트워크 활동을 감시해 악성 행위를 탐지하고 관리자에게 경고하지만, 스스로 위협을 차단하지는 않습니다. 반면 IPS는 탐지와 동시에 자동 차단 기능을 수행하여, 사람이 개입하기 전에 실시간으로 공격을 저지하는 능동적인 시스템입니다. 두 시스템은 주로 시그니처 기반 탐지와 이상 징후 기반 탐지 방식을 사용합니다. 시그니처 기반 탐지 방식은 기존에 알려진 공격 패턴 데이터베이스와 비교하여 일치하는 활동을 빠르고 정확하게 탐지하지만, 제로데이 공격9을 비롯한 새로운 유형의 공격에는 취약합니다. 이상 징후 방식은 정상적인 시스템 또는 네트워크 활동 패턴을 학습한 후, 이 패턴에서 벗어난 비정상적인 행동을 탐지하여 신종 위협까지 포착할 수 있지만, 오탐(False Positive) 가능성이 높다는 단점이 있습니다.
하지만 전통적인 IDS와 IPS 모두 탐지 및 차단 규칙에 의존하거나 정상 패턴 학습에 기반하기 때문에, 새롭게 등장하는 정교한 공격을 완벽하게 탐지할 수 없습니다. 결국 방화벽의 한계를 보완하는 IDS와 IPS조차도 모든 위협에 대한 완전한 해답이 될 수는 없다는 것입니다. 이는 우리가 신뢰하는 보안 체계가 다층적 설계와 지속적인 기술 혁신 없이는 결코 완전할 수 없음을 보여줍니다.
방화벽, IDS, IPS는 해킹의 ‘기본’을 막기 위한 장치들이지만, 이제는 그것만으로 충분하지 않습니다. 이번 꼭지를 통해 기존 보안 체계의 구조적 한계를 짚어보았다면, 다음 꼭지에서는 실제 사례를 통해 해커가 그 허점을 어떻게 집요하게 파고들었는지 함께 살펴봅시다!
[각주]
1. 인터넷에서 컴퓨터 간 데이터를 주고받기 위해 사용하는 핵심 통신 규약으로, 데이터가 오가는 경로를 관리하고 제어하는 역할을 함
2. 사람이 기억하기 쉬운 도메인 이름을 컴퓨터가 이해하는 IP 주소로 변환하여 인터넷 통신을 가능하게 하는 시스템
3. 사용자가 운영체제에 명령을 내리고 그 결과를 받을 수 있도록 해주는 인터페이스 프로그램
4. 컴퓨터 시스템의 하드웨어와 소프트웨어를 관리하고 운영하는 데 필요한 핵심 프로그램들을 통칭하는 말
5. 네트워크 상에서 오가는 데이터의 총량 또는 흐름으로, 사용자의 정상적인 활동으로 발생하는 정상 트래픽과 공격 시도 등 비정상적인 활동으로 발생하는 비정상 트래픽, 그리고 구분이 모호한 비정형 트래픽으로 구분
6. 통신 연결의 상태 정보를 기억하고 관리하며 패킷을 필터링하는 방식으로, 연결의 시작부터 끝까지 일관성을 확인하여 비정상적인 연결을 탐지하는 데 효과적임
7. OSI 7계층(응용 계층)까지 올라가 패킷의 실제 데이터 내용까지 분석하여 필터링하는 방식으로, 특정 애플리케이션 프로토콜의 구조를 이해하고 정밀한 보안 정책을 적용할 수 있음
8. 여러 종류의 방화벽 기술(패킷 필터링, 상태 추적, 애플리케이션 게이트웨이 등)을 조합하여 사용하는 방식으로, 다양한 계층에서 복합적인 보안 기능을 제공함
9. 소프트웨어의 취약점이 발견된 날(Zero Day)에 이루어지는 공격으로, 해당 취약점에 대한 패치나 보안 대책이 마련되지 않은 상태에서 이루어지기 때문에 방어하기 어려움
[그림 출처]
그림 1-2. Cona-tus. “[Network] IP(Internet Protocol)와 패킷(Packet) 이해하기.” 「tistory」. 2023년 9월 9일. https://co-natus.tistory.com/entry/IP-Packet
그림 3. effortDev. “OSI 7계층이란?, OSI 7계층을 나눈 이유.” 「tistory」. 2018년 8월 15일. https://shlee0882.tistory.com/110
[참고 자료]
1. Khraisat, Ansam, et al. “Survey of intrusion detection systems: techniques, datasets and challenges.” Cybersecurity 2.1 (2019): 1-22.
2. 주식회사 엘엑스. “보안솔루션 IPS IDS란? 그 차이점 알아보기.” 「네이버 블로그」. 2024년 6월 25일. https://blog.naver.com/ekmin7608/223490791536
3. Cona-tus. “[Network] IP(Internet Protocol)와 패킷(Packet) 이해하기.” 「tistory」. 2023년 9월 9. https://co-natus.tistory.com/entry/IP-Packet
4. effortDev. “OSI 7계층이란?, OSI 7계층을 나눈 이유.” 「tistory」. 2018년 8월 15일. https://shlee0882.tistory.com/110.
5. 정보통신기술용어해설, “HTTP HyperText Transfer Protocol” 「정보통신기술용어해설」. 2023년 10월 2일. http://www.ktword.co.kr/test/view/view.php?nav=2&m_temp1=648&id=1283