WPA / WPA2 – PSK (Personal. Pre-Shared Key)

 WPA/WPA2-PSK History

 WEP 의 보안 취약점이 드러난 이후 그 대안으로 나오게 되었으며, 와이파이 보호접속 (Wi-Fi Protected Access) 라고도 한다.

WEP 보안 취약점이 드러난 후 그 대안으로 802.11i 라는 보안 표준 프로토콜이 등장했다. 802.11i 가 완성되기 전에, WEP 의 대안으로 일시적으로 사용되던 것이 WPA .  WPA 에서 사용한 암호화 알고리즘은 TKIP 로서, WPA2 에서는 이를 대체하기 위해서 AES 암호화 알고리즘을 사용하여 더 강한 보안 제공한다.

 WEP 와 비교하여 다른 점을 간단히 소개하면.

l  TKIP (임시 키 무결성 프로토콜) 을 통해 데이터 암호화 향상시킴.

l  WPA2  2세대 WPA로서 보안 기능이 개선되었으며 고급 암호 표준화(AES), 사전 인증으로 구성된다.

l  WPA  Infrastructure 모드만 지원. WPA2 Infra, Adhoc 모두 지원.

 

 WPA/WPA2-PSK 암호화 방식

 먼저 두 방식의 차이를 표로 정리해보면 다음과 같다.

 여기서 TKIP  WPA 의 암호화 방식이고, AES  WPA2 의 암호화 방식이다.

 

 1) TKIP (Temporal Key Integrity Protocol)

 이 방식은 WPA 에서 사용하는 암호화 방식이다. 기본적으로 WEP 와 같은 RC4 키 스트림 암호화 알고리즘을 사용하지만, 보안 강화를 위해 추가적으로 여러 알고리즘들이 추가되었다.

l  패킷 위조를 방지하기 위해 MIC 또는 Michael 이라는 암호화 메시지 무결성 코드 추가.

-      Michael  8바이트의 코드 (MIC. Message Integrity Code) 이다. 이는 암호화되지 않은 평문에 대해 해시 알고리즘을 적용하여 8바이트의 코드를 얻어 평문에 첨부하는 방식이다.

-      WEP 에서 패킷 위조에 해당하는 공격은 IP Redirection 으로서, 이는 체크섬을 조작하여 공격자가 복호화된 평문을 받아 볼수 있게 해준다. WEP 에서 이것이 가능했던 이유는 체크섬을 만드는 CRC32 알고리즘 때문이다. 이 알고리즘은 어떤 키를 이용한 해시 알고리즘이 아니라서, 해커가 평문의 데이터를 조작해도 그에 맞게끔 체크섬 값을 수정하여 유효한 패킷처럼 만들어 줄 수 있다. 하지만, TKIP  Michael은 해시 알고리즘이 적용되어 코드 생성하기 때문에 이러한 공격을 막을 수 있는 것이다.

l  재전송 공격을 방어하기 위한 새로운 IV 배열 규칙

-      TKIP  WEP에서 발생하던 재전송 공격을 방어하기 위해 IV Field 를 패킷 순서 번호 로 사용한다.

l  Weakness IV  Key 값의 상관관계를 줄이기 위한 패킷 키 믹싱 기능

-      WEP 에서는 RC4 알고리즘의 입력으로 IV + Key 값이 사용되었고 여기서 Key값은 항상 고정되어 있었으므로 보안상 취약점이 있었다. TKIP 에서는 이 Key 는 임시 키 생성되어 사용되며 패킷마다 달라진다. IV 가 패킷마다 달라지는 것처럼 사용되는 Key도 달라지는 것이다. TKIP 에서 사용되는 이 Key  Temporal Key 라 부르며, 키 스트림은 IV + temporal key 가 되는 것이다.

-      Temporal key 생성 과정을 보면 2단계로 나누어진다. 첫번째, WEP Key  AP  MAC Address 값을 XOR 하여 intermediate key 얻는다. 이로서 서로 다른 AP 가 같은 WEP Key 사용한다고 하더라도 temporal key 는 다르게 나오기 때문에 WEP Key 의 중복을 제거할 수 있다. 2번째 단계는, 패킷 순서번호를 이용하여 intermediate key 를 암호화한다.(단순한 암호화 알고리즘 사용) 이렇게 함으로써 WEP Key 와 알려진 IV 와의 상관관계를 줄일 수 있다. 이렇게 2단계를 거쳐 최종적으로 temporal key 가 생성되는 것이다.

l  키 스트림 재사용을 막기 위한 rekeying 매커니즘 제공

-      아직 조사부족..

 

2) AES-CCMP (Counter Mode With Cipher Block Chaining Message Authencation Code Protocol)

 이 방식은 WPA2에서 사용하는 암호화 프로토콜이며, AES 암호화 알고리즘의 CCM Mode 를 기반으로 한다. CCM 모드란 Counter Mode + CBC 를 의미한다. Key 길이와 IV 길이는 128bit, 48bit 로서 TKIP 와 같다.

 TKIP 와 다른 점은 암호화 알고리즘에서 AES(고급 암호화 표준) 을 사용했다는 점이다. AES1997 1, 기존의 데이터 암호 표준인 DES를 대체할 보다 강력한 알고리즘을 찾기 위해 세계적인 공모를 통해 선정된 차세대 암호화 알고리즘이다. TKIP 에서 사용한 RC4 알고리즘은 키 스트림 암호화 인데 반해, AES 는 블록 암호화를 사용한 알고리즘이며, RC4 알고리즘보다 훨씬 강력하다. 따라서 WPA 에 비해 WPA2 가 더 강력한 보안을 제공한다고 할 수 있다.

 또한 TKIP 는 데이터 무결성과 데이터 인증을 위해 Michael(or MIC) 을 사용하지만, CCMP 에서는 CBC-MAC(The Cipher Block Chaining Message Authentication Code) 을 사용한다.

l  CBC-MAC(The Cipher Block Chaining Message Authentication Code) 이란?

-      평문에서 첫번째 블록을 AES 로 암호화한다. 그 다음 두번째 블록 암호화하고, 이렇게 얻은 두 블록을 XOR 한다. 그 다음 세번째 블록 암호화하여 XOR 하고, 이러한 과정을 반복하면, 최종적으로는 하나의 블록 (CCMP 에서는 128bit) 이 나온다. 이렇게 얻은 하나의 블록을 평문에 첨부하여 데이터 무결성과 인증을 위해 사용하는 것이다.

l  Counter Mode ?

-

 

 WPA/WPA2-PSK 약점

 일반적으로 WPA/WPA2 에서 사용하는 암호화 방식인 TKIP  AES 의 취약점을 사용한 Crack방법은 없기 때문에 암호화 측면에서의 약점은 없다고 볼 수 있다. (Crack 하는 입장에서. 정확하진 않음…)

 따라서 Crack 을 위해서는 인증과정을 주목해야 한다.

 

 WPA/WPA2-PSK Crack 방법

 http://blog.naver.com/eqelizer?Redirect=Log&logNo=20142866300

 http://n1207n.egloos.com/3348198

 위 두 URL 참고. Crack 원리를 쓰고 싶지만 그건 다음에.. 지쳤음..

 기본적인 원리는 특정 스테이션이 AP 와 처음 연결할 때 Handshake 과정의 패킷들을 모두 캡처하는 것이다.

 

 WPA/WPA2-PSK 전망

 현재 WPA 역시 Crack 할 수 있는 방법이 알려졌다. WEP 와 비교하면 훨씬 더 어렵고 성공확률이 낮긴 하지만 가능하다는 것이 밝혀졌다. 하지만 대규모 기업이나 보안이 정말 중요한 곳이 아닌 이상 WPA/WPA2-PSK 정도의 보안으로 충분할 것이기 때문에 많은 사용이 예상된다.

 

 

* 참고자료

-> http://blog.naver.com/jali2000?Redirect=Log&logNo=140005182566 (802.11i vs WPA)

-> http://jcbserver.uwaterloo.ca/cs436/handouts/miscellaneous/Intel_Wireless_2.pdf(TKIP 설명)

->http://etutorials.org/Networking/802.11+security.+wi-fi+protected+access+and+802.11i/Part+II+The+Design+of+Wi-Fi+Security/Chapter+11.+TKIP/Message+Integrity+Michael/ (TKIP Micheal)

->http://etutorials.org/Networking/802.11+security.+wi-fi+protected+access+and+802.11i/Part+II+The+Design+of+Wi-Fi+Security/Chapter+12.+AES+CCMP/AES+Overview/ (ASE-Overview)

-> http://n1207n.egloos.com/3348198 (WPA/WPA2-PSK Crack)


 

 

3. WPA / WPA2 - Enterprise

WPA-PSK가 기존 WEP의 암·복호화 키 관리 방식을 중점적으로 보완한 방식인데 비해서WPA-Enterprise는 사용자 인증영역까지 보완한 방식이다. WPA-EAP로 불리는 WPA Enterprise방식은 인증·암호화를 강화하기 위해서 다양한 보안 표준 및 알고리즘을 채택하였는데 가장 중요하며 핵심이 되는 사항은 유선 랜 환경에서 포트 기반 인증 표준으로 사용되는 IEEE 802.1X 표준과 이와 함께 다양한 인증 메카니즘을 수용할 수 있도록 IETF EAP 인증 프로토콜을 채택한 것이다.

규모가 큰 무선 랜 환경에서 WPA-EAP 방식을 구현하기 위해서는 클라이언트와 AP뿐만 아니라 사용자 인증을 수행할 인증서버(Authentication Server)가 별도로 추가되는데 이는 WPA-EAP구현을 위한 802.1X 표준에서 요구하는 사항을 수용하기 때문이다.

포트기반의 네트워크 접근제어(Port-Based Network Access Control) 표준인 802.1x이 등장하게 된 배경에는 전화접속을 이용한 통신이나 가정의 인터넷 접속 수단으로 사용되는 ADSL/VDSL환경에서 네트워크 접속 허용을 위한 장치 및 사용자에 대한 인증절차가 요구되었기 때문이다. 802.1X 표준을 구현하기 위해서는 요청자(Supplicant), 인증자(Authenticator), 인증서버(Authentication Server)  3가지 구성요소로 이루어진다.

ㆍ요청자(Supplicant) : PC, PDA 등과 같이 네트워크에 접근을 요구하는 클라이언트

ㆍ인증자(Authenticator) : 네트워크 스위치 또는 AP등과 같은 중간 장치이며 요청자와 인증 서버간의 정보를 상호 교환하는 역할을 수행

ㆍ인증서버(Authentication Server) : 사용자 데이터베이스를 이용해서 최종적으로 사용자를 인증하는 역할을 수행

요청자는 PC, PDA 등 무선 랜에 접근하고자 하는 클라이언트 장치를 말하며 인증자는 AP 또는 네트워크 스위치 등과 같이 중간에서 네트워크 트래픽을 전송하고 클라이언트 장치와 인증서버 사이에서 인증 데이터를 전송하는 역할을 수행한다. 마지막으로 인증서버는 클라이언트 장치 또는 사용자에 대한 인증을 수행하는 요소로 무선 랜 환경에서는 RADIUS 서버가 대부분 그 역할을 수행한다.

 802.1X 표준은 요청자, 인증자, 인증서버 등 3가지 구성요소의 전체적인 상호동작을 규정하고 있을 뿐 실제 인증을 위한 인증 프로토콜 또는 암호 알고리즘에 대한 사항은 명시하지 않고 있다.단지 요구자와 인증자 사이에서는 EAP(Extensible Authentication Protocol, 확장 가능한 인증 프로토콜) 프로토콜을 사용하여 다양한 알고리즘을 구현에 적용할 수 있도록 명시하고 있다.

* , WPA/WPA2  PSK 버전은 사용자 인증을 거치지 않고 WEP 처럼 AP 와 사용자가 같은Key 공유하고, 그 키를 보호함으로써 이루어지는 방식인데 반해, EAP(Enterprise) 버전은 사용자 인증을 거치게 함으로써(EAP 인증 프로토콜) 더 안전하게 통신할 수 있는 것이다. 하지만 이러한 인증 담당할 서버를 따로 구성하여야만 WPA/WPA2-EAP 를 이용할 수 있으므로 보통 대규모 기업이나 보안이 중요한 곳에서 사용한다.

* 참고문헌

-> http://www.boannews.com/media/view.asp?idx=8792&kind=1


 

 

4. WiFi보안  해야 할 것과 하지 말아야 할 것

 http://www.ciokorea.com/news/10828?page=0,0 

 

신고

'Network > Security' 카테고리의 다른 글

Wireless Security - WPA/WPA2  (0) 2013.05.21
Wireless Security - WEP  (0) 2013.05.21
Posted by 사이버 홍길동

댓글을 달아 주세요

1. WEP

 WEP History

 WEP (Wired Equivalent Privacy) 무선  표준을 정의하는 IEEE 802.11 규약의 일부분으로 무선 LAN 운용간의 보안을 위해 사용되는 기술이다.

무선 LAN은 운용간에 전파를 이용하기 때문에, 전선이나 장비에 물리적으로 접근해야만 통신 내용을 도청할 수 있는 유선 통신과는 달리 외부의 침입에 의한 정보 유출의 가능성이 높다. 1997년에 도입된 WEP는 그 당시 전통적인 유선 네트워크와 맞먹는 보안성을 가지도록 만들어졌다.

2001년 초, 암호학자들이 몇 가지 치명적인 약점을 발견하였으며, 오늘날 그 약점을 이용하면 누구나 구할 수 있는 소프트웨어를 사용해 몇 십분 만에 WEP 연결을 크랙할 수 있다. 약점이 발견된 지 몇 달 내로 IEEE는 그것을 해결하기 위한 802.11i 팀을 새로 만들었다. 2003년에 와이파이 얼라이언스에서는 뒤에 나올 802.11i 수정안의 일부였던 WPA(와이파이 보호 접속) WEP를 대체하게 되었다고 발표했다. 마침내 2004년에 802.11i 표준안(일명 WPA2)이 완전히 비준되었고, IEEE WEP-40  WEP-104 모두 원래의 보안 목적을 달성하지 못하여 추천하지 않는다고 선언하였다. 그런 약점이 있음에도 불구하고, WEP는 아직 널리 사용되고 있다. 라우터의 설정 화면에서 제공하는 보안 옵션 중에서 맨 위에 나오는 것이 WEP인 경우가 많다.

WEP가 무선 암호화 프로토콜(Wireless Encryption Protocol)의 약자인 것으로 잘못 알고 있는 경우가 종종 있다.

 

 WEP 의 암호화 방식

 

 WEP 의 기본 암호화 과정은 위 그림과 같다. 암호화 알고리즘으로는 스트림 암호화 기법인RC4를 이용하며, 이에 대한 입력으로 IV(Initialization Vector) 24비트와 Key  40 비트가 더해져 총 64비트 RC4 Key가 나온다.

 이렇게 최종적으로 생성된 RC4 키 스트림과 평문을 XOR 하여 얻어진 데이터가 최종 전송되는 데이터(암호화된 데이터) 가 되는 것이다. WEP 표준의 초안에서는 Key 길이가 40비트 였지만 추후104비트의 키 길이 사용하는 128비트 WEP 프로토콜이 구현되었다.

 하지만 WEP 에서 키 길이를 늘인다고 하여 보안상 허점이 크게 줄어들지는 않는다.

* IV (Initialization Vector) ??

- 패킷마다 랜덤하게 생성되는 24bit 데이터이다. 패킷마다 다르게 생성되기는 하지만, 일반적으로 5000개의 패킷을 사용할 때마다 같은 IV 가 사용된다고 한다.

 

 WEP 의 약점

-      IV  24비트로 너무 짧다. 또한 Key 값은 절대 변하지 않는다. 이것은 즉, IV + Key 값으로 이루어진 RC4 키 스트림이 재사용 될 수 있다는 것이다. Key 값은 불변이므로 랜덤으로 나오게 되는 IV 값이 동일한 값이 나오게 되면 RC4 키 스트림이 재사용 되는 것이다.

-      Key 값이 직접 사용되며 절대 변하지 않는다. RC4 암호화의 입력으로 Key 값이 직접 사용되며 변하지 않는다.

 

 WEP Crack 방법

 WEP Crack 방법 중 가장 효과적으로 알려진 FMS 공격 순서

-      패킷 수집

-      수집된 패킷에서 Weakness IVs 추출

-      Weakness IV 를 이용한 비밀키 추측

보통 64bit WEP Key Crack 하기 위해선 50,000 ~ 200,000 IVs 패킷을 수집해야 하며, 128 bit WEP Key 추출하기 위해선 200,000 ~ 700,000 IVs 개의 패킷이 필요하다고 한다. 따라서 해당 네트워크 접속자가 많아서 많은 패킷이 오갈 때 더 빠르게 Crack 할 수 있다.

 

1) WEP Crack 원리

위 그림에 따르면 키스트림평문 = 암호문 이다. 그러면 평문암호문 = 키스트림 이다. (그림에서 평문은 m+icv(체크섬) 값이다. 암호문은 c 이다.) 이 때 하나의 패킷에 대해 평문과 암호문을 알 수 있다면, 키 스트림 값을 알 수 있다. 그리고 IV 값은 패킷에 헤더 형태로 붙으므로 알 수 있다. ( 기호는 XOR)

그럼 이제 생각해보자.

l  키스트림 = RC4 (IV + Key)

위 공식에서 키스트림을 알고 있고, IV 값 역시 알고 있다. 그리고 이제 Key 를 구해야 한다. 이 때 패킷 하나만 가지고 Key를 구하려면, Key가 될 수 있는 모든값을 넣어봐야 한다.  40비트Key라면 2^40 번을 수행해야 한다. 하지만 이러한 패킷들을 데이터베이스에 모아놓고 Key를 구한다면?? 훨씬 빨라질 것이다. 보통 64bit WEP Key Crack 하기 위해선 50,000 ~ 200,000 IVs패킷을 수집해야 하며, 128 bit WEP Key 추출하기 위해선 200,000 ~ 700,000 IVs 개의 패킷이 필요하다고 한다.

따라서 데이터베이스에 하나의 데이터는 (키스트림, IV) 의 쌍으로 이루어지며, 이러한 데이터들을 얼마나 모았느냐에 따라서 Crack 성공 확률이 높아진다.

그렇다면 이러한 데이터들이 어떻게 Key 값을 알아내는데 도움을 줄까?? WEP 는 이 Key값을 수천개 또는 수만개로 조각내어 IV 값이 다른 여러 키스트림에 넣어놓는다. 이러한 IV 값들을Weakness IV 라고 부른다.

그러므로 500,000 개 이상의 데이터 들 중 Weakness IV 들을 추출하여 암호의 일부분 값들을 조합해 나가면서 최종적인 Key 값을 찾는 것이다. 최근 해킹 툴에선 Weakness IV 들을 자동으로 추출해 내어 빠르게 WEP Crack 을 할 수 있게 해준다.

이러한 WEP Crack 의 기본 원리는  WEP 의 약점 에서 언급했던 “Key 값이 직접 사용되며 절대 변하지 않는다 때문에 가능하다.

 

2) WEP Crack 을 위한 패킷 수집

 1) 에서 살펴봤던 것처럼 WEP Crack 을 위해서는 (키스트림, IV) 의 쌍으로 이루어진 데이터들을 최소 50,000개 이상 모아야 한다. Crack 하려는 네트워크의 사용자가 굉장히 많으면 이 목표량이 금방 달성되겠지만, 만약 1~2명 밖에 사용하지 않는다면?? 패킷 수집 하는 것에만 엄청난 시간이 소요될 것이다.

 따라서 패킷 수집(키스트림, IV 의 쌍) 을 위해서는 해커가 직접 많은 패킷을 생성해 내야만 한다. 이런 방법으로는 ping flooding, arp injection 등의 방법이 있다. 또한 aireply 라는 툴을 이용해 트래픽을 증가시키는 방법도 있다.

 

3) 수집된 패킷 을 이용한 (키스트림, IV) 데이터 쌍 추출

 2) 에서 수집된 패킷은 WEP 에 의해 암호화된 아마 이러한 형태일 것이다.

 

 그런데 실제 Crack 을 위해서는 (키스트림, IV) 쌍의 데이터가 필요하다. 그 말은 곧 위 그림과 같은 패킷에서 키 스트림을 알아내야 한다는 것이다. (IV 는 암호화되지 않은 상태로 패킷에 들어가 있는 것을 그림에서 볼 수 있다. 위 그림에서 C 가 실제 암호문이다.)

l  평문  키스트림 = 암호문

l  키스트림 = 평문  암호문

위 공식에 의하면 키스트림을 알기 위해선 암호문과 평문을 알아내면 된다. 이 때 암호문은 패킷에서 C 에 해당 하는 부분이므로 바로 알 수 있고, 이 암호문을 복호화해서 평문 을 알아내면 된다.

 그렇다면 이제 중요한 것은 어떻게 복호화 해내는가이다. 어떻게 복호화가 가능할까?

 이 때  WEP 의 약점 에서 언급한 “IV 데이터 비트가 너무 짧기 때문에 키 스트림이 재사용 될 가능성 있다 라는 약점이 이용된다. Key 값은 변하지 않기 때문에 만약 IV 값이 동일한 값이 나왔다면, 키스트림 값도 같다는 것이다.

 이를 이용하여 같은 키스트림을 사용하는 2개의 패킷이 있다고 하자. 2개의 패킷의 암호문을 알고 있고, 하나의 패킷에 대한 평문을 알고 있으면 XOR 연산 통해서 다른 패킷의 암호문을 복호화 하여 평문을 만들 수 있다. (이 과정은 좀 복잡함.. 생략했음..)

 

 WEP 전망

 WEP 는 위에서 살펴본 것처럼 보안상 많은 취약점을 안고 있지만, 구형 장비를 비롯한 가장 많은 무선랜 장비에서 사용되는 표준기술이기 때문에 강한 보안을 요구하지 않는 장소에서는 앞으로도 많이 사용될 것으로 생각된다.

 

 

* WEP Crack 에 대해 완전히 이해하기 위해서 더 조사해야 할 것들

- WEP 암호문을 복호화하는 방법 중 IP Redirection 이라는 방법이 있다. 이는 체크섬을 조작하여 공격자에게 복호화된 평문이 전송되도록 하는 방법이다. http://n3015m.tistory.com/3 참고.

- ARP Injection 방법 사용하면 평문과 암호문 모두 얻을 수 있다고 하는데 왜 이게 가능한지 모르겠음.. 이건 따로 생각을 해봐야 할 듯.

- Weakness IVs 이용하여 Key 값 알아내는 알고리즘. 이게 어렵다. 뭔 말인지 모르겠음.http://n3015m.tistory.com/3 참고.

 

 

* 참고문헌

-> http://ko.wikipedia.org/wiki/%EC%9C%A0%EC%84%A0_%EB%8F%99%EB%93%B1_%ED%94%84%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%8B%9C (WEP. Wiki)

-> http://blog.naver.com/lhy332?Redirect=Log&logNo=113293291 (WEP)

-> http://n3015m.tistory.com/3 (WEP Crack 원리)

-> http://www.tomsguide.com/us/how-to-crack-wep,review-451.html (How To Crack WEP)

-> http://www.tomsguide.com/us/how-to-crack-wep,review-459.html (How To Crack WEP2)

-> http://www.dummies.com/how-to/content/understanding-wep-weaknesses.html (Why WEP Crackable??)

-> http://www.openxtra.co.uk/articles/wep-weaknesses (Why WEP Crackable??)

-> http://n3015m.tistory.com/3 (WEP 취약점. 한글자료)

-> http://www.isoc.org/isoc/conferences/ndss/02/papers/stubbl.pdf (AT&T Lab 논문)

-> http://blog.netadmin.kr/16 (WEP 유효성 검증)

-> http://blog.naver.com/youandi0442?Redirect=Log&logNo=80135223797 (WEP Hacking)

-> http://hook.tistory.com/234 (무선랜 WPA-PSK WPA2-PSK 방식에서 TKIP  AES 암호화 방식 사용의 혼동)


신고

'Network > Security' 카테고리의 다른 글

Wireless Security - WPA/WPA2  (0) 2013.05.21
Wireless Security - WEP  (0) 2013.05.21
Posted by 사이버 홍길동

댓글을 달아 주세요

데이터 복구(Data Recovery)란, 저장 장치에 존재하는 파일 시스템이 손상되지 않았거나, 손상이 되었더라도 복구를 할 수 있을 정도여서 쉽게 파일을 구할 수 있는 반면

파일 카빙(File Carving)은 파일 시스템을 기반으로 하는 Data Recovery와 다르게 파일 시스템의 도움을 받지 않고 파일들의 시그니쳐, 논리 구조, 형식 등에 의존하여 전체나 일부분을 복구하는 것을 말한다.


[Data Recovery]

[File Carving]


출처: extr.tistory.com

신고

'Forensic' 카테고리의 다른 글

데이터 복구와 파일 카빙의 차이점  (0) 2013.05.21
Posted by 사이버 홍길동

댓글을 달아 주세요

티스토리 툴바