TAU-HOME.COM
LOADING

Airgorah: Rust와 GTK4로 구축된 리눅스용 현대적 WiFi 보안 감사 도구

aircrack-ng 의존성 없이 Rust와 GTK4로 동작하며, 무선 트래픽 캡처·클라이언트 탐지·Deauth 공격·핸드셰이크 및 PMKID 수집을 지원하는 오픈소스 WiFi 감사 도구 Airgorah를 정리합니다.

tau · 2026년 10월 8일

#airgorah #rust #gtk4 #wifi-security #pentesting #linux

Airgorah: Rust와 GTK4로 구축된 리눅스용 현대적 WiFi 보안 감사 도구

Airgorah는 Rust 언어와 GTK4 GUI 툴킷으로 개발된 리눅스(Linux) 환경 전용 오픈소스 무선 네트워크 보안 감사 소프트웨어입니다. 개발자 martin-olivier가 공개한 이 도구(AUR 패키지 메타데이터에는 MIT 라이선스로 표기)는 주변 WiFi 트래픽 캡처, 연결 클라이언트 탐지, 디오센티케이션(Deauth) 공격, 그리고 핸드셰이크 및 PMKID 수집과 비밀번호 크래킹까지 무선 보안 감사에 필요한 핵심 절차를 그래픽 인터페이스로 제공합니다.

Rust와 GTK4 기반으로 주변 무선 네트워크와 연결 클라이언트를 시각화하는 Airgorah GUI 대시보드 화면

이미지 출처: Tom Dörr (@tom_doerr) / martin-olivier

Airgorah 초기 릴리즈는 root 권한 단일 GTK 프로세스로 실행됐으나, 이후 프로세스를 비특권 GUI와 소형 특권 헬퍼로 분리하면서 Wayland와 X11 환경 모두에서 동작합니다.

권한 분리 아키텍처와 Wayland·X11 지원

Airgorah의 핵심 설계 특성 중 하나는 일반 사용자 권한의 GUI와 특권 에이전트 간의 엄격한 권한 분리(Privilege Separation) 구조입니다.

Airgorah 자체가 과거에는 무선 인터페이스 조작과 패킷 주입을 위해 root 단일 GTK 프로세스로 실행됐습니다. 릴리즈 노트는 이 프로세스를 분리한 뒤 프로그램이 최신 리눅스 배포판의 Wayland 세션 환경에서도 동작한다고 설명합니다.

  • 비특권 GUI와 airgorah-agent 분리: 메인 GTK4 사용자 인터페이스는 일반 사용자 권한으로 실행되어 X11과 Wayland 환경 모두에서 구동됩니다.
  • polkit(pkexec) 기반 단일 인증: 무선 인터페이스 선택 후 특권 작업이 필요할 때 polkit(pkexec)을 통해 경량 특권 프로세스인 airgorah-agent를 기동하며, 사용자는 1회의 인증 절차만 거치면 됩니다.
  • 격리된 로컬 소켓 IPC: GUI와 에이전트는 /run/airgorah/{uid}-{instance}.sock 경로의 유닉스 도메인 소켓을 통해 통신합니다. 소켓은 실행한 사용자의 uid와 인스턴스(GUI 프로세스) id 조합으로 구분됩니다. 4바이트 빅엔디안 길이 접두사와 JSON 인코딩 메시지 규약을 사용하여 다중 인스턴스가 동시에 실행되더라도 충돌 없이 안전하게 상태를 교환합니다.

실시간 트래픽 분석부터 핸드셰이크·PMKID 수집까지

Airgorah는 무선 감사 실무에 필요한 핵심 기능들을 그래픽 인터페이스로 제공합니다.

애플리케이션을 실행하면 시스템에서 사용 가능한 무선 네트워크 인터페이스 목록이 표시되며, 원하는 인터페이스를 선택해 실시간 스캔을 시작할 수 있습니다. 상태 표시줄에는 인터페이스가 현재 수신 대기 중인 채널이 표시되며, 디오스 공격 중에는 해당 채널에 스캔을 고정 유지하는 기능을 지원합니다.

  • 연결 클라이언트 탐지: 주변 무선 네트워크가 감지되는 즉시 실시간으로 목록이 갱신되며, 선택한 무선 네트워크에 접속된 클라이언트 목록을 확인할 수 있습니다.
  • 디오센티케이션(Deauth) 공격 실행: 선택한 무선 네트워크를 대상으로 디오스 공격 창을 열어 대상 클라이언트를 지정하고 연결 해제 공격을 수행할 수 있습니다.
  • 핸드셰이크 캡처: 디오스 공격 등으로 클라이언트가 재연결될 때 발생하는 핸드셰이크 패킷을 감지하고 수집합니다.
  • AP 직접 PMKID 수집 및 요청: PMKID 감지·표시·요청(solicitation)을 지원합니다. 한 제3자 답글은 이 흐름을 클라이언트 재접속 대기 없이 AP에서 직접 크래킹 가능한 해시를 얻는 방식이라고 설명합니다.

수집된 핸드셰이크와 PMKID는 Airgorah 내에서 대상 무선 네트워크의 비밀번호 크래킹 작업에 활용할 수 있습니다.

aircrack-ng 스위트·mergecap 의존성 제거와 Rust 구현 전환

Airgorah 프로젝트의 진화 과정에서 중요한 변화는 릴리즈 노트에 명시된 aircrack-ng 스위트 및 mergecap 의존성 제거입니다.

0.7.4 시점 README는 프로젝트를 aircrack-ng 툴스위트 기반이라고 설명하며, 확보된 사용법 위키 스냅샷은 airodump-ng 결과 데이터를 파싱해 표시하는 방식을 설명합니다(과거 문서화된 흐름이며 현재 동작이 아닙니다).

그러나 확보된 릴리즈 노트에 적힌 외부 aircrack-ng 스위트 및 mergecap 의존성 제거 항목을 기점으로, 무선 네트워크 감사 기능을 Rust 코드로 구현했습니다.

이로 인해 외부 도구 설치 부담이 줄어듭니다. 배포 채널 역시 GitHub 릴리즈 소스코드뿐만 아니라 Rust 공식 패키지 저장소인 crates.io(airgorah, IPC 크레이트 airgorah-common은 docs.rs에 문서화)와 Arch Linux AUR(airgorah) 등을 통해 제공됩니다.

플랫폼 범위와 인가된 환경 사용 지침

Airgorah를 활용하기 전에 플랫폼 범위와 사용 경계를 확인해야 합니다.

소프트웨어는 리눅스 운영체제 전용으로 설계되었으며, 실행 시 시스템에서 사용 가능한 무선 인터페이스 중 하나를 선택해 스캔과 공격에 사용합니다.

동시에 도구 사용에 따른 사용 경계를 준수해야 합니다.

  • 인가된 네트워크 전용: 자신이 소유하고 있거나 공식적인 승인을 받은 무선 네트워크 환경에서만 보안 감사 목적으로 사용해야 합니다.
  • 법적 제약: 인가되지 않은 환경에서는 사용하지 말고 관련 법규를 준수해야 합니다.

Airgorah는 관리자가 자체 구축한 무선 인프라의 보안 취약점을 점검하는 현대적이고 직관적인 감사 도구로 활용될 수 있습니다.

출처