2011最初にこのチュートリアルは事前共有鍵を用いるWPA/WPA2ネットワークをクラッキングするためのものです。WPA/WPA2とは何かということをご存じの上で行われることを推奨します。WPA2をご覧ください。こちらはPDFダウンロードへのリンクです。tutorialも併せてご覧ください。WPA/WPA2には事前共有鍵以外にも様々なタイプの認証方式が備わっています。aircrack-ngは事前共有鍵にたいしてのみ有効です。typeがPSKとなっているネットワークが表示されていることを確認してください。しないと、そもそもクラックできないネットワークに挑戦し、クラックできないことに悩むことになってしまいます。WPA/WPA2とWEPではクラッキングに関して重要な違いがあります。これは以前のWPA/WPA2事前共有鍵のクラッキングへのアプローチです。WEPとは異なり、クラッキングプロセスの速度向上のために統計的な手法が用いられるものの、WPA/AP2に対しては単純な辞書攻撃が用いられています。鍵が固定でないため、WEP暗号をクラックする時のようにIV(初期化ベクタ)を大量に収集しても一向に速度が向上しません。クライアントとアクセスポイント間のハンドシェイクのみが攻撃のきっかけとなる情報を与えてくれます。事実ではない点も含まれますが、このチュートリアルの目的から考えれば、事実と考えていただいて差し支えありません。事前共有鍵は8から63文字長で構成されているため、現実的にはクラックが不可能です。事前共有鍵をクラックできるケースとしては、鍵が辞書に含まれている言葉を用いている場合と比較的短い鍵を用いている場合です。逆に言えば、自宅の無線ネットワークをクラックされないためには、WPA/WPA2を用い、特殊な文字を含むランダムな63文字のパスワードを設定することです。辞書攻撃を用いる影響は計りしれません。それは非常にコンピュータ集約的であり、CPUに依存するため、1秒間に試せるのはせいぜい50から300キーほどだからです。原文では1秒間に50から300と記載されていますが、最近ではそんなに遅くは無いかと思います。大きな辞書でごりごりクラッキングするには何日とはかからなくても、数時間はかかります。チェックすることをおすすめします。辞書攻撃に必要な時間の少なさに驚くかと思います。重要つまりWPA/WPA2を破るには辞書に含まれている文字列が使われてなければなりません。辞書に含まれていなければ、aircrack-ngは鍵を特定することができません。クラッキングするにあたり、WPAかWPA2であるかは大きな違いではありません。認証方式は基本的に同じです。従って、方法は全く同じです。ここでの考え方やテクニックになれるためにはご自宅のアクセスポイントで実験してみることをおすすめします。ご自身で管理されているアクセスポイントをお持ちでない場合は、所有者に許可を取ってから行うようにしてください。前向きであるかないかに関わらず、建設的なフィードバックをお待ちしています。トラブルシューティングのアイデアやテクニックも大いに歓迎です。Injectionパッチの当たったドライバを用いる。testで確認できます。アクセスポイントに対してパケットを送受するのに物理的に十分近い場所にいること。アクセスポイントからパケットを受け取れるからといって、パケットを遅れるとは限りません。一般的な無線LANカードはアクセスポイントほど強い電波を発しません。そのため、あなたのクライアントからアクセスポイントや他のワイヤレスクライアントに対してパケットを送ったり受け取るためには物理的に十分近づく必要があります。この方法で特定のアクセスポイントと通信できているかどうかを確認できます。aircrack-ngのv0.9.1以上を使う。他のバージョンではコマンドオプションが違うかもしれません。上記の条件を満たしていても、下記の通り動かない場合があります。以下の例中で用いられている“ath0”をあなたが利用している無線LANカードのインターフェース名に変更する必要があります。ath0あなたが試そうとしているネットワークについても上記と同等の情報を集めなくてはなりません。その上で、以下の例中の値を読み替えてください。目標はWPA/WPA2ハンドシェイクを取得し、次に、aircrack-ngを用いて事前共有鍵をクラックすることです。アクティブ方式とパッシブ方式、どちらの方式でも可能です。アクティブとは既に繋がっている無線LANクライアントの認証を一旦無効化することによりハンドシェイクの取得を早めることを意味しています。パッシブとは無線LANクライアントが新たにWPA/WPA2ネットワークに参加し認証されるのをただ待つことを意味しています。パッシブ方式の利点はInjectionができなくともよく、Windows版のaircrack-ngでも可能ということです。基本的なステップ:特定のチャネルに設定し、モニターモードで無線LANインターフェースを起動する。ハンドシェイクを取得するために、BSSIDフィルタを用いてアクセスポイントのチャネルに合わせてairodump-ngを起動する。認証済みの無線LANクライアントの認証を一旦無効化するためにaireplay-ngを用いる。ハンドシェイクを用いて事前共有鍵をクラックするためにaircrack-ngを走らせる。モニターモードで無線LANインターフェースを起動するこのステップの目標はあなたの無線LANカードをいわゆるモニターモードで起動することです。モニターモードは周辺環境の全ての無線LANパケットを拾うモードです。通常、無線LANカードはそのカードと無線通信を行っているパケットのみ拾うことができます。全てのパケットを拾うことで、WPA/WPA2の4Wayハンドシェイクも拾うことが可能となります。同様に、後のステップで述べるとおり、認証済み無線LANクライアントの認証を一旦無効化することも可能となります。モニターモードを有効にするための厳密な手順はあなたの使っている無線LANカードのドライバによって変わります。ドライバを特定するために次のコマンドを実行してください。Broadcomチップを搭載した無線LANカードでは、次のようにレスポンスがあります。wifi0)ドライバ名の後の[phy0]タグの表示は、mac80211向けの表示です。ここでBroadcomカードはmac80211ドライバを利用しています。v1.0-rc1以降でサポートされています。v0.9.1.では動きません。Aterosカードは両方ともドライバとして“madwifi-ng”を表示しています。Atherosカードはmadwifi-ng-specificステップに従って設定します。最後に、Ralinkのドライバ欄にはどちらも表示されていません。従って、ieee80211ドライバを用いています。こちらの設定には一般的な設定手順をご覧ください。設定まず、ath0を止めます。destroyed)“iwconfig”と入力し、他にathXインターフェースが無いことを確認します。無い場合はこんな風に表示されます。extensions.athXインターフェースがある場合は、それを止めます。それから“iwconfig”を実行し他にインタフェースが残っていないことを確認します。次のコマンドを入力し、チャンネル9でモニターモードで無線LANカードを起動します。9注意:ここでは“ath0”の代わりに“wifi0”を用いました。これはmadwifi-ngドライバが使用中のためです。enabled)上記のように“ath0”がモニターモードとしてレポートされていることに気づきます。インターフェースが正しく設定されていることを確認するために、“iwconfig”と入力します。beacon:0上記のレスポンスでは、ath0はチャンネル9、2.452GHz、モニターモードで起動されていることがわかります。アクセスポイントはあなたの無線カードのMacアドレスを表示しています。madwifi-ngドライバのみAP欄にカードのMACアドレスが表示されます。他のドライバでは表示されません。次に進み適切に動かすためには、ここに表示されている全ての情報について確認することが重要です。各チャンネルごとの周波数がわかります。ドライバの設定madwifi-ngとはことなり、mac80211ドライバの設定にはwlan0インターフェースの削除は必要ありません。その代わり、チャンネル9でモニターモードを起動するためには次のコマンドが必要となります。mon0)airmon-ngはmon0でモニターモードが起動していることに注意してください。そのため、このあとのチュートリアルではインターフェース名をmon0としてください。Wlan0はまだ通常(マネージド)モードで普通に使われ、攻撃しようとしているアクセスポイントと同じチャンネルで接続されています。チャンネルホッピングは使われていない状態です。設定を確かめるためには、“iwconfig”を実行してください。次のようなレスポンスがあります。beacon:0ここで、mon0はチャンネル9(2.452GHz)でモニターモードとして表示されています。madwifi-ngとは異なり、モニターインターフェースにはアクセスポイント欄がありません。wlan0は依然として表示され、マネージドモードですがこれが通常の状態です。両方のインターフェースは共通の無線を共有するため、常に同じチャンネルとして合わされることになります。一方のチャンネルを変更すれば他方のチャンネルも変わることになります。他(ieee80211ベース)のドライバでは、モニターモードを有効にするには、次のコマンドを実行するだけです。(rausb0をあなたの環境のインターフェース名に変更してください。enabled)この時点でインターフェースは使用する準備ができています。起動するこのステップの目標はairodump-ngを実行し、ターゲットとなるアクセスポイントの4wayハンドシェイクを取得することです。無線LANネットワークのチャンネルです。アクセスポイントのMACアドレスです。これにより余分なトラフィックを防げます。IVを含むファイルを保存する際のファイル名です。インターフェース名です。重要:“--ivs”オプションは用いないでください。全てのパケットを取得しなければなりません。00:14:6C:7E:40:80”に注意してください。これはairodump-ngが4Wayハンドシェイクを正しく取得できたことを表しています。これは無線LANクライアントと接続出来ていない状態です。無線LANクライアントの認証を無効化するためにaireplay-ngを用いるこのステップはオプションです。我慢強ければ、アクセスポイントへクライアントが接続しに来るまで待ち、airodump-ngでハンドシェイクを収集すればよいことです。この手順を自ら高速化する際にこのステップを実施すればよいでしょう。ここでの制約は、無線LANクライアントがアクセスポイントと接続済みでなければならないということです。一台もアクセスポイントと接続していなければ、ハンドシェイクを取得するためにクライアントがアクセスポイントに接続するまで我慢強く待たなければなりません。言うまでもありませんが、ハンドシェイクの取得に失敗すれば、またこのステップを実行することになります。このステップでは無線LANクライアントに対して、既にアクセスポイントとの接続が切れていることを装うパケットを送ります。無線LANクライアントはアクセスポイントとの再認証を行い始めます。再認証が今必要としている4Wayハンドシェイクを発生させるきっかけとなります。これこそがWPA/WPA2の事前共有鍵を破るために必要なものです。前のステップのairodump-ngの結果に基づき、どのクライアントが現在接続されているかを判断します。このあとでMACアドレスが必要となります。別のコンソールを開き、次のように入力します。認証の取り消しを意味します。認証取り消し先の数を入力します。(複数を設定することも可能です。アクセスポイントのMACアドレスです。認証取り消し先のクライアントのMACアドレスです。[00:0F:B5:34:30:30]幸運なことに、このケースではクライアントの再認証を引き起こし、4Wayハンドシェイクが得られました。トラブルシューティング認証取り消しパケットはあなたのPCからクライアントに直接送られます。そのため、パケットをクライアントに届かせるために、物理的に十分近づかなくてはなりません。クライアントが認証取り消しパケットを受信したことを確認するためには、tcpdumpか何かを使ってクライアントから戻ってきたACKパケットを観察すればよいでしょう。ACkパケットが戻ってこなければ、クライアントは認証取り消しパケットを受け取っていないことになります。事前共有鍵をクラックするためにaircrack-ngを実行するこのステップの目標は実際にWPA/WPA2事前共有鍵をクラックすることです。クラックするためには辞書攻撃の入力に用いる辞書が必要となります。基本的には、aircrack-ngは1ワードづつそれが事前共有鍵かどうかを試すだけです。aircrack-ngには小さな辞書“password.lst”が付属しています。このファイルはaircrack-ngのソースコードの“test”ディレクトリにあります。FAQには広範囲な辞書ソースが掲載されています。(JTR)を使えば、ご自身の辞書リストを作成できます。aircrack-ngへパイプします。JTRとaircrack-ngの連携はこのチュートリアルを超えるため割愛します。同じディレクトリにない場合はフルパスで記載してください。キャプチャーしたパケットを保存されているファイル群の名前です。用いることが可能です。これはハンドシェイクが見つからなかった場合の典型的なレスポンスです。found.こうなった場合は、ステップ3(無線LANクライアントの認証取り消し)を再度実行するか、パッシブ方式ならじっと待つことです。パッシブ方式の場合は、クライアントがアクセスポイントに認証を求めるまで待たなければなりません。target.ここで、aircrack-ngは事前共有鍵のクラックを試みることを始めます。CPUスピードと辞書サイズの大きさに依存し、クラックには長い時間がかかります。CBトラブルシューティングハンドシェイクが取得できない!4Wayハンドシェイクを取得するにはテクニックが必要なことがあります。ここではいくつかのトラブルシューティングテクニックを提供します。モニターに用いるカードはクライアント、アクセスポイントとともに同じモードにしなくてはなりません。モニター用のカードが“B”モードでクライアントやアクセスポイントが“G”モードを利用している場合、ハンドシェイクは取得できません。これは“turbo”モードや他の新しい技術が用いられている新しいアクセスポイントやクライアントでは特に重要となってきます。いくつかのドライバでは、モードを指定することが可能です。iwconfigには“modulation”オプションが用意されています。iwconfig”でごらんください。モニターモードのカードを同じ速度に設定しなくてはならない場合もあります。パケットを取得するカードがアクセスポイントと同じチャンネルに固定されていることを確認してください。<APのチャンネル>“で指定することが可能です。同じPCで無線LANマネージャが動いていないことを確認してください。無線LANマネージャはあなたの知らないところでチャンネルやモードを変更します。アクセスポイントと無線LANクライアントからのパケットを受信するために物理的に十分近づいてください。無線LANカードの電波強度はアクセスポイントのそれよりも低いのが通常です。逆に、あまりにも近づきすぎるとエラーパケットを受け取ったり、パケットが破棄されることがあります。そのため近づきすぎは禁物です。wikiに掲載されているドライバを使っていることを確認してください。ドライバによっては、古いバージョンでは全てのパケットを取得できないことがあります。理想としては、ハンドシェイクを生成するために無線LANクライアントを実際に接続、切断することです。認証を取り消すテクニックを用いる場合、クライアントが再認証を起こすのに必要な極々最低限のパケットを送ることです。通常、ここでは一つの認証取り消しパケットが用いられます。送りすぎるとクライアントは再接続に失敗するため4Wayハンドシェイクを生成しません。同様に、ブロードキャストではなく、直接認証取り消しを送ります。クライアントが認証取り消しパケットを受け取ったことを確認するために、tcpdumpなどACKパケットを観察できるツールを用います。ACKパケットを受け取れなかった場合は、クライアントは認証取り消しパケットを受け取っていないと言うことです。クライアントの無線を一旦止めてから再起動してみる。Kismetなどの邪魔をするプログラムやプロセスを実行させない。tutorialを用いて取得したデータに問題がないかを確認する。アクセスポイントのパケットの欠損、クライアントのパケットの欠損などを特定できます。残念ながら、4Wayハンドシェイクを適切に取得するためには少し実験じみたことが必要となることがあります。ポイントは、初回でダメなら、少し我慢していろいろと試してみることです。すればできるでしょう!もう一つのアプローチはWiresharkを使って、取得したパケットを分析することです。これが問題を解く手がかりとなることがあります。tutorialはこのチュートリアルと一緒に読むことで、通常のWPA接続のしくみを理解する手引きになります。FAQにはWiresharkの詳細な使い方が掲載されています。理想的な話をすれば、ちゃんとパケットを取得できる無線LANデバイスを使うべきです。いくつかのドライバ、例えば、RTL8187Lなどはカード自身が送信したパケットを取得できません。wikiに掲載されているバージョンのドライバを利用してください。RT73などの古いバージョンのドライバではクライアントパケットが取得できないことがあるためです。Wiresharkを利用する際は、”eapol”フィルターを使うことでEAPOLパケットだけを手早く表示できます。どのEAPOLパケットが実際に取得できたかにより、修正計画を決めます。クライアントパケットを損失している場合は、理由を特定し、どうやってクライアントパケットを取得するかを考えます。パケット分析をしっかり行えるようになるためには、airodump-ngをBSSIDフィルターなしで起動し、IVだけでなく全パケットを取得することです。BSSIDフィルターを用いない理由は、ACKパケットを含め全てのパケットを確認するためです。BSSIDフィルターを用いると、パケット取得時に特定のパケットが欠損してしまいます。クライアントまたはアクセスポイントから送られる全てのパケットは承認されていなければなりません。これは元のパケットを送ったデバイスを宛先とするMACアドレスを持った承認パケットによってなされます。クライアントの認証取り消しを行えば、ACKパケットを受け取れることでこの事実を確認できます。このことはクライアントが認証取り消しパケットを受け取ったかどうかを確認できます。ACKパケットを受け取るのに失敗したということは、クライアントは送信範囲から外れていると言うことを意味します。従って、失敗したと言うわけです。パケット分析をするに当たって、詳細な手引きをすることは不可能です。いくつかのテクニックと見るべき項目について触れました。WPA/WPA2についての技術を磨くことと、Wiresharkを使いこなすための努力こそが必要なことです。表示される上記の「ハンドシェイクが取得できない!」にまつわるトラブルシューティングをご覧ください。表示される上記の「ハンドシェイクが取得できない!」にまつわるトラブルシューティングをご覧ください。International。