무선랜취약점분석 작성자 : silverhwak
목 차 1. 무선랜의정의...p.3 2. 802.11 Layer 의구조...p.4 3. 802.11 MAC...p.5 4. Lan card mode...p.8 5. mac frame...p.9 가. 구조...p.9 나. 설명...p.12 6. Discovery...p.16 7. Scanning...p.17 8. 연결과정...p.18 9. 공격시연...p.19 10. 취약점분석및대응책...p.23 11. 결론...p.24
1. 무선랜의정의 -두대이상의컴퓨터가선없이연결한상태로, 무선으로된로컬영역네 트워크을일컬음. 무선랜은스프레드분광이나전자기파기반의 OFDM 변 조기술을사용하여제한된지역안에있는기기끼리서로통신할수있게 해줌. 가능하게함. 이로써사용자가무선랜지원지역을돌아다니며네트워크에접속 무선랜의장점 편의성: 가정이나사무실에서무선네트워크장비가있는곳이라면무선네 트워크를쉽게사용. 휴대성: 일반노동환경밖에서도인터넷에접근. 커피숍과같은공공장소 에서무선인터넷접속에비용을( 얼마) 내지않고사용. 생산성: 장소를옮겨다니며원하는네트워크의접속을유지. 배치: 무선네트워크를처음설치할때에는하나이상의액세스포인트를요 구. 한편유선네트워크는수많은장소에케이블선을깔아야하므로비용이 늘어나는문제점이존재. 확장성: 수있음. 무선네트워크는기존의장비를사용하여수많은고객을받아들일 단점 보안: 무선랜은라디오주파수를사용하여컴퓨터에네트워크를제공. 공간 과비용을위해최종컴퓨터에설치되어있는무선랜카드의성능은대체적 으로좋지않음. 신호를어느정도잡기위해, 무선랜수신장치는상당히 많은양의전력을사용. 다시말해, 무선랜성능이좋지않은주변컴퓨터가 무선패킷을가로챌수있을뿐아니라, 사용자가눈에잘띄는곳에서패킷을가져갈수있음. 좋은품질에적은돈을소비하려는 지원범위의한정: 일반적으로쓰이는 802.11g 네트워크는수십미터의거 리를지원. 일반가정의규모가큰경우이러한거리는충분하지못할수있 음. 범위를넓히려면리피터나추가적인액세스포인트구매가필요. 신뢰성: 다른라디오주파수비슷하게, 무선네트워크신호는다양한통신 간섭에노출. 속도: 대부분의무선네트워크는일반적인유선네트워크에비해느린편.
2. 802.11 Layer 의구조 802.11은흔히무선랜, wi-fi라고부르는 local area를위한컴퓨터무선 네트워크에사용되는기술. <802.11 Layer 의구조> 각블록의설명 Physical Medium Dependent 변복조를하는무선모뎀기능을수행.
적외선, RF등의전송매체의종류마다변복조방식이다르기때문에물리매체종속계층이라함. Physical Layer Convergence Protocol 하부에다양한종류의 PMD 가있고, 상위에는 PMD 종류와 무관한 MAC 계층이있으므로, 이들간의동작을정합시키는 역할을수행. MAC계층으로부터전달된 MAC_PDU( MPDU ) 에 Preamble 과 PLCP 헤더를추가한후, 모뎀기능을수행하는 PMD에비 트열로전달하여, 송수신동작을수행한다. MAC 계층 MAC Layer Management Entity PHY Layer Management Entity 상위계층패킷(MAC Service Data Unit - MSDU) 나 probe, becacon등의 MAC Management PDU(MMPDU) 를 MPDU 에수납한후전송 -필요에따라 MSDU나 MMPDU를여러개의 Fragemented SDU(FSDU) 로분할한후, 각각을 MPDU 로전송, 헤더의탈 / 부착, 신호의세기조졸, 데이터도착유무확인 종류는 Management Frame, control Frame, Data Frame이 존재 전원관리, 탐색, join, 인증, 결합, 리셋, 시간동기등의 MAC 계층의운영에필요한관리기능인 MMPDU(probe, beacon, association, authentication) 를수행. 물리계층부에대한리셋, 모뎀의동작값(Slot Time, 송수신 절환지연시간, Preamble 의길이등) 을설정하거나설정값 을읽음. 3. 802.11 MAC DCF ( Distributed Coordination Fuction ) 데이터를송신하기전다른 간동안대기하는방식 station이데이터를송신중인지확인하고일정시 ( 경쟁방식 ) CSMA/CA (Carrier Sense Multiple Access / Collision Avoidance )( 충돌 을사전에회피 )
<DCF ( Distributed Coordination Fuction )> PCF ( Point Coordination Fuction ) AP ( Access Point ) 가단말에게전송할데이터가있는지확인한후, 전송 할데이터가있는단말에게전송권한을줌 그러나 음. (Token Ring 과유사 ) CSMA/CA의경쟁방식과는달리무경쟁방식이고현재는쓰이지않 802.11 MAC 의특징 1. MAC 계층에서의 ACK Frame 사용과 Frame 분할기능 (TCP/IP Layer 의 4계층의 ACK + 3계층의 Fragment) TCP Flag(4 계층) + IP Fragment offset(3 계층) -Frame 을전달받은수신측 인을해주기위해 MAC은반드시이에대한명시적인확 ACK Frame으로응답 2. 긴 Frame 전송시무선구간품질을위해여러개의짧은 Frame으로조 각내어전송 3. Hidden-Node 문제 -AP를중심으로통신하는각 Station 들의시야를기준으로보았을때자 신의 Carrier 감지범위를벗어난다른 Station은 Hidden-Node가됨
<hidden node 발생> 4. 전원공급문제를줄이기위한 Power Saving Mode -무선은신호감지에많은 power가필요해서내가굳이보낼데이터가 없을때는자는것, 어떠한일도처리하지않는다. 심지어 Broadcast도처리 를하지않는다. <Power Saving Mode> 가. Power Saving Mode를 AP에게알려줌 나. 신호가들어오면 AP가버퍼에쌓아둠
다. 전원이들어오면버퍼에쌓아둔패킷을보내줌 4. Lan card mode managed mode - 무선클라이언트( Station ) 가 Wireless AP 로바로연결할때사용 모든통신진행을 Wireless AP에게맡김 station A Access point station B Ad-Hoc - 컴퓨터들서로가직접연결하기위해사용하는모드 각클라이언트가통신에관한모든책임을지게됨 station A station B master mode - 무선네트워크인터페이스카드( NIC ) 가다른드라이버소프트웨어와도 결합해서작동할수있게한다. 이를통해다른컴퓨터는이것을 Wireless AP 로인식하기도한다.
station A station B Monitor mode -RFMON( Radio Frequence Monitoring ) 모드무선클라이언트에게데이터를전송하거나받지는못하는대신오가는패킷을볼수는있다. station A station B 5. mac frame -LAN 상에서 MAC 계층의기능은상위계층(LLC) 으로부터전달되는패킷 을접속되어있는물리적인네트워크의 할을한다. 가. 구조 Frame Format에맞추어주는역
header 설명 MAC Header MAC header의길이는 Address 4영역의유무에따라 30또는 24 바이트이며, 프레임바디의최대길이는 2312 바이트. 또한, WEP 암호화가사용된경우, 8 바이트가추가. 참고로이더 넷과마찬가지로각바이트의비트들은 LSB 부터전송. Frame Control Duration/ID Protocol Version Type : 해당프레임이 control( RTS, CTS, ACK ), management( authentication, association ), data Frame 인지 를구분하는 2비트 00 = Management Frame 01 = Control Frame 10 = Data Frame 11 = Unused Subtype : 각 type의 frame 에대한세부적인정보. 각 type 과 subtype의비트들은 MSB 부터기술. -이것은실제 Frame의송신및수신시식별하기가용이하도록 한것일뿐, 실제전송은각바이트별로 LSB 가먼저송신. To DS 와 From DS : AP를경유하여 DS(Distribution System) 으로향하는 Data Frame인지 DS로부터의 Data Frame 인지를표시. More Fragment Retry Power management -Station 이곧전원절약모드로들어가는경우 = 1 -Station 이곧활성모드로들어가는경우 = 0 More data : 전원절약모드에서 frame 이더있음을표시. Protect( WEP ) : 해당프레임이 AP가단말에게전달해야할 WEP, TKIP, CCMP등의무 선구간암호방식에의한암호화가되어있음을표시. Order : 1 인경우, 분할된프레임들을재조립할때, 순서를지 켜서처리하도록요구. Duration : 이시간동안다른단말들의채널사용이연기되 도록무선링크의사용을예약하는시간값인 Net Allocation Vector(NAV) 값이수납. -최상위비트의값은 0이고나머지 15비트값은 usec단위의 NAV 값. Association ID : 전원절약모드에있는단말이주기적으로깨 어나면서, 그동안자신에게전달되어야할프레임을 AP가보
관하고있는지질의하는 PS-Poll 메시지를송신할때, 자신이 결합된 AP 로부터부여받은결합번호(AID) 를 Duration/AID 영 역에수납하여전송. AP 는버퍼를검사하여, 이 AID에해당되는단말에게전달되어 야할프레임을선택하여, 이것을단말에게전달. DA와 SA등 2 개의주소만사용하는이더넷과달리, 무선 LAN 에서는 4개의 6 바이트길이의주소가사용. - 하지만, 한 frame에 A4 가없을수도있음. -이러한 4개의주소영역의의미는 ToDS, FromDS 비트에의 해결정. - 일반적으로, A1 은수신측주소이고, A2 는송신측주소. Destination Address (DA) : 최종목적지주소 Source Address (SA) : Frame 의최초송신지주소 Receiver Address (RA) 와 Transmitter Address (TA) : 서로 다른 AP 를경유하는경우, 즉, DA와 SA간에경유하는수신측 AP와송신측 AP 의이더넷주소이다. BSSID : AP의 MAC Address Address 1,2,3,4 ToDS F r o m DS Addre ss1 Addre ss2 Addre ss3 Addre ss4 ToAP 1 0 BSSID SA DA F r o m AP 0 1 DA BSSID SA unuse d unuse d Within Wirels s AP 1 1 RA TA DA SA A d - h oc 0 0 DA SA BSSID unuse d Sequence Control 2바이트의이영역은매 frame당할당되는순서번호와분할 frame 의순서번호이다. -이들은모두 ACK의손실에의한재전송검사와재조립할때 사용. Fragment Number(4 비트) : 한 Frame이여러개의 Frame으
Frame Body FCS 로분할되어전송되는경우, 이들간의순서를구분하도록하는 번호. Sequence Number(12 비트) : 순서번호는매 Frame 전송시 마다 1 씩증가된다. 물론재전송되는 Frame 의경우, 순서번호 는증가하지않음. 제어및관리용정보나 LLC 와같은상위계층메시지즉, MSDU 가수납. 이영역의최대사이즈는 2304 바이트. Frame body영역이 Wired Equivalent Privacy( WEP ) 으로 암호화될경우 Frame Body는각각 4바이트길이의 Initialization Vector( IV ) 와 Integrity Check Value( ICV ) 등이추가. 분할될경우, 최소길이는 256 바이트. ARP나 IP같은상위계층패킷들은항상 LLC에수납되어전 송. 4바이트의오류검사코드 나. 설명 1. 802.11 Management Frames ( 관리용도 ) Management Frame 은탐색, 인증, 결합등다양한링크계층에서의 관리절차에사용 - BSS안쪽에서의동작들을관리하기위한 management
패킷분석 Request = 접속요청패킷, Response = 접속응답패킷 Probe Beacon AP가자기자신을광고하기위한패킷 Request, Response 둘다 SEQ, Status Code 등이들어있음. Request Authentication Algorithm, Authentication Authentication Response Disassociation Deauthenticati on 연결해지( RST 와같은역할 ) AP 에서접속을끊는역할, 인증해지( 연결을끊게됨 )
Reason Code 하나로간단히구성. Station 이지원가능한속도등이수납됨 A s s o c i a t i o n Request Status Code와 Power saving을위한 Association ID( AID ) 등이수납됨 AID는 AP가 Station 을관리해주는번호 -bit_map으로관리하고사용하면 1 않하면 0 으로관리. - 순차적, 배열순으로해당 station 에게계속부여. A s s o c i a t i o n Response 모든무선패킷( wireless frame ) 은암호화되지않고평문으로전송. 언제든지내가전달하면 Station과 AP가받아들일수있게 Stateless ( 상태정보누락) -> 공격자공격하고싶은시점에언제든지가능 인증 mechanism이없어서내가 AP 인척, Station 인척할수있음. -> Spoofing 가능 2. 802.11 Control Frames ( CSMA / CA MAC 의동작을지원함 )
802.11 Control Frames ( CSMA / CA MAC 의동작을지원함 ) 패킷 3. 802.11 Data Frames Data Frame은총 8 개의서브타입으로구성되어있고, 대부분이사용되지 않으며 non-qos 네트워크에서의 Data Frame Subtype 은두가지이다. Null function : 실제데이터영역은존재하지만유효한패킷이안에있지는않음.
패킷 6. Discovery - AP의정보를찾아내는것이주목적 ESSID, BSSID, Channel, Bit Rate, Encryption Algorithm - Wireless는자신이접속할수있는 AP 를찾아야함. 등 - Active Scanning Scan에필요한데이터를 Station이 AP에직접요청하는방법이용 - Passive Scanning 동일주파수대역을사용하는패킷을모니터링하는방법을이용해 Scan 을수행 (X) -> 동일주파수대역이아니라도 Hopping 기법을 사용해서가능. ( 우리나라채널 13 개:3~4 개) AP를찾는 2가지방법 a. BECON 방식 - AP에게내가여기있다고광고하는방식
b. probe Request & Response(Active) - 보내고접속응답패킷을받아서 AP와연결하는방식 직접자기가접속요청패킷을 7. Scanning a. Active Scanning Scan에필요한데이터를 Station이 AP에직접요청하는방법이용 -Station이 Probe Request 패킷을전송하면 AP는응답으로 Probe Response 를전달. -Station 은이패킷을받아 AP 의정보를확인하고, 방식으로는 Directed와 Broadcast 가있음. -Directed Probe Request 찾고자하는 AP의 SSID를미리알고있는경우에사용됨 Probe request 패킷의 BSSID 필드에특정값을입력후전송 -Broadcast Probe Request 가장흔하게사용되며주변에있는모든 AP 를대상으로한다. Probe request 패킷의 BSSID필드에 NULL값을입력후전송 b.passive Scanning -Station과 AP 가주고받는패킷중인증과정을거치지않고, 동일 주파수대역을사용하는패킷을모니터링하는방법 -네트워크트래픽을 Sniffing 하는형태로스캔을수행한다. -NIC 에서 " monitor mode " 를지원해야사용가능하다. -Channel Hopping을통해모든채널의트래픽을 있음. -Active Scanning 보다더좋은결과가나옴. Sniffing 할수
-Monitoring Mode 는기본적으로활성화가되어있지않기때문에 default로 passive scanning 을제공하는 os 는없다. -Monitoring Mode 는접속은안되고패킷지나가는것만본다. BSSID, SSID, Encryption Algorithm, Channel, Frequency등이일반 평문으로전송되기때문에다알수있음. Beacon Frame 수집 AP 가주기적으로발생시키는패킷 ( 기본적으로 1초당 10회의발생주기를 가짐 ) - 패킷에대한암호화를수행하지않음 -SSID, Address, 지원속도등의정보포함 -특성상 Passive Scanning에가깝지만 Active Scanning에서도 Beacon Frame 수집을통한방법사용 -보안상취약한데현재까지모든장비는 beacon Frame을발생하지않게한 다는설정은불가.( 발생주기를늦게할수는있음.) Scanning 대응책 Active Scanning Beacon Frame 과 을차단하는방법으로회피 Probe response Beacon Frame의경우통신에필수적이므로 보중 BSSID필드를 NULL로대체 패킷을이용하므로두패킷 Beacon Frame의정 Passive Scanning 확실한대응책이없으므로위험성을낮추는방법을주로사용 -무선 AP의출력신호를감소시켜물리적으로근접한위치에만접 근가능하도록설정( 출력신호감소는보안 3 요소인기밀, 무결, 가용성중기밀성을보호하기위해가용성을해치는행위.) 8. 연결과정
연결방식 1. Open system 1) 네트워크상에서인증이이루어지지않고그냥접속이이루어짐. 2) Shared key 보다더안전하다. -> WEP(5, 13 글자(40, 104bit))Key 를사용하기때문에 -> 대칭키를사용. 3) 대부분이방식을사용하는데 WEP Crack 에는취약. 2. Shared key 1) Key 값에대한 challenge를만들어서전달하는데그 challenge가 그대로노출. 9. 공격시연 가. 시나리오 - 모든통신은연결과정(key 동기화과정등) 에서가보안이가장취약 -AP의 WPA key를알기위해서 Attcker는사용자의연결을임의적으 로끊어서다시연결하는과정에서오고가는 -Deauthenticating Users Key를 Sniffing. 1. Wireless Network의 SSID를쉽게확인할수있는공격방법 2. Legitimate User에게 Deauthentication 프레임을전달하여 Network 와연결이끊어지게한후, Legitimate User의 reassociation Request를탐지하여 SSID를확인함
3. AP의보안설정과는관계없이 Management Frame은암호화되지 않고인증되어진다는 취약점을이용 -Deauthenticate 을보내면클라이언트는다시접속하려고노력. 만약계속 Deauthenticate 패킷을보내면 DOS 공격을시작 그때 나. 시연 - 준비사항 1. AP 2. Backtrack 3. Victim 1. Victim은 PT라는 AP 의접속후통신중. - Victim의 MAC 정보 2. Attacker은먼저 kismet를구동시켜서공격을원하는 AP를선택
후 SSID, BSSID, Channel, Encrypt 정보등을획득. 3. Attacker은목적지를 BSSID로패킷필터링을해서 PT라는 AP와통신하 고있는사용자가있는지확인. -wlan.da==00:25:56:2d:02:01 로패킷필터링을설정 -AP에 Ping을보내고있는 Victim의 MAC 확인 4. 패킷 Sniffing을통해서 AP와통신하고있는 Victim의 MAC 주소를얻어
냈으므로 Victim을공격해 Victim 의연결을임의적으로끊는다. #aireplay-ng rausb -0 10 -a 00:1D:7E:6F:F5:0A -c 00:25:56:2d:02:01 -> 공격자가자신의맥주소를 victim의맥주소로변환해서패킷전송 -Victim 의연결이잠시끊기는것을확인. 5. Victim이다시재접속하는과정에서 Key 가오고가는것을확인. AP에오던 Ping이끊어지고다시재접속하는과정에서인증과 Key를주고 받는것을확인. - AP가보내던응답이끊어지고다시재접속하는과정에서인증과 Key 를주고받는것을확인.
10. 취약점분석및대응책 Legitimate User에게 Deauthentication 프레임을전달하여 Network와연 결이끊어지게한후, Legitimate User의 reassociation Request를탐지하 여 SSID 를확인, 이때 AP의보안설정과는관계없이 Management Frame은 암호화되지않고인증되어지지않는다는취약점이노출. 대응책 -Deauthentication packet 를차단하거나거부할수있는설정은없기때문 에기본적인설정으로는막을수없음. 그러나일부제품에서는패치된드 라이버를설치하여 deauthentication packet이나 disassociation packet을 무시하도록설정. (Wireless IDS는공격을탐지할수는있지만공격을멈 추거나차단할수는없고다만관리자에게탐지여부를알려줌 )
11. 결론 현재무선랜은취약점인키값의단순평문전송, 키스트림의단순성으로 인해해킹당하기쉽다. 현재 WPA라는기술이사용되고있지만패스워드 의길이가짧다면공격자에의해키교환프레임을 스워드가노출될수있다. MITM 공격을통하여패 현재로써는사용자가패스워드의길이를길게하고맥주소를확인해서각자 가예방하는것이최선으로생각됨.