- Wired equivalent privacy
- Wireless 암호화 기술 중 하나이며 오래된 암호화 방식으로 RC4 알고리즘을 사용한다.
- 패킷 하나하나 마다 고유한 키 스트림을 이용하여 암호화하며 이를 위해 24비트짜리 초기화 벡터값 (IV)을 생성한다.
- 초기화 벡터는 네트워크의 암호에 첨부되는데 사용자가 네트워크에 연결할 때 사용하는 랜덤 값이다.
- 키 스트림 + 송신 패킷 = 암호화 패킷
- 전송하기 전 초기화 벡터를 같이 전송하고 AP 또한 복호화를 위해 키와 벡터가 필요하다.
- AP도 똑같이 초기화 벡터를 이용하여 키 스트림을 만들고 복호화 진행한다.
- 이러한 패킷들을 이를 해커가 중간에서 가로챈다
- 해커는 중간에서 가로채지만 키가 없어서 복호화할 수 없다.
- 패킷 내용은 암호화되어 내용은 볼 수 없으나 초기화 벡터는 평문으로 송/수신되며 24bit밖에 안되어 통계적 분석 도구에 취약하다.
- 해킹하기 위해서는 대량의 패킷 캡쳐 필요가 필요하다.
- 대량의 패킷 캡쳐 후, 수많은 IV의 값이 평문으로 노출되며 중복되는 값을 찾아 공격한다.
- 사용할 도구
Airodump-ng = 패킷과 iv를 캡쳐
Airocrack-ng = 패킷과 iv를 분석 후 키를 크랙
[WEP 기초 및 WEP Cracking 공격]
1. WEP를 사용하는 WiFi 생성
- ipTIME에서 테스트에 사용할 WEP를 사용하는 SSID 채널을 생성했다.
- 그리고 모니터 모드로 변경된 무선 랜카드로 주변을 검색했다.
airodump-ng --band a wlan0
- 위에서 생성한 SSID가 검색되었다.
- 특정 SSID를 스니핑하기 위해서 아래의 명령어를 입력한다.
airodump-ng --bssid 72:5D:CC:1A:D2:2C --channel 36 --write TEST_wep wlan0
- Station에 있는 맥 주소는 스마트폰이다.
- 위 명령어의 관련 옵션은 여기서 확인 가능하다.
[Linux] airodump-ng를 사용하여 특정 클라이언트 스니핑하기[airodump-ng /wireshark]
- 여기서 보아야하는 값은 #Data의 값이다.
- 이 높아질 수록 키를 크랙할 가능성이 높아지는데, #Data의 값이 높은 것은 트래픽이 높은 네트워크에서는 패킷을 그만큼 주고 받는 것을 의미하고 이것은 또한 IV값을 많이 주고 받는다는 것이다.
- 따라서, 스마트폰에서 스트리밍을 켜서 #Data의 값을 상승시켰다.
- 충분히 높아졌다면, 이제는 Cracking을 해볼 차례다.
airocrack-ng TEST_wep-02.cap
- 위에서 스니핑한 결과를 저장하는 옵션을 넣었기 때문에, 분석할 수 있는 결과값이 저장되었다.
- 확장자 .cap으로 끝나는 파일을 airocrack-ng로 실행시켜서 IV 값을 분석시킬 수 있다.
- 14471 개의 IV의 값이 검출되었고, 이를 토대로 패스워드를 알아낼 수 있다.
- 6초 정도 걸렸다. KEY FOUND라며 자신있게 내놓은 값이 보인다.
- 콜론을 지우면 위에서 테스트 용으로 생성했던 SSID의 패스워드 값이 맞았다.
- WEP은 IV가 평문으로 노출되어 송/수신하기 때문에 이 값이 충분히 많다면 이러한 도구를 이용하여 패스워드를 알아낼 수 있다.
'IT > ㄴ Wireless' 카테고리의 다른 글
[Linux] 사전 파일을 만드는 도구 Crunch 사용하기 [WPA/WPA2 cracking] (0) | 2023.07.12 |
---|---|
[Linux] 가짜 인증 및 ARP Replay 공격 [aireplay / aircrack] (0) | 2023.07.11 |
[Linux] aireplay-ng를 사용하여 연결 해제 공격하기[영상 포함] (0) | 2023.07.08 |
[Linux] airodump-ng를 사용하여 특정 클라이언트 스니핑하기[airodump-ng /wireshark] (0) | 2023.07.08 |
[Linux] airodump-ng를 사용하여 무선 대역 별 패킷 스니핑하기 [airodump / 2.4Ghz / 5Ghz] (0) | 2023.07.08 |