カテゴリー
Computer PHP Security Programming Secure Coding Security

覚えるパスワードの作り方

覚えなくて構わないパスワード(ブラウザなどのパスワードマネージャーに記憶させる最強のパスワード)の作り方は、

覚えないパスワードは生成する物 〜 余計な文字数制限などは有害 〜

で紹介しました。最強のパスワードを自分で作るのが面倒な方はこのページのランダム文字列から90文字くらいをコピー&ペーストして使ってください。

今回は覚えられる最強のパスワードの作り方です。

備考:あるニュース記事で”ブラウザのパスワード機能は使わない”とする記事がありました。その理由は、離席した場合などにパスワードが表示できる物もあるから、でした。しかし、PCをログインしたままロックもせずに離席すると、ログイン済みならアクセス仕放題、サードパーティー製のパスワードマネージャーを使っていても利用するサービスにはログイン仕放題、です。デバイスの物理セキュリティは何をしていてもある程度は使い方で保証しなければセキュリティは維持できません。

カテゴリー
Computer Development PHP Security Programming Security

覚えないパスワードは生成する物 〜 余計な文字数制限などは有害 〜

Webサイトにはパスワードの登録に余計な制限をかけているサイトが少なからずあります。特に最悪なのはたった20文字程度のパスワードしか許可しないサイトです。

Webサイトのパスワードは基本的には覚える必要がありません。安全性を第一に考えると十分過ぎるくらいの長さのランダムパスワードを設定する/設定できるようにすると良いです。

参考:覚える場合のパスワードの作り方

TL;DR;

パスワード用のランダム文字列が必要でアクセスした方は以下のURLを参照してください。生成されたランダム文字列の一部、90文字くらい、をパスワードとして使うと安全です。

パスワード用のランダム文字列生成ページ (ランダム文字列を表示します)

カテゴリー
Computer Development PHP Security Programming Security

ハッシュ(HMAC)を使ってパスワード付きURL/URIを作る方法

より高度なCSRF対策 – URL/URI個別にバリデーションする方法でハッシュ(HMAC)を使えばデータベースを使わずに有効期限付きのURLを作れる、と紹介しました。今回はパスワード付きURL(URI)の作り方を紹介します。

カテゴリー
Computer Development PHP Security Security

OTP(ワンタイムパスワード、2要素認証)とタイミング攻撃

今すぐできる、Webサイトへの2要素認証導入2要素認証のTOTPとHOTP、どちらがより安全か?で紹介したGoogleAuthenticatorですが、ソースコードを確認ところタイミング攻撃に脆弱でした。Pull Requestを後で送る予定ですが、利用される場合は脆弱性を修正してから使ってください。

カテゴリー
Computer Development PHP Security Security

2要素認証のTOTPとHOTP、どちらがより安全か?

今すぐできる、Webサイトへの2要素認証導入では簡単に2要素認証が導入できること、2要素認証には

  • 時間ベースのOTP(TOTP:Time-based One Time Password RFC 6238)
  • カウンターベースのOTP(HOTP:HMAC-based One-Time Password RFC 4226

があることを紹介しました。Google認証は両方をサポートしています。※

※ 今すぐできる、Webサイトへの2要素認証導入で紹介したライブラリはTOTPのみサポートしています。

カテゴリー
Computer Development PHP Security Programming Security

今すぐできる、Webサイトへの2要素認証導入

Google、Facebook、Amazon(AWS)、Githubなど、大手Webサービス会社が2要素認証を取り入れてしばらく経っています。自分のWebサイトでも2要素認証を導入したい!と思ったことは無いですか?

簡単に可能です!

パスワード認証だけではもう安全とは言えません。ぜひ2要素認証を自分のサービス/プロダクトに導入してください。

カテゴリー
Computer Development PHP Security Programming Security

SSL脆弱性に備えたパスワード認証方法を考える

ここ数年だけでもSSLに対する攻撃方法やバグが何度も見つかっています。SSLで通信を暗号化していてもパスワード認証時のトラフィックを解読されてしまえば、パスワードが漏洩していまいます。パスワードが判ってしまえば、攻撃者は何度でも被害者のアカウントを利用できます。

脆弱性でなくても、SSLも無効化したMITM(中間者攻撃)も可能です。SSLだから安心、とは考えられません。これを何とかできないか、考えてみます。

参考: