III. 네트워크 보안 - 1
2026년 03월 26일 15시
카테고리 -
LECTURE,
인터넷보안
인터넷보안(황승연) 4주차 강의내용
1. 네트워크 구조
1) 네트워크
- 두 대 이상의 컴퓨터 또는 장치가 서로 연결되어 데이터를 주고받는 시스템.
- 네트워크의 주요 목적
- 데이터 공유: 파일, 메시지, 애플리케이션 등을 주고받음
- 리소스 공유: 프린터, 서버 등 공용 자원 사용
- 통신: 이메일, 메신저, 영상 통화 등
- 네트워크의 기본 구성 요소
- 호스트(Host): 데이터를 송수신하는 장치(컴퓨터, 스마트폰 등)
- 라우터(Router): 네트워크 간 데이터를 전달하는 장치 (공유기)
- 스위치(Switch): 네트워크 내부에서 데이터를 분배하는 장치 (공유기에 포함)
2) 네트워크 보안
- 조직의 네트워크와 네트워크를 통해 접근 가능한 자원을 보호하기 위해 적용되는 정책, 기술, 그리고 관리적 절차를 의미
- 권한이 없는 사용자가 네트워크 및 관련 자원에 접근하는 것을 차단하고 네트워크 인프라 전반에 걸쳐 안전한 통신 환경을 유지하기 위한 기본적인 방어 체계를 포함
- 공격자는 TCP/IP와 같은 통신 프로토콜의 구조적 취약점을 이용하여 비인가 접근, 자원 파괴, 서비스 방해 등의 공격을 시도할 수 있음
- 네트워크 보안은 이러한 위협으로부터 시스템과 자원을 보호하는 것이 목적
3) 네트워크 보안의 중요성
- 네트워크의 모든 구성 요소가 공격의 대상이 될 수 있다는 점에서 비롯됨
- 라우터, 패킷, 프로토콜, 사용자, 웹 사이트 등
- 현대의 네트워크 환경에서는 네트워크 자체 뿐만 아니라, 네트워크에 연결된 다양한 시스템과 자원까지도 함께 위협에 노출되기 때문에 이를 종합적으로 보호하는 것이 매우 중요
- 네트워크 보안은 승인되지 않은 사용자나 프로그램이 네트워크 및 연결된 디바이스에 접근하는 것을 차단하기 위한 다양한 보안 도구와 관리적·기술적 조치를 통해 구현됨
4) 네트워크 프로토콜 스택
- OSI(Open Systems Interconnection) 7 Layers
- 네트워크 통신 과정을 계층별로 나누어 설명하는 국제 표준 네트워크 모델
- 네트워크 상에서 데이터가 송신자에서 수신자로 전달되는 과정을 구조적으로 이해할 수 있도록 설계
- 다만, OSI 7계층은 실제 네트워크에서 그대로 구현되어 사용되는 모델이 아니라, 네트워크 구조를 분석하고 설계하기 위한 개념적(이론적) 모델
- 실제 네트워크 환경에서는 TCP/IP 모델 사용
5) OSI 7 계층별 특징
- 물리 계층
- 네트워크 장치 간의 물리적 연결을 관리하고 데이터를 전기 신호 또는 광 신호로 변환하여 전송
- Ethernet 케이블, WI-FI 등
- 데이터 교환 방식
| Subclass |
역할 |
예 |
| Model |
완성된 신경망 전체 / 전체 신경망 구조 |
Sequential, Functional Model |
| Layer |
신경망을 구성하는 한 층 / 신경망의 구성 단위 |
Dense, Conv2D, LSTM |
| Loss |
예측과 정답의 차이를 계산 / 학습목표 정의 |
MSE, CategoricalCrossentropy |
| Optimizer |
가중치 업데이트(학습 엔진) 신경망이 손실(loss)을 최소화하기 위해 가중치(weight)를 업데이트하는 알고리즘 |
- SGD: 가장 기본적인 경사하강법(느리지만 안정적)
- Momentum: SGD에 관성 추가 → 더 빠르게 수렴
- RMSProp: 학습률을 자동 조정
- Adam: RMSProp + Momentum 결합 → 가장 널리 사용
|
- 데이터 링크 계층
- 같은 네트워크(LAN) 내에서 장치 간 데이터 전송과 오류 제어를 담당
- 물리 계층에서 전송된 데이터를 프레임(Frame)으로 나눠 전송
- 네트워크 계층
- 데이터를 목적지까지 전달하기 위한 라우팅을 담당하며 IP 주소를 사용하여 네트워크 간 데이터를 전달
- 주요 기능
- (1) 라우팅: 데이터가 최적의 경로를 통해 전달되도록 경로를 설정
- (2) IP 주소 관리: 네트워크 내 및 네트워크 간 통신을 위해 IP 주소를 사용
- (3) 패킷 생성 및 전송: 데이터를 패킷(Packet) 단위로 나누어 전달
- 전송 계층
- 데이터 전송의 신뢰성을 보장하고 데이터를 작은 단위(세그먼트)로 나누어 전송
- 종단 간 통신(End-to-End Communication)
- 주요 기능
- (1) 데이터 분할 및 조립: 데이터를 세그먼트로 나누고 수신 측에서 이를 재조립
- (2) 오류 검출 및 복구: 데이터 전송 중 발생한 오류를 감지하고 재전송
- (3) 흐름 제어: 송신자와 수신자 간 데이터 전송 속도를 조율
- (4) 포트 번호 관리: 프로세스를 식별하기 위해 송신/수신 포트 번호 사용
- 세션계층
- 송신자와 수신자 간의 세션(연결)을 설정, 유지, 종료하며 데이터의 동기화와 교환을 관리
- 주요 기능
- (1) 세션 설정: 통신 시작 시 연결을 설정
- (2) 세션 유지 및 동기화: 데이터가 올바른 순서로 전달되도록 관리
- (3) 세션 복구: 통신 중 연결이 끊어지면 재연결 시도
- 표현계층
- 송신자와 수신자가 데이터를 동일하게 이해할 수 있도록 데이터의 형식을 변환하고, 암호화 및 압축을 수행
- 서로 다른 시스템 간에도 데이터가 올바르게 해석될 수 있도록 표준화된 형식으로 변환하는 역할
- 응용 계층
- 사용자가 네트워크와 상호작용할 수 있도록 인터페이스를 제공하며 응용 프로그램 수준에서 네트워크 서비스를 지원
- 주요 기능
- (1) 사용자 요청 처리: 웹 브라우저, 이메일 클라이언트 등 애플리케이션에서의 요청 관리
- (2) 네트워크 서비스 제공: 데이터베이스 접속, 파일 전송, 원격 접속
- (3) HTTP, FTP 등 서비스 구현
6) TCP/IP 모델
- TCP/IP 계층 구조
- 인터넷에서 실제로 사용되는 네트워크 통신 구조를 설명하기 위한 모델
- 데이터를 송신자에서 수신자까지 전달하는 과정을 4개의 계층으로 나누어 정의한 실용적인 네트워크 모델
- 네트워크 접속 계층
- 네트워크 인터페이스 계층
- 데이터링크 + 물리 계층 역할 포함
- 네트워크 접속 계층의 송신 측 컴퓨터에서는 상위 계층에서 전달받은 패킷에 물리적 주소인 MAC 주소 정보가 있는 헤더를 추가하여 프레임을 생성
- 그 프레임을 하위 계층인 물리 계층에 전달.
- 네트워크 계층
- 인터넷 계층
- 서로 다른 네트워크 간 데이터 전달을 담당
- IP 주소를 기반으로 라우팅 수행
인터넷 계층 프로토콜 정의
| 프로토콜 종류 |
정의 |
| IP(Internet Protocol) |
비 연결형 데이터 전달 |
| ICMP(Internet Control Message Protocol) |
호스트나 라우터의 상황 및 오류에 대한 정보 전달 |
| OSPF(Open Shortest Path First Protocol) |
동일한 시스템 내에 있는 라우터 간에 라우팅 정보 전달 |
| RIP(Routing Information Protocol) |
동일한 시스템 내에 있는 라우터 간에 라우팅 정보 전달 |
| BGP(Border Gateway Protocol) |
상이한 시스템의 경계에 있는 라우터 간에 라우팅 정보 전달 |
| IDRP(InterDomain Routing Protocol) |
상이한 시스템에 있는 라우터 간에 라우팅 정보 전달 |
| IGMP(Internet Group Management Protocol) |
멀티캐스팅 지원 |
| ARP(Address Resolution Protocol) |
IP 주소를 이더넷 주소로 변환 |
(1) IP(Internet Protocol)
(2) ICMP(Internet Control Message Protocol)
- 인터넷 계층에서 오류 메시지 전달과 네트워크 상태 확인을 위해 사용되는 프로토콜
- ICMP는 데이터를 직접 전송하기 위한 프로토콜이라기보다는 IP 통신을 보조하는 제어용 프로토콜
- 주요 역할
- 목적지에 도달할 수 없는 경우 오류 메시지 전달
- 전송 중 시간 초과가 발생했을 때 알림
- 네트워크 연결 상태 확인
- 라우팅 과정에서의 문제 진단
- 예시
- ping 명령을 통해 ICMP의 Echo Request 메시지를 보내고 상대가 Echo Reply를 보내는지 확인함으로써 네트워크 연결 상태를 점검
(3) IGMP(Internet Group Management Protocol)
- 멀티캐스트 그룹 관리를 위해 사용되는 프로토콜
- 멀티캐스트: 하나의 송신자가 여러 수신자에게 동시에 데이터를 전송하는 방식
- 어떤 호스트가 특정 멀티캐스트 그룹에 속해 있는지 관리하는 데 사용
- 주요 역할
- 호스트가 특정 멀티캐스트 그룹에 가입할 수 있게 함
- 더 이상 필요하지 않을 때 그룹에서 탈퇴할 수 있게 함
- 라우터가 네트워크 상에서 어떤 멀티캐스트 그룹이 필요한지 파악하도록 도움
- 예시
- IPTV 시청 시 특정 채널을 선택하면, 사용자의 장치는 해당 멀티캐스트 그룹에 가입하고 라우터는 그 그룹에 필요한 데이터만 전달
- 화상회의 시스템이나 실시간 방송 시스템에서도 여러 사용자가 동일한 데이터를 받을 때 활용
(4) ARP(Address Resolution Protocol)
| 구분 |
TCP |
UDP |
| 데이터전송형태 |
커넥션형 데이터전송은 데이터 링크를 확립하고 나서 행한다. |
커넥션리스형 데이터전송은 데이터 링크를 확립하지 않고 보낸다. |
| 신뢰성 |
송신중에 데이터 링크를 유지하고 있으므로 신뢰성이 높다. |
송신중의 데이터 분실이나 순서 에러에 관여하지 않기 때문에 신뢰성이 낮다. |
| 데이터전송속도 |
데이터 흐름제어나 순서제어를 하기 때문에 전송속도가 늦어진다. |
흐름제어나 순서제어를 하지 않는 만큼 전송속도의 저하를 피할 수 있다. |
| 데이터전송포맷 |
각종 제어를 위한 헤더/트레일러(오버헤드)가 커진다. |
오버헤드는 최소화된다. |
- 포트(Port)
- 네트워크에서 컴퓨터나 장치에서 실행 중인 특정 프로세스(프로그램)를 식별하기 위해 사용되는 번호
- 네트워크 상에서 장치를 식별하는 IP 주소와 장치 내에서 실행 중인 특정 애플리케이션을 식별하는 포트 번호를 결합하여 데이터를 전달(IP:Port)
- IP 주소가 장치를 식별한다면, 포트는 장치 내의 애플리케이션(프로세스)을 식별
| 포트 범위 |
설명 |
예시 |
0~1023 (Well-known Ports) |
표준화된 네트워크 서비스에 예약된 포트 번호 |
HTTP(80), HTTPS(443), FTP(21), SSH(22) |
1024~49151 (Registered Ports) |
특정 애플리케이션에서 사용하도록 등록된 포트 번호 |
MySQL(3306), PostgreSQL(5432), Redis(6379) |
49151~65535 (Dynamic/Private Ports) |
클라이언트가 동적으로 사용하는 포트 번호 |
임시 포트(송신 시 자동 할당) |
- 응용계층
- 사용자에게 서비스를 제공
- 실제 데이터를 생성 및 사용
- 응용 서비스를 위한 다양한 프로토콜 제공
| 프로토콜 종류 |
정의 |
| HTTP(Hypertext Transfer Protocol) |
Web 페이지 전달 |
| SMTP(Simple Mail Transfer Protocol) |
전자 우편 배달 |
| Telnet |
원격 로그인 |
| FTP(File Transfer Protocol) |
양방향 파일 전달 |
| Ping |
호스트 간에 연결성 시험 |
| DNS(Domain Name System) |
호스트 이름을 IP로 변환 |
| NFS(Network File System) |
원격 파일 액세스 |
| SNMP(Simple Network Management Protocol) |
네트워크 관리 |
| NTP(Network Time Protocol) |
네트워크에 정확한 시간 제공 |
| Kerberos |
클라이언트와 서버간의 인증 기능 제공 |
2. 네트워크 보안 프로토콜
1) 데이터 링크 계층의 보안 프로토콜
- 데이터링크 계층에서는 네트워크 상에서 데이터를 안전하게 전달하기 위해 터널링 및 암호화를 이용한 보안 프로토콜이 사용됨
- 주로 VPN(Virtual Private Network) 환경에서 활용
- PPTP (Point-to-Point Tunneling Protocol)
- L2TP (Layer 2 Tunneling Protocol)
2) 네트워크 계층의 보안 프로토콜
- IPSec (Internet Protocol Security)
- 인터넷 계층에서 동작하는 보안 프로토콜로, IP 기반 통신에서 데이터의 기밀성, 무결성, 인증을 제공하기 위한 프로토콜
- 하나의 프로토콜이 아니라, 여러 보안 기능을 제공하는 프로토콜 집합
- ESP (Encapsulating Security Payload)
데이터의 암호화와 무결성, 인증을 모두 제공하는 프로토콜
- 동작 모드
- 전송 모드
원래 IP 헤더는 유지하면서 데이터 부분만 보호 (빠름)
- 터널 모드
전체 IP 패킷을 암호화하여 새로운 IP 헤더로 감싸서 전송 (느림)
VPN에서 주로 사용
3) 전송 계층의 보안 프로토콜
- SSL(Secure Socket Layer)
- 클라이언트와 서버 간의 통신을 암호화하여 데이터의 기밀성, 무결성, 인증을 제공하는 프로토콜
- 인터넷에서 주고받는 데이터를 제3자가 도청하거나 변조하지 못하도록 보호하는 역할
- SSL의 후속 버전인 TLS가 주로 사용
- 예시
HTTPS – HTTP + SSL/TLS
4) 응용 계층의 보안 프로토콜
- PGP(Pretty Good privacy)
- PGP는 이메일 내용을 암호화하고 송신자의 신원을 확인할 수 있도록 하는 보안 기술
- MIME(Multipurpose Internet Mail Extensions)
- 이메일에서 다양한 형식의 데이터를 전송할 수 있도록 확장한 표준
- 기존 이메일은 텍스트만 전송 가능했지만, MIME을 통해 이미지, 동영상, 파일 등의 데이터를 함께 전송 가능
- S/MIME(Security Services for Multipurpose Internet Mail Extension)
MIME에 보안 기능을 추가한 프로토콜로, 이메일의 암호화와 인증을 제공