概要
今日は家で使っているWIFIのパスワードを調べるコマンドを作成しました。
普段WiFiパスワードを調べるにはWEBで検索して画面操作でパスワードを確認しまたが、
今回はパソコンからアクセスしたことがあるWIFIのパスワードを表示するコマンドを実行でパスワードが分かるようになります。
事前準備
①WIFIをアクセスしたことがあるノートパソコンまたはデスクトップPCを用意します。
②対象のパソコンに.net frameworkがインストールする必要がります。
→.net 4.7.2をインストールします。
ソースコード
次のコードをVisual Studioで作成します。
※コンソールアプリケーションにソリューションを作成します。
using System;
using System.Diagnostics;
using System.IO;
namespace wifi
{
class Program
{
static void Main(string[] args)
{
try
{
Process ps = new Process();
StreamReader sr;
ps.StartInfo.FileName = "cmd";
ps.StartInfo.Arguments = "/A /C netsh wlan show profile|find \":\"";
ps.StartInfo.RedirectStandardOutput = true;
ps.StartInfo.UseShellExecute = false;
ps.StartInfo.CreateNoWindow = true;
ps.Start();
ps.WaitForExit();
sr = ps.StandardOutput;
while (sr.Peek() > -1)
{
string line = sr.ReadLine().Trim();
showProfile(line.Split(':')[1].Trim());
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
static void showProfile(string profile)
{
Process ps = new Process();
StreamReader sr;
ps.StartInfo.FileName = "cmd";
ps.StartInfo.Arguments = "/A /C netsh wlan show profile \""+ profile+ "\" key=clear|find \"コンテンツ\"";
ps.StartInfo.RedirectStandardOutput = true;
ps.StartInfo.UseShellExecute = false;
ps.StartInfo.CreateNoWindow = true;
ps.Start();
ps.WaitForExit();
sr = ps.StandardOutput;
while (sr.Peek() > -1)
{
string line = sr.ReadLine().Trim();
Console.WriteLine("ssid="+profile + "\npwd ="+line.Split(':')[1].Trim()+"\n");
}
}
}
}
コマンド実行
上記のソースコードをビルドしてコマンドを実行します。
次のように複数のWIFI情報が表示されるのはアクセスしたことがあるWIFI情報です。
※情報はXXXXにしました。各自で実行してみてください。
C:\repos\wifi\wifi\bin\Debug>wifi
ssid=XXXXXX
pwd =XXXXXX
ssid=XXXXXX
pwd =XXXXXX
ssid=XXXXXX
pwd =XXXXXX
参照したコマンド
次のコマンド2つを利用して作成しました。
表示された結果を文字列処理から取得し、表示した結果です。
①ユーザプロファイル一覧表示コマンド
~~~bash
C:\repos>netsh wlan show profile|find ":"
インターフェイス Wi-Fi のプロファイル:
すべてのユーザー プロファイル : XXXXXX
すべてのユーザー プロファイル : XXXXXX
すべてのユーザー プロファイル : XXXXXX
~~~
②ユーザプロファイルのパスワード表示コマンド
※日本語で「コンテンツ」になっていますが、OSの表示言語に合わせて修正してください。
~~~bash
C:\repos>netsh wlan show profile "XXXXXX" key=clear|find "コンテンツ"
主要なコンテンツ : XXXXXX
~~~
参照サイト
C# コマンドプロンプトで実行した結果を読み込む
https://www.itlab51.com/?p=4815
終わりに
次からはWIFIのパスワードを調べるにはこのコマンド利用してみてください。
複雑なコマンドを一つのコマンドでまとめてみましたが、いかがでしょうか。
↧