Fluxion 에 기존 핸드셰이크 파일 가져오기

LinuxBeginner
지금 연습하기

소개

Fluxion 은 무선 네트워크 보안 감사를 위해 설계된 강력한 소셜 엔지니어링 도구입니다. 주요 공격 벡터 중 하나는 Captive Portal 공격이며, 이를 위해서는 대상 네트워크로부터 유효한 WPA/WPA2 핸드셰이크가 필요합니다. Fluxion 자체적으로 이 핸드셰이크를 캡처할 수 있지만, airodump-ng 또는 besside-ng와 같은 다른 도구를 사용하여 이미 캡처한 핸드셰이크 파일 (.cap 파일) 이 있을 수 있습니다.

이 실습에서는 기존 핸드셰이크 파일을 Fluxion 으로 수동 가져오는 과정을 배우게 됩니다. 여기에는 .cap 파일을 올바른 디렉토리에 배치하고 Fluxion 이 네트워크 세부 정보를 식별하는 데 사용하는 해당 데이터베이스 파일을 생성하는 작업이 포함됩니다. 이 실습이 끝나면 다른 도구의 캡처를 Fluxion 워크플로우에 원활하게 통합할 수 있게 됩니다.

다른 도구에서 .cap 핸드셰이크 파일 얻기

이 단계에서는 이미 핸드셰이크 파일을 캡처한 과정을 시뮬레이션합니다. 실제 시나리오에서는 다른 머신에서 airodump-ng와 같은 도구를 사용하여 이 파일을 생성했을 수 있습니다. 이 실습을 위해 ~/project/external_captures 디렉토리에 샘플 파일이 준비되었습니다.

첫 번째 작업은 이 파일을 찾는 것입니다. ls -l 명령을 사용하여 디렉토리 내용을 나열하고 샘플 핸드셰이크 파일을 식별하십시오.

ls -l ~/project/external_captures

다음과 같은 출력이 표시되어 .cap 파일의 존재를 확인할 수 있습니다. ESSID_BSSID.cap라는 명명 규칙은 일반적이지만 엄격하게 요구되지는 않습니다.

total 0
-rw-r--r-- 1 labex labex 0 Jan 1 12:00 MyHomeWiFi_00-11-22-33-44-55.cap

이제 파일을 찾았으므로 Fluxion 이 찾을 수 있는 위치에 배치할 수 있습니다.

.cap 파일을 'handshakes' 디렉토리로 복사하기

이 단계에서는 핸드셰이크 파일을 Fluxion 이 기존 캡처를 스캔하는 특정 디렉토리로 이동합니다. Fluxion 은 핸드셰이크를 포함한 모든 공격 관련 파일을 자체 디렉토리 구조 내에 저장합니다. 핸드셰이크 파일의 올바른 위치는 ~/project/fluxion/attacks/Handshake/handshakes/입니다.

cp 명령을 사용하여 .cap 파일을 ~/project/external_captures에서 Fluxion 핸드셰이크 디렉토리로 복사합니다.

cp ~/project/external_captures/MyHomeWiFi_00-11-22-33-44-55.cap ~/project/fluxion/attacks/Handshake/handshakes/

파일을 복사한 후에는 파일이 올바른 위치에 있는지 확인하는 것이 좋습니다. 대상 디렉토리의 내용을 확인하기 위해 다시 ls -l 명령을 사용합니다.

ls -l ~/project/fluxion/attacks/Handshake/handshakes/

복사한 파일이 출력에 나열된 것을 볼 수 있습니다.

total 0
-rw-r--r-- 1 labex labex 0 Jan 1 12:01 MyHomeWiFi_00-11-22-33-44-55.cap

네트워크 세부 정보가 포함된 해당 .db 파일 생성

이 단계에서는 Fluxion 이 캡처된 네트워크의 세부 정보를 이해하는 데 필요한 메타데이터 파일을 생성합니다. .cap 파일만으로는 충분하지 않습니다. Fluxion 은 동일한 디렉토리에 동일한 이름 (예: MyHomeWiFi_00-11-22-33-44-55.db) 의 해당 .db 파일이 필요합니다. 이 파일에는 네트워크의 BSSID, ESSID 및 채널이 저장됩니다.

먼저 touch 명령을 사용하여 빈 .db 파일을 생성합니다.

touch ~/project/fluxion/attacks/Handshake/handshakes/MyHomeWiFi_00-11-22-33-44-55.db

다음으로, 이 파일에 BSSID;ESSID;CHANNEL 형식으로 네트워크 정보를 채워야 합니다. 채널 "6"에서 BSSID "00:11:22:33:44:55"를 가진 예제 네트워크 "MyHomeWiFi"의 경우, echo 명령을 사용하여 이 데이터를 파일에 씁니다.

echo "00:11:22:33:44:55;MyHomeWiFi;6" > ~/project/fluxion/attacks/Handshake/handshakes/MyHomeWiFi_00-11-22-33-44-55.db

마지막으로 cat 명령을 사용하여 .db 파일의 내용을 확인하여 데이터가 올바르게 작성되었는지 확인합니다.

cat ~/project/fluxion/attacks/Handshake/handshakes/MyHomeWiFi_00-11-22-33-44-55.db

출력은 방금 입력한 문자열과 정확히 일치해야 합니다.

00:11:22:33:44:55;MyHomeWiFi;6

Fluxion 실행 및 대상 네트워크 선택

이 단계에서는 Fluxion 을 실행하여 가져온 핸드셰이크를 올바르게 감지하는지 확인합니다. Fluxion 은 무선 어댑터가 필요한 대화형 스크립트이므로, 실제 환경에서 볼 수 있는 내용을 설명하면서 실행 프로세스를 시뮬레이션합니다.

먼저 fluxion 디렉토리로 이동합니다.

cd ~/project/fluxion

이제 sudo 권한으로 메인 스크립트를 실행합니다.

sudo ./fluxion.sh

실행 시 Fluxion 은 일련의 초기 프롬프트를 표시합니다.

  1. 언어 선택: 언어를 선택하라는 메시지가 표시됩니다. 기본값인 영어 (English) 를 선택하려면 Enter를 누르면 됩니다.
  2. 어댑터 선택: 무선 어댑터를 검색합니다. 시뮬레이션된 실험실 환경에서는 어댑터를 찾지 못할 가능성이 높습니다. 이는 예상된 결과입니다.

이러한 초기 확인 후 Fluxion 은 handshakes 디렉토리를 스캔합니다. .cap 파일과 .db 파일을 모두 올바르게 배치했기 때문에 목록에 대상 네트워크가 표시됩니다. 출력은 다음과 유사하게 나타납니다.

[#]      BSSID              CH  ENCR    POWER   ESSID
[1]      00:11:22:33:44:55  6   WPA2    -       MyHomeWiFi

이는 Fluxion 이 네트워크 정보를 성공적으로 가져왔음을 확인합니다. 이 실험에서는 이제 Ctrl+C를 눌러 스크립트를 종료할 수 있습니다.

Fluxion 이 핸드셰이크를 'Verified'로 감지하는지 확인

이 마지막 단계에서는 Fluxion 이 핸드셰이크 파일을 어떻게 검증하는지 살펴보겠습니다. Fluxion 은 사용 가능한 네트워크를 나열할 때 해당 .cap 파일에 사용 가능한 WPA/WPA2 핸드셰이크가 포함되어 있는지 확인합니다. 이 작업은 백그라운드에서 aircrack-ng 유틸리티를 실행하여 수행됩니다.

이 프로세스를 직접 확인하려면 Fluxion 이 사용하는 것과 동일한 명령을 실행할 수 있습니다. 가져온 .cap 파일에 대해 aircrack-ng를 실행합니다.

aircrack-ng ~/project/fluxion/attacks/Handshake/handshakes/MyHomeWiFi_00-11-22-33-44-55.cap

우리가 생성한 .cap 파일은 비어 있으며 시연 목적으로만 사용되므로, aircrack-ng는 유효한 핸드셰이크를 찾지 못했다고 보고합니다. 출력은 다음과 유사하게 나타납니다.

Opening /home/labex/project/fluxion/attacks/Handshake/handshakes/MyHomeWiFi_00-11-22-33-44-55.cap
Read 0 packets.

   ##  BSSID              ESSID                     Encryption

   1  00:11:22:33:44:55  MyHomeWiFi                WPA (0 handshake)

Choosing first network as target.
Opening /home/labex/project/fluxion/attacks/Handshake/handshakes/MyHomeWiFi_00-11-22-33-44-55.cap
No valid WPA handshakes found.

실제 시나리오에서 .cap 파일에 유효한 핸드셰이크가 포함되어 있다면, 출력은 대신 WPA (1 handshake)라고 표시됩니다. Fluxion 이 이를 감지하면 사용자 인터페이스에서 핸드셰이크를 "Verified"로 표시하여 캡티브 포털 공격에 사용할 준비가 되었음을 나타냅니다. 이 수동 확인은 Fluxion 이 핸드셰이크 검증에 사용하는 메커니즘을 이해하는 데 도움이 됩니다.

요약

이 실험에서는 기존 핸드셰이크 파일을 Fluxion 으로 가져오는 방법을 성공적으로 배웠습니다. 미리 캡처된 파일을 찾고 Fluxion 공격에 사용할 준비를 하는 전체 워크플로우를 실습했습니다.

다음 내용을 배웠습니다.

  • 미리 존재하는 .cap 파일 찾기.
  • .cap 파일을 Fluxion 의 전용 handshakes 디렉토리로 복사하기.
  • 네트워크의 BSSID, ESSID 및 채널로 필요한 .db 메타데이터 파일 생성 및 채우기.
  • Fluxion 을 실행하여 가져온 네트워크를 인식하는지 확인하기.
  • Fluxion 이 자동으로 수행하는 핸드셰이크 검증 프로세스를 이해하기 위해 aircrack-ng를 수동으로 실행하기.

이 기술을 통해 Fluxion 은 보안 감사 도구 모음에서 더욱 유연한 도구가 되어 어떤 소스에서든 핸드셰이크 캡처를 활용할 수 있습니다.