이 내용은 연구/학습 용으로 작성한 글이며, 이내용을 읽고 하시는 모든 행동에대해서 책임을 지지 않습니다.
1. 무선 네트워크 암호화 WEP(Wired Equivalent Prvacy)
- IEEE 802.11 LAN 표준에 규정되어 있는 WEP 암호화 방식은 무선 네트워크에서 전송되는 프레임들을 40비트 길이의 WEP비밀 KEY(관리자가 설정한 암호문으로 부터 얻어진 KEY값)와 임의로 할당되는 24비트의 IV(initialization Vector)로 조합된 총 64비트의 KEY를 이용하여 RC4 알고리즘을 통해 암호화 하는것이다.
initialization Vector : 초기화 벡터로 첫 블록을 암호화할 떄 사용되는 값을 의미한다.
RC4알고리즘 : Ron Rivest에 의하여 1987년에 고안된 스트림 암호 방식이다. 이것은 바이트 단위의 작용에 대하여 다양한 키 사이즈를 갖는 스트림 암호 방식이다. 이 알고리즘은 랜덤 치환 사용을 기반으로 한다. RC4는 가장 널리 쓰이는 스트림 암호 방식이다.
스트림 암호(stream cipher) : 암호의 구조 중 하나로, 유사난수를 연속적으로 생성하여 암호화하려는 자료와 결합하는 구조를 가진다. 일반적인 스트림 암호는 유사난수를 1비트 단위로 생성하고, 생성된 값과 암호화하려는 각 값을 XOR하여 1비트의 암호화된 자료를 얻는다.
2. WEP 암호화의 문제점
- 키 스트림을 재사용하기 떄문에 KEY값을 모르는 상태에서도 암호문을 복호화 가능
- WEP 암호화를 사용하는 몇개의 패킷을 갭쳐한 후 가능한 모든 키를 이용해 그 패킷을 복호화하는 부르트포스 공격(무차별 대입 공격 - 특정한 암호를 풀기 위해 가능한 모든 값을 대입하는것)가능
(복호화한 패킷의 Checksum을 계산하여 원본 Checksum과 비교하여 일치하면 올바른 WEP Key 값일 가능성이 높음
Checksum - 중복 검사의 한 형태로, 오류 정정을 통해, 공간이나 시간속에서 송신된 자료의 무결성을 보호하는 단순한 방법이다.
- Weakness IV를 수집하여 FMS Attack 가능
FMS Attack - IV값 중에는 키 스트림의 첫번째 byte에 비밀 키에 대한 정보가 포함된 Weakness IV값이 있다. 패킷 암호화시 IV는 계속 바뀌지만 비밀 키 값은 계속 유지되므로 Weakness IV를 사용하는 패킷을 많이 수집하면 키 스트림의 첫번째 byte를 사용하여 이 비밀 키 값을 알 수 있다.
- Rafik Chaabouni는 KoreK 공격을 증명하고 새로운 공격방법을 추가했다. KoreK공격은 RC4에 대한 Fluhrer(RC4 키 스케줄링 알고리즘)의 초기화 벡터의 초기 조건에 따른 분석을 바탕으로 설계되었다. 이 공격을 이용한 'AirCrack'이란 프로그램이 있다.
3. WPA(Wi-Fi Protected Access
- WEP에 비해 보다 정교한 데이터 암호화를 제공
- WEP의 불충분한 인증과정을 개선하여 WEP보다 나은 인증기능을 제공
- TKIP는 WPA의 암호화 방식이다.
TKIP(Temporal Key Integrity Protocol,임시 무결성 프로토콜)
: 기본적으로 WEP와 같은 RC4키 스트림 암호화 알고리즘을 사용하지만, 보안 강화를 위해 추가적으로 여러 알고리즘들이 추가되었다.
1. 패킷 위조를 방지하기 위해 MIC또는 Michael 이라는 암호화 메시지 무결성 코드 추가.
- Michael은 8바이트의 코드 (MIC, Message Integrity Code) 이다.이는 암호화되지 않은 평문에 대해 해시 알고리즘을 적용하여 8바이트의 코드를 얻어 평문에 첨부하는 방식이다.
2. 재전송 공격을 방어하기 위한 새로운 IV배열 규칙
- WEP에서 발생하던 재전송 공격을 방어하기 위해 IV Field를 패킷 순서 번호로 사용한다.
3. Weakness IV와 Key 값의 상관관계를 줄이기 위한 패킷 키 믹싱 기능
4. 키 스트림 재사용을 막기 위한 rekecying 매커니즘 제공 (조사부족)
4. WPA2-PSK
- WPA 방식도 TKIP 알고리즘을 이용하면 여전히 취약한데, 그래서 생겨난 방식이 AES 알고리즘과 기존 WPA 방식을 강화한 WPA2 암호화 방식이다. WPA2는 TKIP를 버리고 AES 기반 CCMP를 기본으로 사용한다.
AES - CCMP (Counter Mode With Cipher Block Chaining Message Authencation Code Protocol)
1. AES는 1997년 1월, 기존의 데이터 암호 표준인 DES를 대체할 보다 강력한 알고리즘을 찾기 위해 세계적인 공모를 통해 선정된 차세대 암호화 알고리즘이다.
2. TKIP 에서 사용한 RC4 알고리즘은 키 스트림 암호화 인데 반해, AES 는 블록 암호화를 사용한 알고리즘이며, RC4 알고리즘보다 훨씬 강력하다. 따라서 WPA 에 비해 WPA2 가 더 강력한 보안을 제공한다고 할 수 있다.
3. 또한 TKIP 는 데이터 무결성과 데이터 인증을 위해 Michael(or MIC) 을 사용하지만, CCMP 에서는 CBC-MAC(The Cipher Block Chaining Message Authentication Code) 을 사용한다.
5. WPA / WPA2-PSK 취약점
일반적으로 WPA/WPA2 에서 사용하는 암호화 방식인 TKIP 와 AES 의 취약점을 사용한 Crack 방법은 없기 때문에 암호화 측면에서의 약점은 없다고 볼 수 있기 떄문에 인증과정에 주목을 해야한다.
1. WPA v1은 주로 TKIP 암호화 알고리즘을 사용하고, WPA v2는 TKIP보다 강력한 AES-CCMP 알고리즘을 사용한다.
2. TKIP 암호화 알고리즘은 WEP의 약점을 개선하고, WEP를 지원하는 모든 장비에서 사용가능하다는 장점이 있다.
3. WPA v1 / WPA v2는 Radius Server를 사용한 EAP 기반의 인증방법과 PSK(Pre-Shared Key)를 사용한 인증방법 중 하나를 사용한다.
4. WPA v1 / WPA v2는 4 - Way Handshake의 캡쳐를 통해 모든 매개변수를 알아내고 나면, Dicitonary Attack 에 매우 취약해지는 단점이 있다.
5. 무선 구간 암호화를 위해 단말과 AP간에 WPA2-PSK를 위한 4 way handshake를 수행하는데, 여기서 4 way handshake란 단말과 AP간에 EAPoL-Key 메시지를 4번 주고받아 양측에 암호화를 위한 key를 구성하는 절차입니다.
RADIUS(레이디어스 , Remote Authentication Dial In User Service, 원격 인증 전화 사용자 서비스 위치)는 네트워킹 프로토콜로 사용자가 네트워크 서비스를 받기위한 중앙 집중화된 인증,인가,회계,관리를 제공한다.
EAP(확장 가능 인증 프로토콜 , Extensible Authentication Protocol, EAP)은 무선 네트워크와 점대점 연결에 자주 사용되는 인증 프레임 워크이다.
PSK - 사전 공유 키
'해킹 > Project' 카테고리의 다른 글
Spectre & Meltdown 취약점 분석 (0) | 2018.01.21 |
---|---|
CTF Module [ntpwn] (0) | 2017.10.03 |
[0 - Wifi 모의해킹] 프로젝트 계획서 (0) | 2016.04.05 |