#0. 준비
무선 랜카드 : AP(공유기) 정보를 모두 수집하기 위해서 필요
칼리 리눅스 : 칼리 리눅스에 이미 설치되어 있는 툴(airmon-ng, airodump-ng, aircrack-ng 등)을 사용
#1. WEP 암호화 방식이란
무선랜 구간에서 사용되는 암호화 알고리즘으로, 무선랜 표준을 정의하는 IEEE 802.11(1997년)의 규약 중 하나이다.
WEP은 대칭키 암호 방식 중 하나인 스트림 암호 방식을 사용합니다. 스트임 암호 방식에서 RC4 암호화 알고리즘을 사용하여 데이터를 암호화 시킵니다.
WEP 비밀키(40비트)와 IV(24비트)를 RC4 알고리즘으로 키 스트림을 생성하고, 전달할 데이터와 XOR 해줘서 데이터를 암호화 시켜줍니다.
IV(24비트) : 초기에는 비밀키로만 RC4 알고리즘을 사용하여 암호화 시켰지만 사전공격에 취약해서 IV라는 값을 추가(매번 바뀜)
비밀키(40비트) : 사용자가 설정한 패스워드 또는 공유기에서 생성한 키(4개중 하나)
아래 사이트에서 공유기에서 WEP 키 생성 방법 설명
https://withnotebook.tistory.com/2
#2. 데이터 암호화 과정 원리
1. 40비트 WEP키 와 24비트 IV값을 조합하여 64비트 키를 생성.
2. 64비트 키를 RC4 알고리즘을 통해서 암호화 시켜 RC4 키스트림을 생성.
3. 데이터를 CRC-32 알고리즘을 통해서 ICV 값 생성(무결성 체크를 위한)
4. (데이터+ICV)와 RC4 키스트림을 XOR 함.
5. IV 헤더 : 24비트 IV 키값과 키값(비밀키 4개가 만들어질 경우 어떤 것을 사용할지 번호를 정함)
6. 데이터 와 ICV(암호화) : 4번에서 결과.
7. FCS : ICV 값(데이터 무결성 체크를 위한 값)
#3. 해킹 원리
IV값이 재사용 되는 것과 RC4 알고리즘의 취약점으로 인해 키스트림 중복된 값으로 결과가 나온다. 이러한 이유로, 50000개 이상의 패킷들을 수집후(패킷 수집시 IV값이 노출됩니다.) 재사용된 IV를 분석 후 RC4 알고리즘의 취약점을 이용해서 키스트림을 구하여 암호문을 복호화 시킴.
5000개의 패킷을 생성시 50%이상의 확률로 동일한 IV가 생성(생일 문제)
#4. 칼리리눅스에서 실습
Airmon-ng: 무선 네트워크 카드를 모니터 모드로 변경하고 관리하는 데 사용되는 도구
Airodump-ng: 무선 네트워크에서 패킷을 캡처하고 정보를 표시하는 도구
Aircrack-ng: WEP 및 WPA/WPA2 PSK(사전 공격) 비밀번호를 해독하기 위한 도구
1. 모든 패킷을 수집하기 위해서 iwconfig 명령어로 무선랜(wlan0)을 검색해주고, Mode가 Monitor모드인지 확인.
Managed 모드 : 목적지가 자신의 랜카드로 들어오는 패킷이 아닌 것은 모두 버림
Monitor 모드 : 목적지가 자신의 랜카드로 들어오지 않는 패킷도 모두 수신.(스니핑시 사용)
2. airmon-ng start wlan0(자신의 무선랜카드 이름) 명령어로 Monitor 모드로 변경.
3. airodump-ng wlan0 명령어로 주변 AP(공유기)를 검색.
4. airodump-ng --bsssid [AP 맥주소] --channel [채널] --write [패킷을 캡쳐한 파일 이름 지정] wlen0(무선랜 이름)
지정한 AP의 패킷을 캡쳐해서 test_wep 이름의 파일로 저장 합니다. #Data(네트워크 트래픽)가 20000~50000 정도 되어야 패킷을 분석해서 IV의 중복값을 찾아낼 수 있음. (Data가 적으면 암호 해독 불가)
5. aircrack-ng test_wep-01.cap(패킷 캡쳐 파일). cap파일을 가지고 암호를 해독.
6. 아스키 코드와 16진수로 암호가 해독 되었습니다.
#5. 참고 자료
https://blog.naver.com/PostView.naver?blogId=knismaster&logNo=222079535892
http://www.ktword.co.kr/test/view/view.php?m_temp1=2244
https://n3015m.tistory.com/entry/%EB%AC%B4%EC%84%A0%EB%9E%9C-WEP-%EC%95%94%ED%98%B8%ED%99%94-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EC%B7%A8%EC%95%BD%EC%A0%90
https://www.piolink.com/kr/service/Security-Analysis.php?bbsCode=security&vType=view&idx=90