
오프라인 Wi-Fi Protected Setup 무차별 대입 유틸리티
Pixiewps는 C로 작성된 도구로, 일부 소프트웨어 구현의 낮거나 존재하지 않는 엔트로피를 악용하여 WPS PIN을 오프라인 무차별 대입하는 데 사용됩니다. 이른바 "pixie-dust 공격"은 2014년 여름 Dominique Bongard에 의해 발견되었습니다. 교육 목적으로만 사용됩니다.
Reaver나 Bully와 같은 도구에 구현된 기존의 온라인 무차별 대입 공격과 달리, 이 방법은 취약한 경우 대상에 따라 PIN을 몇 초 또는 몇 분 만에 얻을 수 있습니다.

버전 1.4부터는 일부 장치에 대해 완전한 수동 캡처(M1~M7)에서 WPA-PSK를 복구할 수도 있습니다(현재는 --mode 3과 함께 작동하는 일부 장치만 해당).

이 모든 것은 커뮤니티의 프로젝트로 시작되었으며, 자세한 내용은 다음에서 확인할 수 있습니다:
또한 wiki를 방문할 수 있습니다.
apt-get -y install build-essential
OpenSSL은 더 나은 속도를 위해 선택적으로 다시 도입되었습니다. Build 섹션을 참조하세요.
다운로드
git clone https://github.com/wiire/pixiewps
또는
wget https://github.com/wiire/pixiewps/archive/master.zip && unzip master.zip
빌드
cd pixiewps*/
make
선택적으로 make OPENSSL=1을 실행하여 더 빠른 OpenSSL SHA-256 함수를 사용할 수 있습니다.
설치
sudo make install
Usage: pixiewps <arguments>
Required arguments:
-e, --pke : Enrollee public key
-r, --pkr : Registrar public key
-s, --e-hash1 : Enrollee hash 1
-z, --e-hash2 : Enrollee hash 2
-a, --authkey : Authentication session key
-n, --e-nonce : Enrollee nonce
Optional arguments:
-m, --r-nonce : Registrar nonce
-b, --e-bssid : Enrollee BSSID
-v, --verbosity : Verbosity level 1-3, 1 is quietest [3]
-o, --output : Write output to file
-j, --jobs : Number of parallel threads to use [Auto]
-h : Display this usage screen
--help : Verbose help and more usage examples
-V, --version : Display version
--mode N[,... N] : Mode selection, comma separated [Auto]
--start [mm/]yyyy : Starting date (only mode 3) [+1 day]
--end [mm/]yyyy : Ending date (only mode 3) [-1 day]
-f, --force : Bruteforce full range (only mode 3)
Miscellaneous arguments:
-7, --m7-enc : Recover encrypted settings from M7 (only mode 3)
-5, --m5-enc : Recover secret nonce from M5 (only mode 3)
가장 일반적인 사용 예는 다음과 같습니다:
pixiewps --pke ... --pkr ... --e-hash1 ... --e-hash2 ... --authkey ... --e-nonce ...
이를 위해서는 인증 세션 키 (--authkey, -a)를 출력하는 수정된 버전의 Reaver 또는 Bully가 필요합니다. 권장 버전은 reaver-wps-fork-t6x입니다.
이 프로그램에는 man 페이지와 더 많은 예제가 포함된 상세 도움말 화면(--help)도 있습니다.
이 기능은 Reaver 1.3에서 도입되었습니다. 개인 키 = 1을 선택하여 공개 키 --pkr = 2가 되도록 합니다. 이는 AP가 Diffie-Hellman 공유 비밀을 계산하는 데 필요한 계산을 줄여 크래킹 속도를 높이며, 이 공유 비밀은 나중에 현재 트랜잭션을 암호화하는 세션 키를 파생하는 데 사용됩니다. Pixiewps는 이 기능을 활용하여 사용자가 --pkr을 입력할 필요가 없으며(항상 2임), 추가 인수 --r-nonce 및 --bssid가 지정된 경우 --authkey와 같은 세션 키를 선택적으로 계산할 수 있습니다.
일부 라우터는 버그가 있어 이 기능이 제대로 작동하지 않는 것으로 밝혀졌습니다. 일부는 올바른 PIN을 검증하지 못하고 M4 이후 트랜잭션이 실패할 수도 있습니다. 이러한 이유로 이 기능은 더 이상 사용되지 않으며 Reaver에서 절대 사용해서는 안 됩니다.
이 옵션은 Registrar가 PIN을 알고 있음을 증명하고 Enrollee(액세스 포인트)가 현재 네트워크 구성을 보낼 때 M7에서 발견되는 암호화된 설정 속성이 필요합니다.
이 기능은 수동 패킷 캡처(예: PBC 세션 스니핑)에서 WPA-PSK(및 WPS PIN)를 크래킹하는 데 사용할 수 있습니다.
이 옵션은 모드 3에서만 사용됩니다. 사용하면 pixiewps가 현재 시간부터 무차별 대입을 시작하여 0까지 거슬러 올라갑니다. 개념적으로는 --end 01/1970만 사용하는 것과 동일합니다(또는 상호 교환 가능하므로 --start 01/1970).
<empty>로 표시된 빈 PIN은 Reaver 1.6.1 이상에서 -p ""로 테스트할 수 있습니다. 이는 PIN 변수가 NULL(또는 빈 문자열)로 설정된 일부 액세스 포인트의 PIN 방법 오구성에서 비롯됩니다.

Pixiewps는 다양한 플랫폼에서 컴파일할 수 있습니다. Windows에서는 MinGW로 컴파일할 수 있습니다. pthread 지원이 설치되어 있는지 확인하세요.
버전 1.4.1부터 OpenWrt 및 LEDE 공식 저장소에 포함되었습니다.
버전 번호는 1.x.y 형식이며, x는 일반적으로 주요 릴리스를, y는 부 릴리스(일반적으로 버그 수정 또는 기타 작은 변경)를 나타냅니다. 모든 주요 릴리스는 y = 0으로 시작하며, 게시 후 처음 몇 시간 동안은 명시적으로 표시되지 않더라도 불안정한 것으로 간주되어야 합니다.
릴리스 간 변경 사항 목록은 CHANGELOG를 참조하세요.
:', '-', ' ', 또는 구분자 없이WPS pin 및 WPA-PSK와 같은 가장 유용한 태그는 성공 시 [+], 실패 시 [-]로 표시됩니다.0을 반환합니다.첫 번째 릴리스 이후 pixiewps는 많이 개선되었지만, 시장에 있는 모든 장치를 추적하는 것은 어렵습니다. 사용자가 테스트한 장치의 매개변수에 관심이 있음을 암시하는 자동 메시지를 추가하기로 결정했습니다.
kcdtv, rofl0r, binarymaster에게 큰 감사를 드립니다.soxrok2212, datahead, t6_x, aanarchyy 및 Kali Linux 커뮤니티에 특별히 감사드립니다.Pixiewps는 Dominique Bongard(@Reversity)의 작업을 기반으로 합니다: