<네트워크 개요>
1. 프로토콜(Protocol)
- 데이터통신에 있어서 효율적이고 안전하게 정보 주고받기 위해 송/수신자측 또는 네트워크 내에서 사전에 약속한 규약
- 프로토콜은 무엇을, 어떻게, 언제 통신할 것인가를 규정
- 구문(Syntax) : 데이터의 구조나 형식을 가리키며, 데이터가 표현되는 순서를 의미
- 의미(Semantics) : 비트의 영역별 의미, 특정 패턴을 어떻게 해석하고 어떤 동작을 할 것인가를 결정
- 타이밍(Timing) : 데이터를 언제 얼마나 빠른 속도로 전송할 것인가를 의미
2. OSI(Open System Interconnection) 모델
(1) 개요
- 개방 시스템은 기반 구조와 관계없이 시스템 간의 통신을 제공하는 프로토콜의 집합이다.
- 하드웨어나 소프트웨어 기반의 논리적인 변화에 대한 요구없이 서로 다른 시스템 간의 통신 원활하게 하는게 목적
(2) 구성
계층 | 특징 | 데이터 종류 | 예 | |
7 | 응용 (Application) |
각종 응용서비스 제공 네트워크 관리 |
메시지(Message) | FTP, TFTP, SNMP, SMTP, Telnet, HTTP, DNS, DHCP |
6 | 표현 (Presentation) |
네트워크 보안(암, 복호화) 압축/해제, 포맷 변환 수행 |
ASC2, Mpeg, jpg, MIME | |
5 | 세션 (Session) |
소켓 프로그램 동기화 세션 연결/관리/종료 |
SQL, RPC | |
4 | 전송 (Transport) |
데이터 전송보장 흐름제어 Quality Of Service(QOS) |
세그먼트(Segment) | TCP, UDP |
3 | 네트워크 (Network) |
통신경로 설정, 중계기능 라우팅 |
패킷(Packet) | IP, ICMP, IGMP, ARP, RARP, NAT, RIP, BGP |
2 | 데이터 링크 (Data Link) |
오류제어, Frame화 매체제어(MAC) 에러검출, 에러정정, 흐름제어 |
프레임(Frame) | 이더넷, PPP, SLIP, WLAN |
1 | 물리 (Physical) |
물리적 연결설정, 해제 전송방식, 전송매체 |
비트 스트림(Bit Stream) | 기계적, 전기적, 절차적 규격 |
- 1~3 : 네트워크 지원 계층, 4 : 전송 계층, 5~7 : 사용자 지원 계층
- 이더넷 물리주소 = MAC 주소(크기 48비트, 6Byte)
- 전송 계층은 16비트(2Byte) 포트주소를 사용
3. TCP/IT 프로토콜
(1) 구조
OSI 7 계층 | TCP/IP 계층 | 설명 |
응용 | 응용 | 응용프로그램이 네트워크에 접근가능하도록 인터페이스 기능 수행 |
표현 | ||
세션 | ||
전송 | 전송 | 종단간 통신서비스 제공 TCP는 데이터의 확실한 전송이 필요한 경우 UDP는 데이터의 정확한 전달을 보장하지 않는다. |
네트워크 | 인터넷 | IP는 호스트 네트워크 주소 관리 패킷은 라우팅하는 역할 ARP는 네트워크 호스트들의 하드웨어 주소 얻는데 사용 ICMP는 패킷 전송에 관한 오류메시지 처리 |
데이터 링크 | 링크 | 전송 매체에 프레임을 송수신하는 역할 |
물리 |
(2) 캡슐화
- 발신지 호스트에서 캡슐화, 도착지 호스트에서 역캡슐화, 라우터에서 캡슐화와 역캡슐화 이루어 진다.
- 그러나 데이터 링크 계층 스위치에서는 캡슐화, 역캡슐화X
<TCP/IP>
1. 물리 계층
- 호스트 대 라우터, 라우터 대 호스트, 라우터 대 라우터 통신
2. 데이터 링크 계층
- 노드 대 노드 통신
- LAN과 WAN은 라우터를 통해 연결
3. 네트워크 계층
(1) 개요
- 라우팅(routing) : 출발지에서 목적지까지의 경로를 결정하는 것
- 포워딩(forwarding) : 라우터의 입력 포트에서 출력포트로 패킷을 이동시키는 것
- 라우터가 일반적으로 사용하는 의사결정 테이블은 라우팅 테이블 또는 포워딩 테이블이다.
(2) IPv4 주소
클래스 A | 첫번째 비트가 0인 IP 주소, 첫 바이트의 나머지 7비트가 네트워크 주소, 하위 세 바이트는 호스트 주소 큰 규모의 호스트를 갖는 기관에서 사용. 2^24 - 2개의 호스트 수용가능 |
클래스 B | 처음 두 비트 값이 10인 주소, 첫 바이트의 나머지 6비트와 두번째 바이트가 네트워크 주소, 마지막 두 바이트가 호스트 주소. 따라서 2^16 - 2개의 호스트 수용가능 |
클래스 C | 처음 세 비트 값이 110인 주소, 세번째 바이트까지 네트워크 주소, 마지막 한 바이트만 호스트 주소 작은 규모의 호스트에서 사용, 네트워크마다 2^8 - 2개의 호스트 수용가능 |
클래스 D | 처음 네 비트 값이 1110인 주소, 네트워크 주소와 호스트 주소의 구분이 없다. 전체 주소가 멀티캐스트용 |
클래스 E | 처음 네 비트 값이 1111인 주소, 추후 사용을 위해 예약된 주소 |
- 서브네팅과 슈퍼네팅 : 주소고갈을 완화하기 위해
Subnet mask | 11111111 11111111 1111111 111 0000 -> n = 24 + 3 = 27 |
Default mask | 11111111 11111111 11111111 0000000 -> n = 24 |
Supernet mask | 11111111 11111111 1111 -> n = 24 - 3 = 21 |
- CIDR 표기법(슬래시 표기법) : /n -> prefix length
- VLSM(가변 길이 서브넷 마스킹) : 서브네팅을 여러번 반복하여 크기가 다른 여러 서브네트워크 계층으로 구분
(3) 프로토콜
1) 인터넷 프로토콜(IP)
- IPv4는 비신뢰적, 비연결형, 최선형 전송 서비스이다. 신뢰성 중요할 때는 TCP같은 신뢰성 있는 전송 계층 프로토콜과 함께 사용하여야 한다.
2) ARP(Address Resolution Protocol)
- ARP 요청 메시지 : 특정 IP주소에 대한 물리주소를 요구, 호스트는 ARP 요청메시지를 보낼 때, 수신자측 물리주소를 모르기에 브로드캐스트로 전송
- ARP 응답 메시지 : 물리주소를 알림(유니캐스트로 전송)
- RARP(Reverse) : 물리주소의 해당 IP주소를 얻고자 할 때 사용, 디스크와 같은 저장장치가 없는 호스트에서 주로 사용
- GARP(Gratuitous) : 자신의 MAC정보를 동일 네트워크상의 다른 장비들에게 알려 ARP Cache 갱신 목적, IP 충돌감지
3) ICMPv4(Internet Control Message Protocol)
- 오류보고 메시지 : 라우터(목적지)나 호스트가 IP패킷 처리과정에서 탐지하는 문제를 보고
- 질의 메시지 : 쌍으로 생성되는데, 호스트나 네트워크 관리자가 라우터나 다른 호스트로부터 특정 정보 획득 위함
Echo Request | 원하는 호스트로의 IP연결을 확인하기 위해 사용되는 간단한 메시지(질의 메시지 해당) |
Echo Reply | ICMP Echo Request에 대한 응답 메시지(질의 메시지 해당) |
Redirect | 재지정, 잘못된 라우터 사용시 |
Source Quench | 근원지 억제, 네트워크 충돌이 발생하여 데이터그램 폐기되었음을 알림) |
Destination Unreachable | 목적지 도달 불가, 라우터나 호스트에 의해 보내진다. |
Time Exceeded | 시간경과, 타임아웃이 발생하여 IP패킷이 폐기되었음을 알림 Code0 : 최종목적지 도착 전 TTL값이 0이 됨, Code1 : 패킷재조합 과정에서 타임아웃 |
Parameter Problem | 데이터그램 헤더에 문제가 있거나(코드0), 어떤 옵션이 없거나 의미 알 수 없는 경우(코드1) |
4) IPv6
- 특징 : 확장된 주소공간(128비트 주소체계를 사용), 새로운 헤더 포맷, 향상된 서비스 지원, 보안 기능
구분 | IPv4 | IPv6 |
주소 길이 | 32비트 | 128비트 |
표시방법 | 8비트 4부분 10진수 | 16비트 8부분 16진수 |
주소개수 | 약 43억개 | 2^128개 |
주소할당방식 | A,B,C,D등 클래스단위 비순차 할당 | 네트워크 규모, 단말기 수에 따라 순차할당 |
브로트캐스트 주소 | 있음 | 없음(대신 로컬범위 내 모든 노드에 대한 멀티캐스트 주소 사용) |
헤더 크기 | 가변 | 불변 |
QOS | 미흡 | 제공 |
보안 | IPSec 등 별도 설치 | IPSec 자체지원, 네트워크 계층에서의 종단간 암호화 제공 |
서비스 품질 | 제한적 품질 보장 | 향상된 품질 보장(플로우 레이블 필드) |
- 유니캐스트 주소(unicast address) : 단일 인터페이스를 정의한다. 유니캐스트로 전송한 패킷은 특정 컴퓨터에만 전달
- 애니캐스트 주소(anycast) : 단일 주소를 공유하는 컴퓨터 집합으로 정의, 가장 가까이 있는 그룹 구성원에게 전송
- 멀티캐스트 주소(multicast) : 컴퓨터 그룹을 정의, 그룹의 각 컴퓨터가 복사본을 수신
- IPv4에서 IPv6로 변환
이중 스택 | 모든 인터넷이 IPv6를 사용하기 전까지 시스템은 IPv4, IPv6 둘다 지원 |
터널링 | IPv4 지역으로 들어서면 IPv6 패킷은 IPv4 패킷으로 캡슐화되고, 이 지역 벗어날 때 역캡슐화 |
헤더 변환 | 인터넷의 대부분이 IPv6로 변경되고 일부만 IPv4사용할 경우 헤더 변환을 통해 헤더의 형태를 완전히 변경 |
4. 전송 계층
(1) UDP(User Datagram Protocol)
- 프로세스 대 프로세스 통신 : IP주소와 포트번호 결합인 소켓주소를 이용하여 통신 제공, 순서번호X
- 비신뢰성 : ACK를 보내지 않으며 패킷이 목적지에 도달하는 것을 보장하지 않는다.
- 비연결형 : UDP에 의해 보내지는 각 사용자 데이터그램은 독립된 데이터그램이라는 것을 의미, 핸드셰이킹X
- 흐름제어 : 없다.
- 오류제어 : 검사합을 제외하고는 오류제어 없다.
- 혼잡제어 : 없다.
- 스트리밍 비디오나 브로드캐스트 등 신뢰성 불필요한 전송에서 사용
- 더 적은 자원을 사용하고 TCP보다 빠르다.
(2) TCP(Transmission Control Protocol)
- 프로세스 대 프로세스 통신 : UDP처럼 포트번호 사용하여 통신제공, 순서번호 사용하여 순차적으로 수신되도록 한다.
- 신뢰성 : 패킷이 목적지 도달할 때마다 ACK 수신하여 확인
- 연결성 : 연결지향적이며, 핸드쉐이킹 과정을 수행, 목적지 컴퓨터와 가상연결을 형성
- 전이중 통신 : 데이터는 동시에 양방향으로 전달될 수 있다.
- 송신 및 수신 버퍼 : 흐름 및 오류제어
- 혼잡제어 : 목적지 컴퓨터가 처리 어렵거나 전송속도 느려질 경우 통보
- 신뢰성 있는 전송이 필요할 때 사용
- 상당한 양의 자원 사용하며 UDP보다 느리다.
5. 응용 계층
(1) HTTP(Hypertext Transfer Protocol)
- 웹으로부터 웹페이지를 가져오기 위해 어떻게 클라이언트-서버 프로그램을 작성할지를 정의하는데 사용
- HTTP 클라이언트는 요청하고, HTTP 서버는 응답한다. 서버는 80번 포트를 사용하고 클라이언트는 임시번호 포트 사용
(2) FTP(File Transfer Protocol)
- 하나의 호스트에서 다른 호스트로 파일 복사하기 위해 TCP/IP가 제공하는 표준 프로토콜
(3) TELNET
- 최초의 원격 로그인 프로토콜 중 하나
- 암호를 비롯한 모든 데이터를 암호화하지 않은 평문으로 전송하기에 해킹에 취약 -> SSH로 대체됨
(4) DNS(Domain Name System)
- 특정 컴퓨터의 주소를 찾기 위해, 사람이 이해하기 쉬운 도메인 이름을 숫자로 된 식별 번호로 변환
<라우팅>
1. 개요
- 라우터는 동일한 전송 프로토콜을 사용하는 분리된 네트워크를 연결하는 장치로, 네트워크 계층간을 서로 연결한다.
- 라우팅은 패킷을 전송하기 위해 송신자측에서 목적지까지의 경로를 정하고, 정해진 경로를 따라 패킷을 전달하는 일련의 과정이다.
구분 | 정적 라우팅 | 동적 라우팅 |
라우팅 테이블 관리 | 수동 네트워크 변화에 대한 자동인지 불가 |
자동 네트워크 변화를 자동으로 인지하여 정보의 전송경로 재구성 |
인터페이스 | 변경이 적을 때 유리 | 변경 많을 때 유리 |
노드 추가/변경 | 운영 요원이 라우팅 작업 | 대처 용이 |
중간 경로 | 단일 경로에 적합 | 다중 경로에 적합 |
- 라우팅 프로토콜 : 네트워크의 정보를 생성, 교환, 제어하는 프로토콜을 총칭
- AS(자율시스템) : 하나의 관리 도메인에 속해 있는 라우터의 집합
- AS 내에 운영되는 라우팅 프로토콜을 IGP라 하고, AS 간에 라우팅 정보를 교환하기 위한 프로토콜을 EGP라 한다.
2. 유니캐스트 라우팅
(1) 라우팅 알고리즘
1) 거리벡터 라우팅(DV, Distance-Vector)
- 거리벡터는 최소비용트리에서처럼 목적지까지의 경로를 제공하지 않고, 목적지까지의 최소비용만 제공
- 라우터는 자신의 모든 이웃에게 자신이 가지고 있는 인터넷에 대한 정보가 불완전해도 끊임없이 알려준다.
2) 링크-상태 라우팅
- 각 노드는 각 링크의 상태를 알아야 하기 때문에 네트워크의 완전한 맵 필요
3) 경로벡터 라우팅(PV, Path-Vector)
- 소스로부터 모든 목적지까지의 경로는 스패닝 트리에 의해 결정된다. 최소비용트리가 아니다.
(2) 유니캐스트 라우팅 프로토콜
1) RIP(Routing Information Protocol)
- 각 라우터는 거리벡터 알고리즘을 사용하며 라우팅 테이블에 자율시스템 내의 다양한 네트워크에 도착하는 방법과 거리를 홉수로 저장한다.
- RIP는 여러 한계가 있지만 설정하기 쉽고 간단하여 널리 사용
- 홉 카운트 : 비용은 네트워크 수를 의미하는 홉수로 정의, 경로의 최대비용은 15, 16은 무한대
- 포워딩 테이블 : 첫번째 열은 목적지 네트워크 주소, 두번째 열은 패킷의 다음 라우터 주소, 세번째 열은 비용
- 문제점 : 느림 수렴, 라우팅 루프, 무한 세기, 작은 무한값
- 개선방안 : Triggered update(홉수 변경되면 즉시 통보), Hold down(매트릭이 무한대인 경로에 대해서는 일정시간 경로 갱신하지 않고 전체 네트워크 경로 갱신될때까지 대기), Split horizon(전송한 쪽으로 다시 되돌아가는것 막기), Route Poisoning(회신 고장을 감지하면 즉시 해당경로 매트릭을 16으로 지정하여 도달불가능 알리기)
2) RIPv2
- RIPv1의 예약필드를 사용하여 기능을 대폭 확장
- 비교 : CIDR과 VLSM의 지원, 메시지 전달(v1은 브로드캐스팅만 이용하지만 v2는 브로드캐스팅과 멀티캐스팅 지원), 인증(메시지마다 인증가능), 호환성(v1과 v2는 동일한 메시지 포맷사용)
3) IGRP(Interior Gateway Routing Protocol)
- 다섯 가지 네트워크 파라미터를 이용하여 거리벡터를 계산, 네트워크 상황에 맞게 변형 가능
- 매트릭 계산요소 : 대역폭, 지연, 신뢰도, 부하, MTU
4) EIGRP(Enhanced)
- 수렴속도 빠르며, 부분적 갱신 지원하기 때문에 적은 대역폭을 필요로 한다.
- VLSM 지원하며, DUAL 알고리즘을 이용하여 네트워크 구성 변화 발생시 패킷 손실없이 재라우팅 가능
5) OSPF(Open Shortest Path First)
- RIP와 마찬가지로 인트라 도메인 라우팅 프로토콜
- 링크상태 알고리즘을 기반, 최적경로 계산을 위해 다익스트라 알고리즘 사용
- 네트워크 변화가 생겼을 경우에만 전체 네트워크에 플러딩 과정을 수행함으로써 라우팅 정보 신속하게 갱신하여 수렴시간과 라우팅 트래픽 양을 줄였다.
- 인증 지원, IP주소 형태의 클래스 단위, 서브넷 단위, CIDR 지원
거리벡터 라우팅 프로토콜(ex RIP) | 링크상태 라우팅 프로토콜(ex OSPF) |
인접한 이웃으로부터 망 정보 수집 | 모든 라우터로부터 망 정보 수집 |
비용은 이웃 라우터와의 거리비용 더해서 구함 | 최단거리 알고리즘으로 모든 라우터에 대한 비용 계산 |
주기적인 라우팅 정보교환 | 링크상태 변화시에만 라우팅 정보교환 |
느린 수렴시간 | 빠른 수렴시간 |
모든 라우팅 테이블 값을 이웃에게 전달 | 자신에게 직접 연결된 망 정보만 전달 |
브로드캐스트 방식으로 이웃에게 라우팅 광고 | 멀티캐스트 방식으로 라우팅 광고 |
6) BGP4(Border Gateway Protocol)
- 현재 인터넷에서 사용하고 있는 유일한 인터 도메인 라우팅 프로토콜
- 경로벡터 알고리즘을 기반, 인터넷에서 네트워크 접근성에 대한 정보 제공에 알맞음
<네트워크 장비의 이해>
1. 네트워크 장비
랜카드(LAN Card) | 물리 계층, 단순히 PC 또는 네트워크에서 전달되는 정보를 상호교환할 수 있도록 만들어준다. 보통 PC내부에 장착되고 외부 케이블인 LAN선 등으로 LAN에 연결시킬 수 있다. 정식명칭은 NIC(Network Interface Card) |
허브(Hub) | 물리 계층, 3대 이상의 PC를 연결시켜주는 장비 |
리피터(Repeater) | 물리 계층, 수신된 신호를 받아 증폭시켜 재전송시킴으로써 전송거리 확장시키는 장비 |
브리지(Bridge) | 데이터링크 계층, 둘 이상의 네트워크 상호연결하는데 사용, 패킷의 목적지 읽어 전송하는 역할 |
스위치(Switch) | 데이터링크 계층, PC에 할당되는 대역폭을 확대시키기 위한 장비(리피터와 브리지 기능 결합) |
라우터(Router) | 네트워크 계층, 이기종 간 LAN 연결, LAN을 WAN에 연결, 라우팅 기능 등을 수행 |
게이트웨이(Gateway) | 응용 계층, 서로 다른 프로토콜을 사용하는 네트워크들을 상호연결시키기 위해 사용(프로토콜 전환) |
브리지 | 라우터 |
헤더정보를 읽지만 변경불가 | 각 프레임에 새로운 헤더 생성 |
MAC주소에 근거하여 전송 테이블 작성, 트래픽 필터링 | IP주소에 근거하여 라우팅 테이블 작성, 트래픽 필터링 |
모든 포트에 대해 동일한 네트워크 주소 사용 | 포트마다 서로 다른 네트워크 주소 지정 |
브로드캐스트 패킷을 전달 | 브로드캐스트 패킷 전달하지 않음 |
브리지에게 알려지지 않은 목적지 주소를 가진 트래픽도 전달 | 라우터에 알려지지 않은 목적지 주소 가진 트래픽 전달X |
- 스위치의 종류
L2 스위치(2계층) | MAC주소 기반 스위칭 |
L3 스위치(3계층) | IP주소 기반 트래픽 조절 가능 |
L4 ~ L7 스위치 | 포트번호 또는 패킷 내용을 분석 및 판단하여 패킷 경로 설정, 변환, 필터링 동작을 수행 L4 : 로드밸런싱 기능(부하분산, 상태확인, 세션유지) 차이점 : 4는 TCP/UDP 포트정보를 분석, 7은 트래픽 내용을 분석 |
- 스위칭 방법
Store-and-Forward 방식 | 들어오는 프레임을 전부 받아들인 다음에 처리를 시작하는 방식 에러발견시 프레임 버리고 재전송 요구하기 때문에 에러복구능력 뛰어남 |
Cut-Through 방식 | 앞에 들어오는 목적지 주소만을 보고 바로 목적지로 전송(처음 48비트만 본다) 처리가 빠름, 에러복구능력 떨어짐 |
Fragment-Free 방식 | 위 두 방식을 결합, 512비트를 보고 목적지로 전송 |
2. VLAN(Virtual Local Area Network, 가상 근거리 네트워크)의 구성 및 관리
(1) 개요
- VLAN은 트래픽을 제한하여 불필요한 트래픽 차단하기 위해 LAN을 논리적인 세그먼트로 분할한 것
- 데이터링크계층에서 브로드캐스트 도메인을 나누기 위해 사용
- 스위치는 VLAN 태그가 상이한 네트워크로의 접근을 근본적으로 차단하여 보안성 유지
- 관리자가 서로 다른 논리적 그룹에 대하여 서로 다른 보안정책 적용가능
- 장점 : 경비와 시간절약, 가상 워크그룹 생성, 보안
(2) 종류
- Port 기반 : 스위치 포트를 각 VLAN에 할당하는 것, 같은 VLAN에 속한 포트에 연결된 호스트들간에만 통신가능
- MAC 기반 : 각 호스트들의 MAC주소를 VLAN에 등록, 같은 VLAN에 속한 MAC주소들간에만 통신가능
- 네트워크주소 기반 : 네트워크주소별로 VLAN을 구성, 같은 네트워크 속한 호스트들간에만 통신가능
- 프로토콜 기반 : 같은 통신 프로토콜(TCP/IP, IPX/SPX등)을 가진 호스트들간에만 통신가능
<무선통신 보안>
1. 무선통신
(1) 무선 네트워크 유형과 무선랜
1) 무선 네트워크 유형
유형 | 내용 | 예 |
WPAN | 단거리 Ad Hoc 방식 또는 Peer to Peer 방식 | 노트북 간의 데이터 전송, 핸드폰과 헤드셋 같이 한 쌍을 이루는 무선 단말기, 블루투스 |
WLAN | 유선랜의 확장개념 | 무선랜 |
WMAN | 대도시 등 넓은 지역을 대상으로 높은 전송속도 | 대학 캠퍼스 등 |
2) 무선랜의 특징
장점 | 단점 |
케이블이 불필요, 이동이 자유로움 주변환경이 깔끔하게 정리 네트워크 구축비용이 절감 네트워크 유지보수 등이 용이 |
전파를 사용하는 다른 기기의 간섭 받음 유선랜에 비해 상대적으로 느린 전송속도 숨겨진 터미널 문제가 발생 |
- 구축시 고려사항 : SSID 숨김모드로 사용, 관리자용 초기 ID/PW변경, 무선 단말기 MAC 인증 수행
- 무선랜 프로토콜(IEEE)
시기 | 프로토콜 | 주요사항 | 비고 |
1997.7 | 802.11 | 2.4GHz/2Mbps | 최초의 무선랜 프로토콜 |
1999.9 | 802.11b | 2.4GHz/11Mbps | WEP 방식 보안 구현가능 |
802.11a | 5GHz/54Mbps | b와 호환X | |
2003.6 | 802.11g | 2.4GHz/54Mbps | b와 호환, 속도 향상 |
2004.6 | 802.11i | 2.4GHz/11Mbps | b에 보안성 강화 |
2007 | 802.11n | 5GHz, 2.4GHz | 최대 600Mbps 속도 |
- 무선랜 주요 구성요소 : 무선 AP(Access Point), 무선 브리지
(2) 블루투스(Bluetooth)
- 짧은 거리에 있을 때 전화기, 노트북, 컴퓨터, 카메라, 프린터 등과 같은 서로 다른 기능을 가진 장치 연결을 위해 설계된 무선 LAN 기술
- 특징 : 낮은 가격에 만족할만한 서비스 제공, 접속기기 불필요, 기기들 동시사용 가능
- 보안 취약점 : 블루프린팅(블루투스 공격장치의 검색활동), 블루스나핑(취약점 이용하여 장비의 임의파일 접근), 블루버깅(장비간 취약한 연결관리 악용), 블루재킹(스팸처럼 명함을 익명으로 퍼트리기)
2. 무선랜 보안
(1) 무선랜 취약점 분석
1) 물리적 취약점
- 도난 및 파손, 무선 AP 리셋버튼을 통한 구성설정 초기화, 전원 차단, LAN 차단
2) 기술적 취약점
- 도청, DoS, 불법 AP(Rogue AP)
- 무선 암호화 방식 : WEP(전송되는 MAC 프레임을 40비트의 WEP 공유비밀키와 임의로 선택되는 24비트 초기벡터(IV)로 조합된 총 64비트 키를 이용한 RC4 스트림 암호화방식), WPA/WPA2
- 비인가 접근 : SSID 노출(무선장비에서 WiFi 활성화 했을때 나오는 무선랜 목록), MAC주소 노출
3) 관리적 취약점
- 무선랜 장비 관리 미흡, 사용자의 보안의식 결여
(2) 무선랜 인증 기술
SSID(Service Set IDentifier) | AP를 구분하는 ID로 무선랜을 통해 전송되는 패킷 헤더에 덧붙여지는 32바이트 고유 식별자 |
MAC주소 필터링 | MAC주소는 네트워크 카드 제조사에 의해 부여된 48비트 H/W주소 |
EAP(Extensible Authentication Protocol) | 원래 PPP에서 사용할 목적으로 설계된 프로토콜, PPP 인증방식을 쉽게 확장할 수 있도록 설계 |
WEP(Wired Equivalent Privacy) | 공유키인 WEP키를 이용하여 사용자 인증 방식 |
(3) 무선랜 암호화 기술
WEP | 무선랜 데이터 스트림 보안을 제공, 대칭키구조의 암호화 알고리즘, 보안 취약하여 현재 사용X |
TKIP(Temporal Key Integrity Protocol) | WEP 암호화 알고리즘인 RC4를 사용하면서 보안상 문제점을 개선하기 위해 Key Mixing 함수, 다이나믹 WEP키, 메시지 무결성 보장을 위한 스펙을 정의한 프로토콜 |
CCMP(Counter mode with CBC-MAC Protocol) | AES 블록암호를 사용, 데이터의 기밀성과 무결성 보장하기 위한 프로토콜 |
(4) 무선랜 인증 및 암호화 복합기술
802.1x/EAP 보안 | 브리지 또는 무선 AP에서의 물리적인 포트 사용권을 획득하는 절차를 규정 |
WPA | WiFi에서 정의한 무선랜 보안규약으로서, 802.11i 일부 수용하여 만든 표준 규격 현재 사용되고 있는 하드웨어 변경없이 소프트웨어 업그레이드를 통해 지원가능 |
WPA2 | TKIP를 대체하기 위해 AES 기반을 둔 CCMP 암호화 방식을 사용, IEEE802.11i 수정안을 포함 |
3. WAP(Wireless Application Protocol)
(1) 개요
- 웹과 같은 정보 서비스에 접근하기 위해 모바일 폰과 페이저, PDA 같은 장비에서 이 표준을 사용
- 기존 모든 무선 네트워크 기술, IP, XML, HTML, HTTP 등의 인터넷 기술과 호환해서 사용 가능
- 무선 마크업 언어(WML) : 제한된 통신용량, 제한된 화면크기, 제한된 사용자 입력기능을 가진 장비에서 콘텐츠와 양식 표현을 위해 설계
- 무선 응용 환경(WAE) : 모바일 폰, 페이저, PDA와 같은 무선장비의 응용 프레임워크를 규격화
- 무선 세션 프로토콜(WSP) : 응용프로그램에 두가지 세션 서비스를 위한 인터페이스를 제공
- 무선 트랜잭션 프로토콜(WTP) : 사용자 에이전트와 응용 서버 사이의 브라우징이나 전자상거래 트랜잭션과 같은 동작을 위해 요청과 응답을 전달하여 트랜잭션 관리
- 무선 데이터그램 프로토콜(WDP) : 상위계층 WAP 프로토콜을 모바일 노드와 게이트웨이 사이에서 사용되는 통신방법에 적합하게 변형
(2) WTLS(무선 전송 계층 보안)
- 모바일 장비(클라이언트)와 WAP 게이트웨이 간의 보안 서비스를 제공
- 기능 : 데이터 무결성, 프라이버시(기밀성), 인증, DoS에 대한 보호
(3) WAP2(종단 대 종단 보안)
- WAP에서 게이트웨이 안의 데이터는 암호화되지 않은 형태로 다루어져 보안 위협될 수 있다.
- 따라서 WAP2는 모바일 클라이언트와 웹서버 간에 종단 대 종단 보안을 제공
4. 디바이스 인증기술(기기 인증)
(1) 정의
- 네트워크에 참여하는 다양한 기기의 안전한 운영을 위해, 해당 기기를 식별하고 진위판단할 수 있는 신뢰된 인증방법
(2) 장점
- 보안성, 경제성, 상호연동성
(3) 인증기술
아이디/패스워드 기반 | 장점 | 아이디와 패스워드만 있으면 어느 기기에서나 인증 가능 |
단점 | 접속을 위한 별도의 애플리케이션이나 프로토콜 필요, 아이디와 패스워드 노출시 위험, 부인방지 불가능 | |
MAC주소 기반 | 장점 | 접속 용이, 추가적인 애플리케이션이나 프로토콜 불필요, 추가 연산이나 지연X |
단점 | 기기 바뀌면 MAC주소 재등록해야 함, 새로운 사용자 추가/탈퇴할때마다 MAC주소 새로이 추가/삭제해야함(다수의 사용자 관리 어려움), 항상 사용자 본인 기기만을 사용해야 함, MAC주소 유출시 위험, 부인방지 불가능 | |
암호 프로토콜을 활용 | 장점 | 다양한 인증방식 존재, 환경 적합한 인증방식 선택가능, 부인방지 가능 |
단점 | 안전성이 암호 및 인증 알고리즘에 의존 | |
Challenge/Response | 장점 | 패스워드만으로 어느 기기에서든 쉽게 인증가능, 사용자가 패스워드 바꾸지 않아도 매번 다른 형태로 네트워크 상에서 이동하기에 안전 |
단점 | 패스워드 노출시 위험, 부인방지 불가능 | |
PKI 기반 | 장점 | 매우 높은 안정성, 아이디/패스워드 노출 위험 줄어듬, 확실한 기기 식별가능, 부인방지 가능 |
단점 | 인증서 관리필요, CRL리스트 관리필요, 많은 계산량에 의한 처리시간 지연 |
5. RFID(Radio-Frequency IDentification)
(1) 개요
- 무선 주파수를 이용해 ID를 식별하는 방식으로 일명 전자태크라고 불린다.
(2) RFID의 네트워크 공격유형
- 도청, 트래픽 분석, 위조, DoS
(3) RFID 보안기술
- 암호기술 사용X : Kill 명령어, Sleep 명령어와 Wake 명령어 기법, 블로커 태그 기법, Faraday Cage(금속박막으로 태그 막기), Jamming(강한 방해신호)
- 암호기술 사용 : 해시 락 기법, XOR기반 원타임 패드 기법
6. 모바일 보안
(1) 모바일 운영체제의 보안과 취약점
1) iOS - 유닉스 기반
- 보안체계 : 안전한 부팅 절차 확보, 시스템 소프트웨어 개인화 , 응용프로그램에 대한 서명, 샌드박스 활용
- 취약점 : 탈옥한 기기에서 발생
2) 안드로이드 - 리눅스 커널 기반
- 보안체계 : 응용프로그램의 권한 관리, 응용프로그램에 대한 서명, 샌드박스 활용
- 취약점 : 다양한 마켓 존재, 각종 바이러스와 악성코드 있음, 루팅 가능
(2) BYOD 보안 기술
1) MDM(Mobile Device Management)
- 통상 IT 부서가 기기를 완전히 제어할 수 있도록 직원의 스마트패드와 스마트폰에 잠금, 제어, 암호화, 보안정책을 실행할 수 있는 기능 제공
- MDM 적용된 스마트폰에는 기업 보안정책에 위반하는 앱 설치 및 구동불가
2) 컨테이너화
- 암호화된 별도 공간에 업무용 데이터와 개인용 데이터를 분리하고 관리
3) 모바일 가상화
- 하나의 모바일 기기에 개인용과 업무용 운영체제를 동시에 담아 개인과 사무 정보를 완전히 분리
4) MAM(Mobile Application Management)
- 스마트 기기 전체가 아니라 기기에 설치된 업무 관련 앱에만 보안 및 관리 기능을 적용
5) NAC(Network Access Control)
- 사용자 기기가 기업 내부 네트워크 접근 전 보안정책을 준수했는지 여부를 검사하여 비정상 접근여부에 따라 네트워크 접속을 통제하는 기술
<네트워크 관리>
1. 네트워크 관리
- 네트워크 자원들에 대하여 적절한 관리행위를 함으로써 네트워크 사업자와 사용자에게 안정적인 네트워크 서비스를 제공하는 것을 의미
- 계정관리, 구성관리, 성능관리, 장애관리, 보안관리
2. SNMP(Simple Network Management Protocol)
SNMP 개념 | 관리자와 에이전트의 개념을 사용, 보통 호스트인 관리자는 보통 라우터나 서버인 에이전트들의 집단을 제어하고 감시 |
관리자와 에이전트 | 관리자라 불리는 관리 스테이션은 SNMP 클라이언트 프로그램을 수행하는 호스트, 에이전트라 불리는 관리대상 스테이션은 서버 프로그램을 수행하는 라우터 또는 호스트 |
SMI | 객체의 이름을 붙이고 객체 유형을 정의, 객체와 값들을 부호화하는 방법을 나타내기 위한 일반적인 규칙을 정의 |
MIB | 관리될 각 개체를 위해, 객체의 수를 결정하고 SMI에 의해 정의된 규칙에 따라 이름을 붙이며, 각 개체에 유형을 연결 |
3. 원격 접속 서비스
(1) TELNET
- 터미널 네트워크의 약어로, ISO에서 제안된 가상 터미널 서비스에 대한 표준 TCP/IP 프로토콜
- 마치 자신의 터미널이 원격 시스템에 있는 터미널처럼 보이도록 원격 시스템과의 연결 설정을 제공, 원격 로그인
(2) Rlogin
- 원격 로그인을 의미, TELNET과 같이 원격지 접속을 지원하는 프로토콜
- 인터넷 표준이 아니며 BSD 계열 시스템 간의 원격접속을 위해 설계
- 단순하고 별도 옵션 협상기능은 제공X
(3) SSH(Secure Shell)
- TELNET과 같이 TCP를 하부 전송 프로토콜로 사용하나 더 안전하고 더 많은 서비스 제공
- 네트워크상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일 복사할 수 있도록 해주는 응용프로그램 또는 프로토콜
- 기능 : 기밀성, 무결성, 인증, 압축, 다중화, 포트포워딩(터널링)
- 비교적 구현하기 쉽고 비용이 적게 들도록 설계된 안전한 네트워크 통신용 프로토콜
<네트워크 기반 프로그램 활용>
(1) 연결테스트(ping)
- 인터넷으로 접속하려는 원격 호스트가 정상적으로 운영되고 있는지 확인하는 진단 목적으로 사용
- ICMP(인터넷 제어 메시지 프로토콜)를 이용하는 유틸리티
- 접속대상 시스템의 접근성 진단, 네트워크 속도 측정 가능, 도메인이름을 이용하여 접속대상 시스템 IP주소 확인 가능
cf) TTL(Time To Live) : TTL값으로 어떤 OS 사용하는지 유추가능, 유닉스(255), 윈도우(128)
(2) 경로추적(traceroute)
- 목적지까지의 데이터 도달여부를 확인하는 도구, 네트워크 라우팅 문제점 찾아내는 용도
(3) 네트워크 인터페이스 진단(netstat)
- 유닉스 시스템의 TCP/IT 프로토콜 진단시 다양한 용도로 사용, 자신의 컴퓨터 네트워크 상태를 보여주는 명령어
(4) 라우팅 테이블 설정(route)
- 라우팅 테이블에 라우팅 경로를 추가하거나 삭제
(5) 네트워크 패킷/로그 분석(tcpdump)
- 네트워크 인터페이스를 거치는 패킷의 내용을 출력해주는 프로그램, 유닉스에서 사용가능(윈도우는 windump)
- 이더넷 모드를 무차별 모드로 해야 운영체제해서 패킷 확인 가능
(6) 네트워크 인터페이스 설정(ifconfig)
- 네트워크 인터페이스 설정정보를 알아보거나 IP주소나 서브넷마스크 등의 설정변경할 때 사용
(7) 윈도우 ipconfig 유틸리티
- /all : 여러 정보 출력
- /release : 지정한 어댑터(인터페이스) 또는 모든 어댑터의 DHCP 임대를 종료
- /renew : 지정한 어댑터(인터페이스) 또는 모든 어댑터의 DHCP 임대를 수동으로 갱신
- /flushdns : 호스트의 DNS 변환기 캐시내용을 삭제
- /displaydns : 호스트의 DNS 변환기 캐시내용을 출력
- /registerdns : 모든 DHCP 임대를 갱신, 호스트와 연관된 모든 DNS 이름 다시 등록
<네트워크 기반 공격의 이해>
1. 네트워크 기반 위협
- 취약하게 만드는 요인 : 많은 공격 지점, 공유, 시스템의 복잡성
구분 | 수동적 공격 | 능동적 공격 |
특징 | 직접적인 피해 없음 | 직접적인 피해 있음 |
탐지 가능성 | 어려움 | 쉬움 |
예 | 스니핑, 도청 | 재전송 공격, 변조, DoS |
2. 네트워크 기반 보안위협 및 대응책
(1) DoS(Denial of Service)
1) 정의
-
2) TCP SYN Flooding Attack
3) SMURF Attack
4) Flooding Attack
5) Land Attack
6) Ping of Death
7) Teardrop Attack
8) Inconsistent Fragmentation Attack
(2) DDoS