WindowsのLM、NTLMハッシュについて | reverse-eg-mal-memoのブログ

reverse-eg-mal-memoのブログ

サイバーセキュリティに関して、あれこれとメモするという、チラシの裏的存在。
medium(英語):https://sachiel-archangel.medium.com/

Windowsでは、パスワードはLMハッシュ、またはNTLMハッシュで保存されています。

(それ以外の格納方法があるかどうかはまだ調べ中。)

今回は、Windowsのハッシュに関する検証をするにあたり、これらの知識の再確認です。

ちなみに、この辺り特に詳しいわけではないので、基本的にいろんな記事を寄せ集めたリンクです。

参考になるサイトのメモ・・・が今回の記事のメインです。

 

Windowsのパスワードハッシュについてざっくりまとめると以下のような理解・・・なのですが、間違ってるかもしれないので悪しからず。

(気がつけば直します)

 

  • LMハッシュは初期のもので、パスワードの大文字小文字の区別がなく、かつ最長でも14文字(結構前から基本的には使ってない)
  • NTLMハッシュは大文字、小文字を区別する。
  • NTLMハッシュの暗号化にはRC4が用いられていた。
  • 2016年7月(Windows 10 v1607)以降、ハッシュの暗号化にはAESが用いられるようになった
  • ハッシュにはソルトが使われていない
  • 一部の認証では、平文のパスワードではなく、ハッシュ値のままで認証を通すpass-the-hashができる

 

参考にしたリンクを以下に記載します。

(今後もいい記事があったら増やしたい。)

 

Retrieving NTLM Hashes and what changed in Windows 10

https://www.insecurity.be/blog/2018/01/21/retrieving-ntlm-hashes-and-what-changed-technical-writeup/

 

パスワードってどこにあるの?その1
https://www.mbsd.jp/blog/20190514.html
 

それぞれ、パスワードのハッシュを求める方法が書かれています。

複雑な手順ではありますが、手順が分かってしまえば再現可能というわけです。

そのため、前回記事の「SANS SIFTのVolatilityの更新」で触れたhashdumpの機能でNTLMハッシュを取得することができる、ということです。

 

 

また、そもそものLM、NTLMの説明は、Wikiに十分書かれています。

 

LMハッシュ

https://ja.wikipedia.org/wiki/LMハッシュ

 

NT LAN Manager

https://ja.wikipedia.org/wiki/NT_LAN_Manager

 

 

そして、よく問題になる、Windowsのpass-the-hashの問題。

 

Pass-the-Hashの仕組み

https://binary-pulsar.hatenablog.jp/entry/2018/12/06/090000