web-dev-qa-db-ja.com

Facebookログインフォームは、URLにhttpsなしのSSLを使用していますか?

http://facebook.com にアクセスしても、 https://www.facebook.com にリダイレクトされません。 URLにhttpsが含まれていない場合、ログインは安全ですか?通常、他のサイトのhttpsページにリダイレクトされますか? Facebookはログインをどのように管理していますか?

16
Ryan

いいえ、http://facebook.comにユーザー名とパスワードを入力することは安全ではありません。

ログインフォームのターゲットはhttps URLを指しているため、受動的な攻撃者はパスワードを読み取ることができません。

<form method="POST" action="https://www.facebook.com/login.php?login_attempt=1"

しかし、データストリームを変更できる攻撃者は、ログインフォームを含むHTMLコードを操作できます。ターゲットURLを変更するか、ユーザー名とパスワードのコピーを自分のサーバーに送信するJavaScriptコードを追加できます。

さらに、ログイン後、FacebookはHTTP接続を介してセッションCookieを送信します。これにより、パッシブな攻撃者でさえあなたの名前で行動することができます。これは理論的な攻撃ではなく、非常に使いやすいFiresheepと呼ばれるツールがあります。

最初のリスクを回避するには、常にhttps://facebook.comを使用してログインします。 https everywhere と呼ばれるブラウザ拡張があり、これはあなたのためにこれを実行し、Firesheepスタイルの攻撃も防ぐhttpsに留まります。

25

安全なのは https:// facebook.com を介したログインのみであり、現時点では安全なものに自動リダイレクトされない http:// facebook.com ではありません。地点。

ログインコードのターゲットはソースコードで指定されたhttps URLであるため、フォームデータはパッシブ攻撃で読み取ることができず、その意味で安全です。しかし、ハッカーが悪意のあるコードを挿入して、入力されたユーザー名とパスワードを盗む可能性がある、データストリームの変更によるアクティブな攻撃は簡単に実行できます。

セッションCookie内の後続のデータは、http接続を介して追加で送信されます。これにより、パッシブな攻撃者は、フロントページのフォームからログインデータを盗まなくても、自分の名前で操作できます。開発者のEric ButlerがFirefox用に作成した概念実証拡張機能Firesheepは、これがどのようにして可能かを示しています。 Lifehacker は、この点に関するSSL暗号化の必要性について詳しく書いています。

このような攻撃を阻止するには、Facebookでアカウント設定を編集し、[アカウントのセキュリティ]を選択して、セキュアブラウジングヘッダーの下のチェックボックスをオンにしてHTTPSを有効にします。このオプションを使用すると、特定のページ(特に、まだHTTPS対応になっていない一部のFacebookアプリケーション)が正しく機能しない場合があります。ただし、失われた機能を犠牲にして、アカウントのセキュリティを確保することができます。

さらに、可能な場合はいつでも、FacebookだけでなくすべてのWebサイトでHTTPS暗号化を自動的に有効にするWebブラウザー拡張機能があります。 Electronic Frontier Foundation(EFF)とTorプロジェクトは、FirefoxとGoogle Chromeで利用可能な HTTPS Everywhere と呼ばれる拡張機能を作成しました。お使いのブラウザで他の同様の拡張機能を利用できる場合があります。

10
Shruti

https://facebook.com にアクセスすると、SSLを使用してログインします。はい、Facebookがリダイレクトするのは良いことですが、まだリダイレクトされていません。

Httpsバージョンのページに直接移動するか、 HTTPSEverywhere を使用して自分で行うことができます。これは、Facebookを含む多くの一般的なサイトのhttpsページに移動するのに役立ちます。

8
Rory Alsop