WPA-EAP 및 MSCHAP-v2를 사용하여 wpa_supplicant.conf에서 비밀번호 숨기기


23

wpa_supplicant.conf모습은 다음과 같습니다.

network={
  ssid="Some name"
  scan_ssid=1
  key_mgmt=WPA-EAP
  eap=PEAP
  identity="my-user-id"
  password="(clear text password here)"
  ca_cert="/usr/share/ca-certificates/mozilla/GeoTrust_Global_CA.crt"
  phase2="auth=MSCHAPV2"
}

WPA-EAP와 MSCHAP-v2의 특정 조합으로이 구성 파일에 비밀번호를 명확하게 포함시키지 않는 방법이 있습니까?

ChangeLog는 이것이 가능하다고 주장하는 것 같습니다 (2005 년 이후!) :

* added support for storing EAP user password as NtPasswordHash instead
  of plaintext password when using MSCHAP or MSCHAPv2 for
  authentication (hash:<16-octet hex value>); added nt_password_hash
  tool for hashing password to generate NtPasswordHash

몇 가지 참고 사항 :

  • 이 네트워크를 제어 할 수 없으므로 다른 비밀번호를 사용하는 것은 옵션이 아닙니다 (이는 회사 네트워크이며 단일 사용자 이름 / 비밀번호는 Wi-Fi 연결을 포함하여 모든 서비스에 액세스하는 데 사용됨).

  • 중복에 대한 단어 :

1 anser는 해시 된 암호를 사용하면 해시가 암호가된다고 주장합니다. 이것은 기술적으로 사실이지만 적어도 해시는 wifi 전용 암호이므로 여러 서비스에 대한 액세스 권한을 부여하는 공유 암호를 유출하는 것보다 상당히 진척 입니다.

답변:


20

NtPasswordHash다음과 같이 (일명 NTLM 암호 해시)를 직접 생성 할 수 있습니다 .

echo -n plaintext_password_here | iconv -t utf16le | openssl md4

wpa_supplicant.conf 파일에서 "hash :"접두사를 붙입니다.

password=hash:6602f435f01b9173889a8d3b9bdcfd0b

macOS에서 iconv 코드는 UTF-16LE

echo -n plaintext_password_here | iconv -t UTF-16LE | openssl md4

많은 보안을 얻지 못합니다. 공격자가 해시가있는 파일을 찾으면 컴퓨터와 같은 방식으로 네트워크에 간단하게 가입 할 수 있으므로 암호를 해시해도 전혀 도움이되지 않습니다. 암호가 다른 곳에서 사용되면 공격자는 무차별 대입을 사용하여 원래 암호를 찾아야합니다 (예 : 가장 가능성이 높은 암호를 시도하고 일치하는 것을 찾을 때까지 해시를 계산). 일반 PC에서 초당 약 10 억 해시를 계산할 수 있기 때문에 이는 큰 장애물이 아니며 해시가 솔트되지 않기 때문에 공격자는 미리 계산 된 테이블을 쉽게 사용할 수 있습니다. NT는 암호 해싱 알고리즘으로 정말 끔찍합니다.


감사! 이것은 유망 해 보이지만 나에게는 효과가 없습니다. 상기 찾고 -dwpa_supplicant를의 추적, 나는 다른 얻을 EAP-PEAP: Derived Session-Id, EAP-PEAP: Decrypted Phase 2 EAP, MSCHAPV2: auth_challenge - hexdump(len=16):,과 MSCHAPV2: password hash - hexdump(len=...)출력을, 그리고 마지막으로 두 개의 메시지는 말 EAP-TLV: TLV Result - FailureEAPOL authentication completed - result=FAILURE
클레망

간단히 설명하자면 MSCHAPV2: password hash - hexdump, 실패한 디버그 추적에 줄이 생겼습니다 (암호화되지 않은 MSCHAPV2: password - hexdump_ascii줄에 줄이 있음). 연결이 실패합니다
Clément

1
@ Clément 올바른 해시가 생성되고 있는지 확인하기 위해 시스템에서 실행 된 위의 명령 이이 온라인 계산기 와 동일한 해시를 계산 합니까?
귀도

1
암호가 14자를 초과하면 작동하지 않습니다.
tjohnson

1
@Alden 매우 싸다. 해시에서 입력으로 직접 되돌아 갈 수는 없지만 가능한 많은 비밀번호를 시도하고 일치하는 비밀번호를 찾을 때까지 해시를 계산할 수 있습니다. MD4는 6 년 된 GPU로 2 초 만에 매우 빠릅니다 .
Gilles 'SO- 악마 그만해'

16

터미널 열기 및 유형 :

wpa_passphrase YOUR_SSID YOUR_PASSWORD

샘플 출력 :

network={
    ssid="YOUR_SSID"
    #psk="YOUR_PASSWORD"
    psk=6a24edf1592aec4465271b7dcd204601b6e78df3186ce1a62a31f40ae9630702
}

wpa_supplicant.conf파일을 열고 다음 줄을 추가하십시오.

psk=6a24edf1592aec4465271b7dcd204601b6e78df3186ce1a62a31f40ae9630702

2
WPA PSK (SSID와 암호의 해시 조합)는 NTLM 해시 / NtPasswordHash (암호의 16 비트 MD4 해시)와 다릅니다.
Guido

5
OP는 WPA-PSK가 아닌 WPA-EAP에 대해 질문했습니다.
Guido

2
게시물이 명확하지 않은 경우 죄송합니다.이 목록은 처음으로 중복되지 않은 솔루션입니다. 내가 요구하는 구성에는 사전 공유 키가 없습니다.
Clément

1
이것은 특정 질문이 아닐 수도 있지만 문제를 해결하는 데 도움이되었습니다. 고맙습니다.
typelogic
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.