Unixはいつpasswdにプレーンテキストパスワードの保存を中止しましたか?また、シャドウファイルはいつ導入されましたか?
答え1
Unixのパスワード保存の初期の歴史については、Robert MorrisとKen Thompsonの記事を読んでください。パスワードセキュリティ:ケース履歴。彼らは今日でも、パスワードを保存するためにまだ重要であると考えられているほとんどの機能を、初期のUnixシステムが取得した理由と方法を説明しています(しかし、より良いパフォーマンスを発揮しました)。
- 最初のUnixシステムはパスワードをプレーンテキストで保存しました。第3版のUnixリリース
crypt
パスワードをハッシュする機能です。現代の暗号用語がまだ確立されていないので、「ハッシング」ではなく「暗号化」と説明し、破格的ではあるが暗号化アルゴリズムを使用します。キーを使用してパスワードを暗号化する代わりに、パスワードをキーとして使用します(キーがあればパスワードを簡単にキャンセルできます(システムに保存する必要があります))。 - Unixが初期パスワードから当時の現代パスワードに切り替えたときDES、DESを数回繰り返すと、速度が遅くなります。正確にいつそのようなことが起こったのかわかりません。 V6? V7?
- 単にパスワードをハッシュすることは、マルチターゲット攻撃に対して脆弱です。最も一般的なパスワードをすべて一度にハッシュし、パスワードテーブルで一致するものを見つけます。ハッシュメカニズムにソルト(各アカウントに固有のソルトがある)を含めると、この事前計算は中止されます。 Unixは塩を得ます1979年7版。
- Unixはまた、1970年代に最小長のような暗号複雑性規則を獲得しました。
最初にパスワードハッシュは公に読めるファイルにあります/etc/passwd
。ハッシュを別々のファイルに保存/etc/shadow
システム(およびシステム管理者)のみがアクセスできるこの機能は、1980年代半ばにSunOS 4にさかのぼるSunの多くの革新の1つです。徐々に別のUnixの亜種に広がっています(部分的にはサードパーティを介して)。シャドウキットその子孫は今日でもまだLinuxで使用されており、1990年代半ばまではどこでも使用できませんでした。
ハッシュアルゴリズムは長年にわたって改善されています。最大のジャンプはPoul-Henning Kamp MD5ベースのアルゴリズム1994年には、DESベースのアルゴリズムをよりよく設計されたアルゴリズムに置き換えました。パスワード文字8文字とソルト文字2文字の制限を排除し、速度を上げます。バラよりIEEEオープンソースソフトウェアで開発、2004年1月~2月、17ページ。 7~8。 SHA-2ベースのアルゴリズムは今日の事実上の標準であり、同じ原理に基づいていますが、やや優れた内部設計と最も重要なのは設定可能な速度低下要因を備えています。
答え2
まだ主なソースはありませんが、このTrustedSecの投稿(強調):
初期のシステムではパスワードをプレーンテキストとして保存しましたが、これは最終的により安全な形式のパスワード保存に置き換えられました。Robert Morrisは、m-209暗号マシンに基づいて暗号化を開発し、Unixバージョン3に登場しました。、CryptはUnixの6番目のバージョン(1974)までパスワードを保存するために使用されていません。
いくつかのソースによると、UNIXバージョン31973年2月。
~からトンプソンとモリスのオリジナル論文、プレーンテキストストアが最初に使用されたことを確認できます。
UNIXシステムは最初にすべてのユーザーの実際のパスワードを含むパスワードファイルとして実装されているため、パスワードファイルを読み書きできないように厳密に保護する必要があります。
他の答えで述べたように、/etc/shadowはUNIXのいくつかの枝に現れます。
答え3
~によると歴史ウィキペディアセクションパスワードページ、
パスワードシャドウイングは、1980年代半ばのSunOS、[10] 1988年のSystem Vリリース3.2、1990年のBSD4.3 Renoの開発とともに、Unixシステムに初めて登場しました。ただし、以前のバージョンのUNIXで移植されたベンダーは、そのバージョンに常に新しいパスワードを隠す機能を含まないため、これらのシステムユーザーはパスワードファイル攻撃にさらされていました。
システム管理者は、接続されている各システムのファイルではなく、分散データベース(NISやLDAPなど)にパスワードを保存するように構成することもできます。 NIS の場合、シャドウパスワードメカニズムは通常、他の分散メカニズムの NIS サーバーで依然として使用され、さまざまなユーザー認証コンポーネントへのアクセスの問題は、プライマリデータストアのセキュリティメカニズムによって処理されます。
1987年、元のShadow Password Suiteの作成者であるJulie Haughは、コンピュータハッキングを経験し、login、passwd、およびsuコマンドを含むShadow Suiteの初期バージョンを作成しました。初期バージョンはSCO Xenixオペレーティングシステム用に作成され、他のプラットフォームにすばやく移植されました。 Shadow Suiteは、Linuxプロジェクトが最初にリリースされてから1年後の1992年にLinuxに移植され、多くの初期ディストリビューションに含まれ、現在多くのLinuxディストリビューションに含まれています。