2016-12-05 7 views
1

websocket経由でログインしています - これは安全ですか? (HTTPSで)ウェブページ上

  1. クライアントがWebSocketを(TSL上のWSSを確保)
  2. サーバーとサーバーに接続するには、準備のでき-ユーザーと-password'メッセージ
  3. ユーザー情報を入力し」送信します 私が代わりにUSIの上記を検討しています:クライアントはサーバーが検証され、限りのWebSocketが接続されているように、受信者が

EDITが誰であるか知っている

  • それを送信しますポストメソッド。

  • 答えて

    3

    また、いくつかの攻撃に対して安全であるが、いつものように、サイトに侵入する方法があると私たちは、セキュリティを評価することができ総合的

    DBのパスワード

    それは説明から明らかではないが、もっともらしいこと説明した設定では、ユーザーパスワードがプレーンテキストで保存されます。

    パスワードのハッシュ値with saltを計算してデータベースに保持することをお勧めします。攻撃者がDBダンプを取得した場合、それに基づいてパスワードを推測するのに多くの時間が必要になります。攻撃者が簡単にブルートフォースでパスワードを選択することができなくなりますので、あなたが失敗したログイン試行を制限する必要があり

    を制限

    レート。

    ロギングは

    ここで問題となる可能性がログインしているもう一つ:あなたは資格情報は、アプリケーションのログファイルに終わるいないことを確認する必要があります(私はクレジットカード番号を持つことを見てきました)。

    検証が(例えば、Javaのヒープ・ダンプを強制し、そのファイルからそれらを摘みに)それらをより脆弱になりますどの終了した後に同様の懸念が長すぎるために敏感な情報を保持さ

    SSL秘密の材料

    ssl秘密鍵へのアクセスを減らすのに十分な注意を払わなければ、誰かがman-in-the-middle攻撃をすることができます。

    アプリケーションサーバーがサポートしている暗号化の種類によっては、攻撃者がキーを盗むと、以前に記録された通信が復号化の脆弱性を持つ可能性があります。それに対する抵抗の概念はforward secrecyと呼ばれます。 Webアプリケーションhereを正しく調整したかどうかを確認できます。

    あなたの証明機関(または他の者)は、あなたのウェブサイトの証明書を他の人に発行して、攻撃者があなたに偽りの偽証をさせる可能性があります(Mozilla and WoSign, Additional Domain Errors参照)。これが他のサーバーに情報を送信するためのauthブラウザのコードを強制的にトリッキーになるように、あなたはまた、Content-Security-Policyを設定する必要があり

    CORS

    ソーシャルエンジニアリング攻撃者はWebツールのコンソールでいくつかのコードを起動するにユーザーをだますことができ

    - あなたは、例えばWebコンソールを開いてみてくださいすることができますFacebook上で、彼らがそれに対して何をしたかを見てください。

    新しいもの

    脆弱性が、毎日発見ますそれらのいくつかは、会報に掲載されている、あなたは、スタック用のものに従うべきである(例えばOpenSSL)と、必要に応じてパッチ/アップグレードしてください。

    +0

    あなたの優秀な応答をありがとう - 私はポストの方法で送信するとwebsocketを介してpassordを送信することについて興味があります。 ハッシュについて:攻撃者がdbダンプを取得した場合、手動でwebsocketを開いてハッシュを送信できない可能性がありますか? –

    +0

    ようこそ。はい、攻撃者がデータベースダンプを取得した場合、いくつかのスキームでログインできるようになります。それに対抗するように設計されたものもあります([SCRAM](https://en.wikipedia.org/wiki/Salted_Challenge_Response_Authentication_Mechanism)参照)。 Hashed dbには、他のサイトへの拡張を許可しないという利点もあります(ユーザーは、使用するすべてのものに対して単一のパスワードを持つことが多い)。 – Ivan

    +0

    WebsocketとPostsについては、TLSで両方を行うときに大きな違いはないと思います。 – Ivan

    関連する問題