見出し画像

Windows ローカルアカウントのパスワードを解析してみる

本記事は、Windows デスクトップパソコンのローカルアカウントに設定されたパスワード解析方法を紹介するものです。古いパソコンのパスワード忘れ、中古品購入、故人の遺品相続等のトラブル時に有効な解決方法としてご紹介しています。

⚠️ 本記事に記載の手順は悪用厳禁、全て自己責任で取り扱ってください。




はじめに


画像

こんにちは、かぬです。

例のごとく、お出かけとかガジェット系の日常ブログばっかり書いちゃってますが、たまには IT 屋さんであることを思い出して技術的な記事を書いてみます


Synology NAS のセットアップ手順を書いた以来の IT 関連記事。実に 4 か月ぶり。



日々パソコンに触れていると、「これって誰でもできるだろうし同業の方に見られると恥ずかしいなぁ。そしてツッコまれそうで怖いなぁ」とか無駄なことを考えてしまいます。

IT 系の人って、なんか チョト 厳しそうだもんね。
  (´・ω・) (・ω・`)ネー


ただ、ウェブ上にもこうしたパスワード解析に関する情報が少なく、今回私もちょっと手間取りました。同じような境遇の方のお役に立てればと思い、勇気を出して投稿してみます。

だってパスワード解析・・・専門の業者さんに頼むと高いんだもん。




そして大変申し訳ないのですが、本記事は落ち着いたら初めての有料記事として投稿し直す予定です。少しの間は全編無料で公開しておきます。
(有料記事にする際にも、全体感の分かる抜粋版は無料の読み物として残しておく予定です。)

馴染みのない方にはちょっとややこしい内容になってますが、「へ~、世の中こんなことできるのね~」くらいで楽しんでいただければと思って書いています。

軽~い気持ちで。肩の力を抜いて読んでいただけますと幸いです。


⚠️ あと、冒頭の繰り返しですが本記事に記載の手順は悪用厳禁、全て自己責任で取り扱ってください。


画像

余談ですが・・・パスワード解析方法について調べてる時に思ったのが、「なんかロシア語のフォーラム多すぎね?」っていう。

IT 関連で分からないことがあった場合、普通は英語のフォーラムばっかり出てくるのですが、やたらロシア語のフォーラムが出てきたのは・・・まぁそういうことなんでしょうか・・・。

そういう需要がある・・・のかなぁ・・・(遠い目)




本記事の前提


画像


パスワード解析が必要となるケース


本手順は以下のようなトラブル時において、有効な解決手段となることを想定しています。

・古いパソコン等のパスワード忘れ

・パスワード誤りによるロック

・故人の遺品相続時のパスワード不明

・中古品購入時等のパスワード齟齬


解析対象


  • Windows OS がインストールされたデスクトップパソコン、
    かつ、そのローカルアカウントに設定されたパスワード

  • Windows 10 のパスワード解析ができることは著者環境で検証済。

  • 未検証ですが、恐らく以下 OS バージョンのパスワードでも解析可能と思います。

    • Windows 11

    • Windows 10

    • Windows 8 / 8.1

    • Windows 7

    • Windows Vista

    • Windows XP



解析にあたって準備する必要があるもの


  • パスワード解析のための 2 台目のパソコン

  • SATA ⇔ USB 変換ケーブル等、解析対象となるパソコンのストレージからデータを取得できるもの
    (500円~3,000円程度で売ってます。後述。)



解析用のパソコンにインストールする必要があるもの


  • Kali Linux

    • John the Ripper

    • samdump2

※これらは全て無料で利用できます。



解析対象外(解析不可)となるもの


  • Windows 以外の OS のパソコン (Mac, Chrome 等)

  • BitLocker で暗号化されているパソコン

  • Windows のノートパソコン

    • ノートパソコンの解析も同じような手順で対応できなくはないのですが、ストレージからのデータ取得がちょっと面倒なので対象外としています。

  • Microsoft アカウントのパスワード

    • Microsoft アカウントでログインしている場合は解析不可のケースがあるため対象外としています。(ケースによっては同手順で解析できるようですが。)



⚠️ 注意事項 ⚠️


  • 所有者の同意のないパスワード解析は法律に抵触する可能性があります。本手順の実施にあたっては、必ず所有者の同意を得るか、または自己所有のパソコンに対してのみ実施してください

    • パスワード解析後に他者のパソコンに残っている認証情報でウェブサービス等にログインした場合、不正アクセス禁止法に抵触する可能性がありますので、ご注意ください。


  • ストレージ取り外し作業や各種ソフトウェアのインストール作業含め、本記事の手順は全て自己責任で実施してください
    機器故障・購入ケーブルの規格誤り・解析不可等、何らかのトラブルが発生した場合でも責任は負えません。


  • 本手順はパスワードの解析によって、元のパスワードを探索するものです。

    • パスワードリセットだけの場合は「PassFolk SaverWin(Free)」等のツールの方が簡単かつ早い可能性がありますので、そちらを調べてみてください。
      (※「PassFolk SaverWin(Free)」ですが、 2025 年 11 月時点では Windows 11 未対応のようです。)


  • 本記事のコメント欄等で手順に関するご質問をいただいても、サポートはできません。ご了承ください。




(作業に必要な備品)
SATA ⇔ USB 変換ケーブル


こういうやつです。
ストレージ接続の規格がありますので、適宜ご自身が利用しているストレージに合ったものをご購入ください。

HDD は SATA 接続が多いと思います。変換ケーブルは怪しい製品も多いですが、この辺👇は日本のメーカー。SSD でも SATA 接続の場合はこちらのケーブルで問題ありません。


SSD は製品によってまちまちですが、M.2 (PCIe)対応の製品の場合は多分この辺。
※M.2 の中でも端子形状がいくつかありますので、ご自身の SSD 接続端子をご確認ください。


まぁ使い捨てみたいな用途なので、個人的には激安中華製品でもいい気はします。


画像



Windows デスクトップパソコン 
ローカルアカウントのパスワード解析方法


さて、今回ターゲットにするのはこちら。
DELL 製の古いデスクトップパソコンです。

画像
多分 13 年物くらいのデスクトップパソコン。
もはや骨董品。デカイ文鎮。

このパソコン、親戚が使っていたものなのですが、なんやかんやあって親族内でパソコンの大先生として崇められている パソコン庶務担当としてこき使われている私のところに譲られてきたものです。

なぜか?
「新しいパソコン使ってるし、古すぎてパスワード忘れたからあげる。使うっしょ?」って。


・・・いやいらねーよ!?
オレのこと廃品回収の業者かなんかだと思ってない!?!?


って言いたいところですが、微妙に取り出したいデータとかが入ってるらしく、今回パスワード解析をお任せいただく運びとなりました。




全体の流れ


画像

先に全体感をお出しすると、以下の流れになります。

  1. 「①解析対象のパソコン」からストレージを取り外し、「②解析用パソコン」へ接続する。

  2. 接続したストレージから、解析に必要なファイルを取得する。

  3. 「②解析用パソコン」に以下をインストールする

    1. Kali Linux

    2. John the Ripper

    3. samdump2

  4. samdump2 で [手順 2] で取得したファイルを処理し、「パスワードハッシュ」を取得する。

  5. John the Ripper に [手順 6] で取得した「パスワードハッシュ」を解析させ、パスワードを取得する


流れ自体はけっこうシンプルですね。

ちなみに、今回「②解析用パソコン」として使用したのは Windows 11 ですが、Windows 10 でも大丈夫です。(Kali Linux がインストールできるならなんでもいい。)



ストレージを取り外す


はい、では早速作業に取り掛かりましょう。

まずは解析対象となるデスクトップパソコンから、ストレージ(HDD または SSD)を取り外します。

※目的は👆でご紹介した「SATA ⇔ USB 変換ケーブル」を接続することです。ストレージの取り外しが難しい場合は、接続済のケーブルを引っこ抜くだけで OK です。


いざオープン!!

画像


ほこりまみれ。。。
目的のものは右下にある、コレですね。

画像
目的の HDD


今回は特にネジ等で固定されていなかったので、すんなり外れました。引き抜くだけ。

画像
HDD を取り外したところ

パソコンによっては、裏側からネジ固定されていて非常に取り外しにくくなってるとかもあります。取り外しが難しい場合は無理しないでください。

「SATA ⇔ USB 変換ケーブル」が接続できれば問題ありません。




SATA ⇔ USB 変換ケーブルを接続する


私が使用したのはこちら。もう 10 年以上前に買ったものなので、だいぶ古いです。どこのメーカーかすら分からん。


画像
SATA ⇔ USB 変換ケーブル


これを、ハードディスク側の端子(赤い丸で囲ったペア)に接続します。

画像


ガッチャン。
接続するとこんな感じ。

画像
ケーブルを接続


で、SATA ⇔ USB 変換ケーブルの USB 端子を、「パスワード解析のための 2 台目のパソコン(以下、解析用パソコン)」に接続します。
(SATA ⇔ USB 変換ケーブルによっては、接続後にストレージ側の電源供給を ON にする必要がありますのでご注意ください。製品によってはなんかスイッチついてるはず。)


接続すると、解析用パソコンのドライブとして、接続した HDD が認識されました。(3 つ並んでますが、右側の「OS (E:)」ドライブがそれですね。)

画像
認識された E ドライブ


※ここからの作業は全て「解析用パソコン」で行います。



解析用ファイルを取得する


次に、接続したストレージからパスワード解析のためのファイルを取得します。

取得する必要があるのは​「SAM」と「SYSTEM」という 2 つのファイルです。

「C:\Windows\System32\config」フォルダに保存されている
と思いますので、これを探してください。

画像
「SAM」と「SYSTEM」を取得


「SAM」、「SYSTEM」ファイルが見つかったら、どこでもいいので一旦適当なフォルダへコピーしてください。

この後の手順で、Kali Linux をインストールしますが、それが終わったらKali Linux 内のフォルダへと再移動させます。(ここでは一時的な仮置きなので、デスクトップとかに雑にコピーで問題ありません。)


  • SAM ファイル:

    • Windows ローカルアカウントのパスワードハッシュが保存されたファイル。これ自体は SysKey という暗号化キーで保護されている。

  • SYSTEM ファイル:

    • SysKey が保存されたファイル。



Kali Linux をインストールする


続いて、Kali Linux をインストールします。

(ご参考)Kali Linuxとは:
サイバーセキュリティに特化した Linux ディストリビューションです。
主にペネトレーションテスト(侵入テスト)やセキュリティ監査を目的として開発されています。


Kali Linux のダウンロードは Microsoft Store と公式サイトどちらからでも可能ですが、Microsoft Store から入手するのが簡単だったのでこちらを推奨いたします。

画像
Microsoft Store を開きます

Kali Linux を検索します。

画像
Kali Linux を検索


Kali Linux が見つかったら、入手ボタンを押下します。

画像
入手ボタンを押下


ダウンロードが完了したら、開いてみましょう。

画像
「開く」ボタンを押下



Kali Linux を公式サイトからダウンロードする場合はこちらから👇


上記ページのトップにある、「DOWNLOAD」を押下します。

画像

手順は省略しますが、適宜ご自身の環境に合わせてインストーラをダウンロードし、インストールしてください。
(上にも書きましたが、多分 Microsoft Store 経由のダウンロードの方が楽です。)



Kali Linux 起動準備 
(Linux 用 Windows サブシステムのインストール)


Kali Linux を起動すると、恐らく以下の参考画像のように 2 つのウィンドウが起動し、それぞれ別のメッセージが表示されるかと思います。

まず 1 つ目のウィンドウ。

画像

こちらは「Windows に Linux 用サブシステムインストールするよ」というもの。Kali Linux を使いたいので、お願いします!という気持ちで指示に従って続けます。

画面指示の通り、任意のキーを押して「Linux 用 Windows サブシステム」をインストールしてください。

画像
インストール完了を待ちます。


インストール完了。

画像
1分もかからなかったかも。

再起動が促されますが、もう 1 つのウィンドウに対処してから再起動しますので、ここではまだ再起動せずに次の手順へ移ります。
画面指示の通り、任意のキーを押して終了して構いません。




次に、2 つ目のウィンドウ。
(場合によっては、これが表示されない方もいるかもしれません。その場合、本手順と 1 つ下の「Linux 用 Windows サブシステムの有効化」は不要なのでスキップしてください。)

画像
エラーコード:0x8007019e
画像
エラーコード:0x80370114

こちらはエラーメッセージで、恐らく上記 2 つのエラーコードのどちらかが表示されていると思います。

ざっくりいうと「Windows で Linux 用サブシステムを有効化するのに必要な機能が無効になっているよ」的なエラーです。

エラーコード自体の対処はこれからしますので、このウィンドウ自体は何らかのキーを押下して閉じてください。



Kali Linux 起動準備 
(Linux 用 Windows サブシステムの有効化)


上記エラーで怒られた通り、「Windows で Linux サブシステムを有効化するのに必要な機能」を有効化していきます。

Windows + Rキーを押して「optionalfeatures」と入力し、Enterを押します。​
(または、コントロールパネル等から「Windowsの機能の有効化または無効化」を起動してください。)

画像



「Windowsの機能の有効化または無効化」が表示されたら、以下 2 つの項目のチェックを ON に設定してください。

  • Linux 用 Windows サブシステム

  • Virtual Machine Platform

画像


OK を押下すると、有効化した機能のインストールが開始されます。

画像

インストールが完了したら、指示に従ってパソコンを再起動してください。



Kali Linux の起動


再起動が完了したら、再度 Kali Linux を起動してください。

(再起動完了後にこんな画面が出るかもしれませんが、閉じて大丈夫です。)

画像
Linux 用 Windows サブシステムがインストールされた画面


Kali Linux を起動すると、なんらかのインストールが始まりますので、完了するまで待ちましょう。

画像
なんかインストール中



Kali Linux がうまく起動しない場合


もし、Kali Linux がうまく起動しない場合は以下 2 つの対応を試してみてください。

① BIOSで仮想化を有効にする

パソコンを再起動し、BIOS を起動してください。
(BIOS 起動方法はメーカーによって異なります。パソコン起動時にF2、F12、Del、Esc 等のキーを押下して起動するものが多いです。

恐らく Advanced > Configuration 等にある Intel Virtualization Technology (VT-x) または AMD-V (または SVM ) という項目を探して有効にしてください。

有効化した後は、変更を保存して終了し、通常通りパソコンを起動させます。​


②「Windowsの機能の有効化または無効化」で、追加で以下 2 つの項目のチェックを ON に設定する。

  • Hyper-V

    • Windows ProまたはEnterpriseの場合のみ。Homeエディションには表示されない場合があります。

  • Windows ハイパーバイザープラットフォーム




Kali Linux の初期セットアップ


Kali Linux をインストールして起動できたら、アカウント作成が求められます。

画像

username や password を適当に設定してください。

所詮使い捨てなので、私は username を「John」にしてみました。
これから John the Ripper 使うからっていう、ただそれだけの理由。



アカウント設定後、Kali Linux が起動します。

画像


ここまで来たら、Windows エクスプローラーを確認してみてください。
Windows エクスプローラー上でも、Linux と、その中に kali-linux のフォルダが出来ていることが確認できます。

画像




John the Ripper のインストール


では、Kali Linux に John the Ripper をインストールします。

John the Ripper はパスワード解析ツールで、ハッシュ化されたパスワードから元のパスワードを推測する際に使用するものです。今回の本丸です。


まずは、John the ripper がインストールされているか確認していきましょう。Kali Linux 上で次のコマンドを入力してください。

john

画像

Could not find… ということで、John the Ripper 未インストールですね。
では、インストールしていきます。



パッケージリストを最新化

sudo apt update

画像

John the Ripperをインストール。

sudo apt install john

画像

続行するか確認されますので、「Y」 を入力します。

少し待って、インストールが完了しました。

画像
インストール完了


では改めて、John the ripper がインストールされているか確認します。
先ほどと同じコマンドを入力してください。

john

画像

John the Ripper のバージョン情報等が表示されました。無事にインストールされていそうです。




samdump2 のインストール


次に、samdump2 がインストールされているか確認していきましょう。

samdump2 は John the Ripper に処理させるためのハッシュファイルを作成するものです。(前までの手順で取得した SAM ファイルを SYSTEM ファイルの syskey で復号化するもの。パスワード解析の前処理用。)


Kali Linux 上で次のコマンドを入力してください。

samdump2

画像

not found…ということで、インストールされていませんね。
インストールしていきます。


samdump2 をインストール。

sudo apt install samdump2

画像

こちらも少し待って、インストールが完了しました。



では改めて、samdump2 がインストールされているか確認します。
先ほどと同じコマンドを入力してください。

samdump2

画像

samdump2 のバージョン情報等が表示されました。こちらも無事にインストールされていそうです。



「SAM」「SYSTEM」ファイルを Kali Linux のフォルダに格納する


お待たせしました。
ようやく、先ほど取得した「SAM」「SYSTEM」ファイルが必要になります。

これからこの 2 つのファイルを samdum2 で処理し、John the Ripper に解析させるためのパスワードハッシュを取得していきます。


まず、Kali Linux の適当なフォルダに、先ほど取得した「SAM」、「SYSTEM」の両ファイルを格納してください。

kali-linux フォルダ配下であればどこでもいいのですが、ご参考までに、
私は kali-linux > home > John 配下のフォルダに Analyze というフォルダを作成して、そこに「SAM」、「SYSTEM」の両ファイルを格納してみました。

画像
Analyze フォルダを作成し


画像
そこに「SAM」、「SYSTEM」の両ファイルを格納



samdum2 を使って「SAM」「SYSTEM」ファイルから
解析用ハッシュを取得する


では、samdum2 でパスワードハッシュを作成していきます。

まず、Kali Linux で先ほど「SAM」、「SYSTEM」の両ファイルを格納したフォルダへ遷移します。ついでに、先ほど格納した SAM, SYSTEMの両ファイルが存在するか確認しちゃいましょう。


Kali Linux 上で次のコマンドを入力してください。
※1行目の cd コマンドで指定するパスは、ご自身が「SAM」、「SYSTEM」ファイルを格納したパスを指定してください。

cd /home/John/Analyze   ←※ここのパスは適宜修正すること
pwd
ll

画像




「SAM」、「SYSTEM」の両ファイルが確認できたら、以下コマンドを実行してパスワードハッシュ (hash.txt)を取得します。

samdump2 SYSTEM SAM > hash.txt


画像

コマンドが返ってきたら、 hash.txt ができているか確認してみましょう。

ll

画像

ついでに、Windows エクスプローラー上でも hash.txt が存在するかを確認しておきます。はい、ありますね。

画像


そして作成された hash.txt の中身を開くと、解析したい「ローカルアカウント名」が左端に表示された行が存在しています。

画像

このアカウント名のパスワードを解析していきます。




John the Ripper によるパスワード解析


抽出したハッシュファイル(hash.txt)に対して John the Ripperを実行します。

Kali Linux 上で次のコマンドを入力してください。
※解析用パソコンの性能や解析対象のパスワード長に左右されますが、このコマンドの完了には数時間、場合によっては数日かかりますのでご注意ください。

john hash.txt --format=NT

(追記)
特定のユーザーのみを解析対象とする場合は、--users オプションにカンマ区切りでユーザー名を指定してあげてください。

(例:user1 と user2 を解析対象としたい場合)
john hash.txt --format=NT --users=user1,user2


いざ、コマンドを入力して、Enter キー押下!(ッターーン!!!!

画像

動いてんのかよく分からないけど・・・なんか始まったっぽい。
あとは解析完了までひたすら待ちましょう。


ちなみに、この状態で再度 Enter キーを押下すると進捗が出てくるので、なんか動作しているんだな~ということが分かります。
・・・いやめっちゃ分かりづらいなこれ(笑)

画像



John the Ripper の進捗ステータスの読み方


待っている間めっちゃ暇なので、John the Ripper の進捗ステータスの読み方を書いておきます。ふ~ん、と思っていただければ。

Proceeding with incremental:ASCII
ブルートフォースモード(総当たり攻撃モード)で実行中。
このモードは終了予定時間がなく、十分だと判断するまで手動で停止する必要があります。

進捗ステータス行の読み方
(例:[4g 0:00:00:37 3/3 0.1080g/s 58638Kp/s 58638Kc/s 117310KC/s aifet43..aifeds1] の部分)

▼ 4g:
「4 guessed」の略。すでに4個のパスワードが解析されたことを示します。上記画像では、赤色や黄色の「*disabled* Administrator」などの4つのアカウントパスワードが解析済みです。​

▼ 0:00:00:37:
経過時間を「日:時:分:秒」の形式で表示します。この例では37秒経過しています。​

▼ 3/3:
解析モードの現在の順番(パス番号)を示します。デフォルトでは​解析可能性の高いものから順に 3 つのモードを実行しており、パス1は「single crack」モード、パス2は「wordlist」モード、パス3は「incremental」モード(ブルートフォース)です。

▼ 0.1080g/s:
1秒あたりの成功した推測数(guesses per second)です。パスワードがクラックされる速度を示します。​

▼ 58638Kp/s:
1秒あたりにテストされる候補パスワードの数(passwords per second)です。「K」は1000を意味するため、約5864万回/秒です。​

▼ 58638Kc/s:
1秒あたりの暗号計算数(crypts per second)です。パスワードハッシュの計算回数を示します。​

▼ 117310KC/s:
1秒あたりの候補パスワードとターゲットハッシュの組み合わせ数(combinations per second)です。​

▼ aifet43..aifeds1:
並列してテスト中のパスワード範囲。



パスワード解析結果


ふわ~😪っと放置して別の作業をしつつ、気づけば画面上に黄色い文字が。


解析ターゲットとしていたローカルアカウント名と、なんかそれっぽい文字列が表示されています。

どうやら解析が完了したようです。

画像
下から 2 行目、謎の黄色い文字列が表示されています
「解析したパスワード (ローカルアカウント名) 」の並びで表示されています。


参考画像はさすがにモザイクをかけてます。分かりにくくなっており申し訳ありませんが、左側にあるのが「解析できたパスワード」、その右側にある括弧内が「解析対象のローカルアカウント名」です。


これでパスワードが解析できました。所要時間 58 分くらい。

解析完了後もちょっと放置しちゃってたのですが、ステータスを見る限り、厳密な解析時間は 45 分~58 分の間のどこかだと思います。思っていたよりだいぶ早かったですね。


目的のアカウントのパスワードが取得できたので、John the Ripper は適宜停止しましょう。

「Ctrl + C」 で強制終了します。
お疲れ様、 John。

画像
「Ctrl + C」 で強制終了


解析したパスワードでログインしてみる


解析したパスワードでログインを試みます。

画像
ドキドキ


いけた~!

画像
無事、ログインできました。


以上で終了です。

お疲れ様でした。





▼▼▼▼▼ 他の投稿記事 ▼▼▼▼▼▼

【========== おいしいもの・ドライブ ==========】


【========== キャリア ==========】

【========== IT ==========】


【========== 子育て ==========】


【========== ガジェット ==========】


















いいなと思ったら応援しよう!

ピックアップされています

IT, デジタル, テクノロジ

  • 5本

コメント

1
コメントするには、 ログイン または 会員登録 をお願いします。
Y.KOJIMAのプロフィールへのリンク
Y.KOJIMA

参考になりました!

1
かぬ いいね
『NTT5 → GAFA → 独立開業』のB2B寄りIT屋さん30代|≪IT, 子育て, ガジェット,キャリア, 投資, カメラ≫等に関することを毎週 火・金 19時頃に投稿|メメント・モリの精神で生きてます|Amazonのアソシエイトとして、かぬは適格販売により収入を得ています
Windows ローカルアカウントのパスワードを解析してみる|かぬ
word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word

mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1