802.1X NAC(Network Access Control)란?
802.1X NAC(Network Access Control)는 유선 및 무선 네트워크 전반에 걸쳐 관리자가 일관된 액세스 제어를 제공하도록 지원합니다. 캠퍼스 및 브랜치 엔터프라이즈 네트워크에 광범위하게 구축되어 있으며 다음과 같은 두 가지 주요 요소로 구성됩니다.
- 802.1X 프로토콜—유무선 액세스 포인트의 PNAC(포트 기반 네트워크 액세스 제어)를 위한 IEEE 표준입니다. 802.1X는 LAN 또는 WLAN에 액세스를 시도하는 모든 사용자나 디바이스에 대한 인증 제어를 정의합니다.
- NAC—네트워크에 대한 액세스 제어를 통해 사용자 및 디바이스를 식별하는 입증된 네트워킹 개념을 말합니다. NAC는 인증 및 정책 적용을 사용하여 엔터프라이즈 리소스에 대한 액세스를 제어합니다.
802.1X 네트워크 액세스 제어로 해결할 수 있는 문제
무선 네트워크 액세스, 모빌리티, BYOD(Bring Your Own Device), 소셜 미디어 및 클라우드 컴퓨팅이 엔터프라이즈 네트워크 리소스에 미치는 영향은 엄청납니다. 다음 그림에 표시된 대로, 이런 확장된 모빌리티로 인해 네트워크 위협 및 디지털 익스플로잇에 노출될 가능성이 증가합니다. 802.1x를 사용하면 이런 유형의 환경에서 수신 보안을 강화하는 동시에 총소유비용을 낮추는 데 도움이 됩니다.
802.1X 네트워크 액세스 제어로 수행할 수 있는 작업
NAC를 구축하는 방법은 다양하지만 필수 요소는 다음과 같습니다.
- 사전 승인 제어—승인되지 않은 메시지를 차단합니다.
- 디바이스 및 사용자 감지—미리 정의된 자격 증명 또는 머신 ID로 사용자 및 디바이스를 식별합니다.
- 인증 및 권한 부여—액세스 권한을 검증하고 제공합니다.
- 온보딩—보안, 관리 또는 호스트 확인 소프트웨어를 디바이스에 프로비저닝합니다.
- 프로파일링—엔드포인트 디바이스를 스캔합니다.
- 정책 적용—역할 및 권한 기반 액세스를 적용합니다.
- 사후 승인 제어—세션 종료 및 정리를 시행합니다.
802.1X는 물리적 포트에 액세스를 시도 중인 사용자 또는 디바이스를 확인하는 L2 액세스 제어를 제공합니다.
802.1X 네트워크 액세스 제어의 작동 방식
802.1X NAC 작동 순서는 다음과 같습니다.
1. 시작— 인증자(일반적으로 스위치) 또는 신청자(클라이언트 디바이스)가 세션 시작 요청을 보냅니다. 신청자가 EAP 응답 메시지를 인증자에게 보내고, 인증자는 메시지를 캡슐화하여 인증 서버로 전달합니다.
2. 인증— 몇 가지 정보를 확인하기 위해 메시지가 인증자를 통해 인증 서버와 신청자 간에 전달됩니다.
3. 권한 부여—자격 증명이 유효한 경우 인증 서버가 인증자에게 신청자의 포트 액세스 권한을 제공하도록 알려줍니다.
4. 어카운팅— RADIUS 어카운팅에서 사용자 및 디바이스 상세 정보, 세션 유형, 서비스 상세 정보 등의 세션 레코드를 유지합니다.
5. 종료—엔드포인트 디바이스의 연결을 끊거나 관리 소프트웨어를 사용하여 세션이 종료됩니다.
주니퍼 네트웍스 구현
EX 시리즈 이더넷 스위치 제품군은 캠퍼스 및 브랜치 엔터프라이즈 네트워크에서 사용되는 주니퍼의 게이트웨이입니다. EX 시리즈는 강화된 802.1X 및 RADIUS 지원뿐만 아니라 몇 가지 802.1x 개선 사항을 제공합니다. 수신 액세스 요청을 처리하는 방식 수를 확대하고 네트워크 액세스 제어의 대규모 구축을 간소화합니다. 이 밖에도 주니퍼의 엄선된 벤더에서 제공하는 솔루션(예: Aruba Networks의 ClearPass Policy Management Platform 및 Pulse Secure)은 네트워크 액세스 제어를 완벽하게 관리하도록 지원합니다.
www.juniper.net/kr/kr/products-services/what-is/802-1x-network-access-control/
802.1Q 방식
1. 정의
: VLAN(가상 LAN)에서 스위치 간에 VID(VLAN Identifier) 정보를 전달하는 방법
- 이더넷 프레임 내에 덧붙이는 32비트 길이의 태그 방식에 대한 IEEE 802 표준.
: 하나의 이더넷 네트워크에서 가상 랜(VLAN)을 지원하는 네트워크 표준.
: 이 표준은 이더넷 프레임을 위한 VLAN 태그 추가 시스템과 더불어, 이러한 프레임을 관리하는데 동반되는 브리지와 스위치에 쓰이는 절차들을 정의.
: 802.1p라는 QoS 우선 순위 스키마를 위한 예비를 포함하고 있으며 GARP를 정의
2. 태그방식에 대한 표준화 이유
- 스위치 또는 브리지 등으로 구성된 망에서 ARP, RIP와 같은 브로드캐스트성 프레임들은 불필요한 곳까지도 전달이 되어서 망의 대역폭을 낭비하거나 보안 문제가 발생
→ 이러한 문제를 해결하기 위해 특정 VLAN 그룹 간에서만 전달을 제한시킬 필요가 있음
3. IEEE 802.1Q 태그 프레임 형태
이더넷 프레임에 대하여 출발지 MAC 주소와 원래 프레임의 이더타입/길이 필드들 사이에 32비트 필드를 추가하여 최소 및 최대 프레임 크기를 64 및 1,518 바이트로 확장한다.
: TPID (Tag Protocol Identifier) : 16비트
- SA(Source Address) 바로 다음에 2 바이트 VLAN 태그가 존재함을 알리는 식별자
- '0x8100' : VLAN Tagged Frame이 존재함을 알림
* VLAN Tagged Frame을 인식하지 못하는 장비일 경우 해당 숫자를 Unknown Ethernet Protocol Type으로 간주하여 폐기하게 됨
: TCI (Tag Control Information) : 2 바이트 VLAN 태그
- PCP (Priority Code Point) : 3 비트
* CoS : 0 ~ 7 까지 우선순위 (0 - 보통, 7 - 가장 높음) / [참고] 우선순위대 대한 규격
- CFI (Canonical Format Identifier) : 1 비트
* Ethernet = 0, Token Ring = 1
- VID (VLAN Identifier) : 12 비트
* 각각의 VLAN 식별 (총 4,096개 중에서 0과 0xFF를 제외, 4,094개 VLAN 구별 가능)
www.ktword.co.kr/abbr_view.php?m_temp1=2136
802.1 표준화
* 스크랩
가. IEEE 802.1Q Virtual LAN
IEEE802.1Q는 1998년에 표준이 완료된 이후, 현재도 계속 개정이 진행중이다. 스위치나 브리지로 연결된 망에서는 ARP, RIP 같은 모든 브로드캐스트 프레임들은 이러한 L2 장비들을 통과하여, 불 필요한 곳에도 전달되어 망의 대역을 낭비할 수 있으며, 보안상 문제도 있다. 이러한 브로드캐스트 패킷들의 전달영역을 MAC 계층에서 제한하고, VLAN 그룹간 프레임 전달을 제한하는 기능들이 802.1D 브리지에 추가된 VLAN용 브리지로 구성된 망이 바로Virtual LAN (vLAN)이다. 즉, 이러한 VLAN의 개념은 <그림>과 같이 특정 VLAN에 속한 단말이나 장치들간에만 프레임이 전달되도록 하는 것이다. 이를 위하여, 각 프레임은 VLAN-ID가 수납된 VLAN Tag라고 불리우는 4바이트의 영역을 가진다.
VLAN은 단말들이 어떤 스위치에 접속되어 있던지 간에 이들을 여러 개의 논리적인 그룹으로 구분하고, 동일한 VLAN 그룹에 속하는 단말들간에만 프레임들이 전달되도록 한다.
그렇다면, VLAN 기능이 있는 스위치는 어떤 단말이 어떤 VLAN 그룹에 속하는 멤버인지 먼저 알아야 한다. 더욱이, 한 단말에 여러 개의 응용프로그램들이 동시에 수행 중이고, 이들이 각각다른 VLAN 그룹에 속한다면, VLAN 스위치는 이 단말이 송신하는 프레임단위로 VLAN 그룹을 구분할 수 있어야 한다.
나. VLAN 트렁크
트렁크(trunk)란 복수개의 VLAN 프레임을 전송할 수 있는 링크를 말한다. 즉, 하나의 VLAN에만 소속된 액세스 링크와 달리, 트렁크는 복수개의 VLAN에 소속된 링크이다. 트렁크는 주로 스위치간을 연결할 때 사용된다. 또, VLAN간이나 외부 네트워크와의 통신을 위한 라우터와 스위치를 연결할 때에도 트렁크를 사용한다. 그러나, 스위치간을 연결할 때에도 사용중인 VLAN이 하나뿐이면 트렁크를 설정하지 않아도 된다.
트렁크 포트를 통하여 프레임을 전송할 때, 프레임이 속하는 VLAN 번호를 표시해주어야 한다. VLAN 표시 방법은 트렁킹 인캡슐레이션(encapsulation)에 따라 다르다. 시스코 이더넷 스위치에서 사용되는 트렁킹 인캡슐레이션은 ISL 802.1Q 두가지가 있다. 스위치 모델에 따라 두가지 방식 모두를 지원하는 것도 있 고, 한가지만 지원하기도 한다. 또, 스위치간을 연결하는 링크를 자동으로 트렁크로 동작하도록 네고할 때 DTP(Dynamic Trunking Protocol)라는 프로토콜이 사용된다.
다. 802.1Q 트렁킹
802.1Q 트렁킹은 IEEE 802.1Q에서 정의된 표준 트렁킹 프로토콜이다. 이 방식은 원래의 이더넷 프레임의 발신지 주소 다음에 아래와 같은 4바이트 길이의 802.1Q 태그(tag, 꼬리표)를 추가하여 VLAN 번호와 기타 정보를 표시한다.
802.1Q 프레임 태그의 내용은 다음과 같다.
이더타입 (EtherType) : 현재의 프레임이 802.1 Q 프레임이라는 것을 표시하며, 항상 값이 0x8100이다. 이 필드를 TPID (Tag Protocol Identifier)라고도 한다.
우선순위 (priority) : 프레임의 우선순위를 표시한다. 이 것을 802.1P 우선순위 필드 또는, CoS (Class of Service) 필드라고도 한다. 0에서 7 사이의 값을 가지며, 값이 클수록 우선순위가 높다. 음성이나 동영상 데이터를 전송할 때 이 값을 크게 지정하여 우선순위를 높이고, 스위치에서 다른 프레임보다 빨리 처리되게 할 수 있다.
CFI (Canonical Format Identifier) : 토큰링에서 사용되는 MAC 주소 형태를 논캐노니컬 (non-canonical)이라고 한다. 따라서 이 비트가 1로 설정되면 토큰링 프레임이 인캡슐레이션된 것임을 표시한다.
VLAN 번호 (VLAN Identifier) : 프레임의 VLAN 번호를 표시한다. 필드의 길이가 12비트이므로, 802.1Q 트렁킹 방식을 사용하면 4095개의 VLAN이 지원된다.
트렁킹 인캡슐레이션을 802.1Q 방식으로 지정하려면 인터페이스에서 다음과 같은 명령어를 사용한다.
ex)
S1(config-if)#switchport trunk encapsulation dot1q
NAC이란?
NAC(Network Access Control, 네트워크 접근 제어)는 네트워크에 접속하는 단말에 대한 접근 가능 여부를 확인하여 인가된 단말만이 접근할 수 있도록 제한하는 것에서 출발.
즉, 단말이 사내 네크워크에 접근하기 전 보안정책의 준수 여부를 검사하여 네트워크 사용을 제어하는 것.
과거 다수의 네트워크 접근제어는 802.1X라 불리는 기술을 통하여 제공되었으며,
이때 AAA -
Authentication, 인증 : 네트워크에 접속하는 사용자, 단말 검증과정 (id/pw, MAC주소)
Authorization, 권한부여 : 단말이 네트워크에 연결되어 정상적인 통신이 이루어지기 전에 수행되는 작업들을 의미-> 단말 정보를 확인하여(id/pw, MAC주소 등) 단말 식별 후 인증을 진행하게 되며, 이 과정을 통해 네트워크에 접속 가능한 단말로 인가되지 못하면 네트워크 연결이 거부.
Accounting, 계정관리 : 단말이 네트워크에 접속한 기록을 통해 향후 보안 관리의 목적으로 사용할 수 있도록 하는 과정으로 누가, 언제, 어디서, 어떠한 목적으로 사용했는지 확인 가능
이라 불리는 3가지 중요한 기능이 제공.
--> 최근 네트워크에 접속하는 단말들로 인한 보안 이슈가 증가하면서 단말의 보안 준수 상태에 따라 네트워크 접속 가능 여부를 결정하도록 하는 요구 사항이 증가하고 있음.
즉, 단말 식별을 넘어, 단말의 종류, 현재 보안설정, 단말 상태 등을 종합적으로 판단, 자체적으로 정책을 설정하여 조건에 맞는 단말만이 네트워크에 접속할 수 있게 하는 솔루션을 NAC이라 부르게 되었음.
태동기 - 1세대 NAC
초기의 NAC 솔루션은 802.1X(네트워크 접속 사용자 인증 프로토콜) 기반의 제품이 주를 이루었습니다. 이는 스위치 및 무선 접속 장치 (AP 등)에서 제공되는 802.1X 표준을 이용하여 인터페이스에 연결이 감지되면, 정해진 인증서버(RADIUS)를 통하여 사용자명, 비밀번호 또는 인증서를 통해 사용자를 식별한 뒤 인증서버에서 접속이 허가되면 포트(Port) 등의 연결 인터페이스를 활성화시켜주는 방식입니다(연결 시도 – 인증 – 연결 활성화). 이 방식은 스위치의 포트 수준에서 작동되기 때문에 가장 완벽한 접근 제어를 제공할 수 있습니다.
하지만 802.1X를 지원하지 않는 장치들에 대한 인증 문제와 모든 접속 장치가 802.1X를 지원해야 하는지 확인해야 하는 등 기존 네트워크에 NAC를 한 번에 적용하기에 어려운 점이 많았습니다.
성장기 - 2세대 NAC
802.1X에서 벗어나 네트워크 접속 장치들과 SNMP(Simple Network Management Protocol)를 통해 정보를 수집하거나, 각 네트워크마다 센서 또는 프로브(Probe)라 불리는 별도의 장치를 설치하여 독립적으로 정보를 수집할 수 있게 되었습니다. 802.1X 이외에 네트워크에서 적용이 가능한 접근제어는
VLAN Steering(VLAN을 조정하여 단말을 제한된 VLAN으로 이동) /
ACL(Access Control List) /
ARP Spoofing(센서 기반 ARP를 이용한 제어) /
SPAN(미러링) 포트를 통한 연결 해제 등 사용자의 환경이나 요구 사항에 적합 한 다양한 방식으로 진화되었습니다.
네트워크 접속방법이 유선에서 무선으로 변화됨에 따라 네트워크 센서, 무선 컨트롤러, 에이전트를 통해 무선 네트워크에 대한 가시성을 확보하는 기능들이 추가되고, 이를 바탕으로 비인가 접속 장치(Rogue AP)와 같은 무선 보안에도 추가적으로 대응할 수 있게 되었습니다.
도약기 - 3세대 NAC
정보 수집과 접근제어를 넘어 다양한 자동화를 위한 기술들이 3세대 NAC에 추가되었습니다. 에이전트를 통해 기업이 원하는 상태로 단말의 보안 수준을 자동적으로 설정하는 것이 가능해졌으며, REST, Webhook, Syslog 등의 표준화된 연동 프로토콜을 통하여 네트워크에 존재하는 다양한 시스템들과의 상호 협력적인 보안 모델을 구축할 수 있게 되었습니다. 예를 들어 방화벽, IPS와 같은 많은 경계선 (Perimeter) 보안 솔루션은 서브 네트워크에서 단말과 단말이 직접 통신하는 것을 제어할 수 없습니다. 이러한 한계는 NAC과의 연동으로 해결될 수 있습니다. 또한 NAC과의 연동을 통하여 IP에 대한 사용자 정보 및 단말 정보 등을 확인할 수 있으며 이를 바탕으로 보다 광범위하고 효과적인 접근제어 정책을 수립하고 운영할 수 있게 되었습니다.
완성기 - 4세대 NAC
현재의 NAC 솔루션은 다양하게 증가하는 단말들로 인해 IT 관리자의 가시성이 저하되고, 네트워크 관리가 어려워지는 문제를 해결하는 것에 중점을 두고 있습니다. 많은 보고서에서 BYOD뿐 아니라 5G, 사물인터넷(IoT) 등의 확대로 200억 개 이상의 사물이 연결될 것으로
전망하고 있습니다.
기하급수적으로 증가하는 단말을 보다 정확히 탐지하여 식별하고, 단말의 다양한 비즈니스 상태(End-of-Life, Endof-
Support 등)를 손쉽게 관리할 뿐만 아니라 단말에 알려진 취약점 정보(CVE, Common Vulnerability & Exposure)까지도
자동으로 관리할 수 있도록 4세대 NAC는 진화하고 있습니다. 또한 최근 IT 환경의 변화에 맞게 클라우드를 지원하거나 클라우드 기반 NAC 서비스 등도 새롭게 선보이고 있습니다.
---> genian nac 자료 참고
통제 방식 장점단점
802.1x | 여러 OS 지원 | 설치 어려움, 프로토콜 지원 스위치 필요 |
VLAN | 보안이 뛰어남 | 세부 정책 불가 |
ARP를 이용한 IP주소에 대한 Mac 차단 | 빠른 인증 속도 | MAC, IP 변조 가능 |
Agent(패킷차단) | 강력한 정책 수립 | 관리 어려움 |
DHCP | 적용이 용이 | 고정 IP 차단 불가 |
'Cyber Security' 카테고리의 다른 글
Suricata IDS/IPS + ELK (0) | 2020.12.02 |
---|---|
[ELK] Elastic Stack(Filebeat, Logstash, Elasticsearch, Kibana) 구성 실습 (진행중) (0) | 2020.12.02 |
TMS(Threat Management System, 위협 관리 시스템) 이란? (0) | 2020.11.24 |
SQL INJECTION - Prepared statement 환경에서의 취약점 진단 (0) | 2020.10.26 |
웹 취약점 근거 제공 사이트 (0) | 2020.10.26 |