[802.11] WEP Crack

공부/Network 2012. 6. 29. 16:17 |




802.11 WEP 크랙에 대해서 알아보도록 하겠습니다.


우선 WEP가 무엇인지 알아야 하겠죠?


WEP(Wired Equivalent Privacy)란 쉽게말해서 802.11 즉, 무선랜의 암호화 방식입니다.


이 WEP는 이름의 의미 처럼 처음에 굉장히 자신하는 암호화 방식이였습니다(유선과 동등하단 의미니까..)


하지만 WEP는 뚫려버렸습니다. 왜냐?


RC4라고하는 암호화알고리즘이 10년전인 2001년에 그 알고리즘이 풀렸기 때문인데요.


WEP는 RC4라고하는 암호화 알고리즘을 사용합니다.





우선 평문(평문은 cleartext 또는 plaintext라고도 합니다.)을 체크섬을 통해서 오류가 있는지 검사를 합니다.


그리고 그것을 RC4라고하는 믹서기에 넣어줍니다.


그리고 key값과, IV라고하는 암호화 뚜껑 역시 RC4라는 믹서기에 넣어줍니다.


그리고 XOR이라는 버튼으로 믹서기를 갈아줍니다.


그렇게 되면 사이퍼텍스트 즉, 암호문이 생성이 됩니다.


허나, 여기에는 문제점이 있었습니다. 그것은 그림에도 나와있지만 암호화뚜껑인 IV가 그대로 사이퍼텍스트와 함께 내려왔다는것!!


그럼 IV를 를 알고있으니까.. 키도 알 수 있고.. RC4도 뚫렸으니까 알수있을거고 encryption된 값도 알 수 있잖아요?


결론적으로 4+x=10에서 x를 찾는것과 같은 이치가 되는겁니다.





사람들은 이러한 문제점 때문에 암호화의 글자 수를 늘린다거나 ARP필터링을 한다는 등 응급처치를 했습니다.


하지만 이미 4+x=10에서 x를 찾는 상황에서 그런 응급처치가 통할리가 있을까요.. 없습니다..


글자수를 늘리는건 뻔한얘기고 ARP필터링을 하면 스푸핑을 하면 되니까요..



그럼 한번 이 WEP 크랙을 직접 체험해봐야겠지요?


사용 OS환경은 





백트랙 4를 사용합니다.


내부 프로그램으로 aircrack-ng 1.1ver를 사용합니다.



처음에 모니터링을 하기위한 모니터링 모드 설정을 하나 만들어 줍니다.

(참고로 iwconfig를 치면 mode가 나오는데 여기서 managed가 일반 무선NIC모드이고, monitor가 모니터링 모드랍니다)


모니터링 설정을 만드는방법은 이런식의 명령어를 입력하시면 됩니다.


>airmon-ng start <무선 NIC 이름>




(무선 NIC이름은 iwconfig를 치면 나온답니다)

이렇게 설정하시고 한번 더 iwconfig를 쳐보시면 mon0가 monitor mode로 추가된 것을 확인하실 수 있습니다.


그리고 이제 공격할 대상을 스캐닝해야겠지요?


스캐닝을 수행하는 명령어는 다음과 같습니다


>airodump-ng -c <channel> --bssid <공격할 AP의 BSSID> -w <저장할 파일 명> <Monitoring mode 무선 NIC>


airodump-ng란 스캐닝을 하는 툴입니다.

저장할 파일 명에는 크랙된 키 값이 저장됩니다.

BSSID란 AP의 MAC을 의미합니다.




스캐닝을 해서 대상을 캡쳐했다면 이제 본격적인 작업을 수행해야합니다.


제가 아까 그림을 통해 설명했는데 IV를 통해 키를 알아낼 수 있다고 했습니다.


하지만 이 IV가 하나만있으면 되는게 아니라 여러개가 있어야하는데요. 이 IV는 스캐닝을 통해 모니터링을 하면





이런식으로 데이터라고 잡힙니다.(데이터는 IV와 인크립션된 값을 말합니다.)


이 데이터는 서로 통신을해서 DATA를 주고받아야하는데 그럴려면 결합이 되어야합니다.


뭐..이게 3만개정도 필요합니다..하지만 통신을하는 station이 적거나, 아예 없다면 답이없겠죠?


그래서 데이터를 빨리모으기 위해서 가짜 인증작업과 ARP인젝션이 필요합니다


이 가짜인증은 Fake Authentication이라고도 부릅니다.


명령어는 다음과 같습니다.



>aireplay-ng -1 5000 -e <SSID> -a <공격할 BSSID> -h <내 랜카드 MAC> <모니터링 NIC>



aireplay 내에도 많은 기능이 존재합니다. 가짜인증..ARP 주입..등등


그 기능을 구별하기위해서 번호를 지정해줍니다 가짜인증은 1번 주입은 3번..이렇게


그 번호중에서 fake authentication이 1번이라서 -1이라고 해준겁니다.


5000은 가짜인증 패킷을 5000번 날려서 절대로 AP와의 통신이 끊기지 않게 안전빵으로 달아주는 겁니다.


이는 실제로 동영상을 보시면 결합과정까지 가는 것을 볼 수 있습니다.



그 다음으로 ARP를 인젝션합니다.


ARP를 주입시키는 이유는 IV를 계속 주기위해서입니다. AP는 ARP를 받으면 다른 새로운 IV를 부여해주기 때문입니다.


그럼 계속 주입시키면..한 3만번 주입시키면 3만개의 데이터가 모이겠죠?


데이터가 어느정도 모였다 싶으면 이제 저장된 파일을 통해서 복호화된 키를 볼 수 있습니다.


명령어는 다음과 같습니다.


>aircrack -z <저장된 파일명>





이런식으로 16진수로 복호화가 완료된 것을 확인하실 수 있습니다.


저것을 아스키코드와 대조시켜서 입력시키면 해당 AP의 WEP를 뚫고 들어갈 수 있겠죠?




출처 - 옛날 블로그 2011/02/12 17:06 



Posted by extr
:





802.11의 프레임 컨트롤에 대해 알아보겠습니다.


앞서 프레임에 대해 설명 드렸지만 FC는 그냥 넘어갔는데요.


FC에는 여러가지가 있습니다


protocol version 

말그대로 프로토콜의 버젼이랍니다.



frame type and sub type


바로 여기서 control,data,management가 Frame type에 속하구요

그 밑에 세부적으로 나뉘어져 있는 것들이 Sub Type입니다.


To DS and From DS

이것을 아시려면 DS에 대한 파악이 중요합니다. 다시한번 DS를 볼까요?




DS란건 앞에서 말했지만, 무선 네트워크 상에서의 유선 공간이라고 말했는데요.


우선 편지를 한번 떠올려 봅시다.


To DS 라면 뭐겠어요? DS에게..가 되겠죠?


말 그대로 To DS란것은 유선 에게..라는 말과 같답니다 그럼 밑의 ESS(무선 전 구간)이 DS에게 보내는 것과 같겠죠?


From DS는... 유선이 보냄..과 같으니까 DS가 ESS에게 보내는 것과 같겠죠?



More Fragments


이건 데이터 조각을 더 쪼갤것이 있는가? 확인을 하는 겁니다.


데이터를 보낼땐 MTU(Maximum Transfer Unit)이라는 규격에 따릅니다. MTU란 것은 한번에 최대로 전송할 수 있는 데이터의 양인데요.


유선의 경우엔 1500byte 무선의 경우엔 2312byte로 정해져있답니다.


그럼 만약 4000byte라면?



데이터를 분할(쪼개서)해서 보내야겠죠?


그래서 필요한게 more fragments입니다. 더 쪼갤게 있으면 1로써 쪼갤게 있다는 신호를 남기고, 더 쪼갤게 없다면 0을 써서 신호를 보냅니다.



Retry


앞에서 CSMA/CA를 배웠죠? 그때 ACK를 못받았으면 ACK를 받을 때 까지 데이터를 보낸다는 소리를 했습니다.


그렇게 계속해서 재시도하면서 데이터를 보낸다는 것.


즉, ACK를 못받았을땐 Retry가 일어난단 소립니다.




Power Management 


앞에서 배웠답니다.


간략히 설명하자면 절전모드에 빠졌을 때 계속해서 데이터를 받을 수 있게 비콘을 때리는것? 이라고 할 수 있겠죠.



More Data


데이터를 더 받을게 있는지 확인하는 겁니다.


모어 프래그멘츠부터 자꾸 왜이렇게 확인만 하느냐?


그 이유는 바로 유선에 비해서 아직까지는 무선이 불안정적이기 때문입니다.


그래서 많은 확인 절차가 필요합니다.


WEP 


이것은 802.11의 암호화 방식입니다.




출처 - 옛날 블로그 2011/02/09 03:03


'공부 > Network' 카테고리의 다른 글

[802.11] WPA Crack  (0) 2012.06.29
[802.11] WEP Crack  (10) 2012.06.29
[802.11] channel [802.11 채널]  (0) 2012.06.27
[802.11] Powersave Mode [802.11 절전모드,파워세이브 모드]  (0) 2012.06.27
[802.11] hidden node [802.11 HN,히든 노드]  (1) 2012.06.27
Posted by extr
:

802.11 Channel

 

802.11의 채널? TV의 채널을 말하는 걸까요? 802.11 채널의 사전적의미는 이렇답니다. 송신장치와 수신장치사이에 존재하는 가상의 장치..

 


우선 채널이란 것은 주파수마다 채널이 다릅니다. 어느 주파수엔 채널 몇이고 어떤 주파수엔 채널 몇..이런식으로 말이죠.



이 채널은 또 나라마다 한정된 채널이 다릅니다.

우리나라 같은 경우엔 ch13까지 한정되어있고,일본은 14채널,미국은 11채널로 한정되어 있습니다.

 


그럼 우리나라는 13채널까지 있는데 괜히 좋은거 쓴답시고 미국 NIC를 사서 우리나라에서 사용하면 어떻게 될까요?

 



네 맞아요 예상대로 12,13채널은 사용 못하겠죠? 왜냐..미국꺼는 11채널까지 있으니까요 ㅇㅇ 항상 자기네 나라의 규격에 맞춰서 NIC도 만들겠죠?

 

자 그럼 이제 그림 하나를 보면서 공부를 해봅시다.

 



눈치가 빠르신 분은 이 그림을 보시면 바로 규칙을 발견하실 수 있을 것입니다.



그건 바로 채널 1이 증가할 때 마다 주파수가 0.005GHz씩 증가하는 것인데요. 우선 정리를 해봅시다.

 


채널 1은 어쨋거나 저쨋거나 2.412GHz입니다! 여기서 채널이 하나씩 증가할때마다 0.005씩 증가하는거죠 아시겠죠?

아 참고로 제가 지금 언급하는 채널들은 5GHz를 사용하는 a가 아닙니다. 2.4대역을 사용하는 g와b를 말하는 겁니다.



채널 1이 2.412면 채널2는 2.417..3은 2.422..4는 2.427..이런식이란 얘기입니다.

 

하지만 이 채널에도 문제점이 몇 가지가 존재합니다.

 



전파가 겹치면 간섭이 일어난다면서요? 그럼 저기에 채널 1과 2랑 1과 3이랑 1과 4랑 1과 5는 서로 겹치는데 이러면 간섭이 일어나지 않나요?

 

맞습니다 이렇게되면 전파 간섭이 일어나게 된답니다!!! 다시한번 그림을 볼까요?


 



반 원 모양이 바로 채널의 주파수 대역입니다.



그림을 보면 금방 이해가 되실겁니다. 잘 보시면 1과 5까지는 겹치지만, 1과 6의 대역은 겹치지 않는 것을 보실 수 있을겁니다.

 

이렇게 채널이 겹쳐서 전파간섭이 일어나는 문제를보고 채널 오버래핑(channel overlapping)이라고 한답니다.

 


그리고 이 채널 오버래핑을 방지하기위해서 수동 또는 자동으로 채널을 바꿔주는 특별한 AP가 있습니다. 


이렇게 이 AP가 수/자동으로 채널을 마구잡이로 바꿔주는 것을 보고 채널 호핑(channel hopping)이라고 합니다.





출처 - 옛날 블로그 2011/02/09 02:28



Posted by extr
: