2012-03-13 5 views
0

FacebookのPHP-SDK 3.1.1を書き直しました&私はfb_ca_chain_bundle.crtに気付きました。後者は、CURLリクエストでSSL証明書を検証するために使用されます。なぜFacebook SSLの検証時に無駄なサーバーが再開しますか?

curl_setopt($ch, CURLOPT_CAINFO, dirname(__FILE__) . '/fb_ca_chain_bundle.crt'); 

なぜ単に0CURLOPT_SSL_VERIFYHOSTを設定されていません。すべてのリクエストが以下のホストのいずれかに行われるので、私たちはそれらに頼ることができますか?

'api'  => 'https://api.facebook.com/', 
'api_video' => 'https://api-video.facebook.com/', 
'api_read' => 'https://api-read.facebook.com/', 
'graph'  => 'https://graph.facebook.com/', 
'www'  => 'https://www.facebook.com/' 

答えて

1

(私がコメントするのに十分な担当者を持っているので、再応答しません)

タス通信の答えが言うように、SSLは、パッシブとアクティブの両方の盗聴を防止することを目的とします。受動的な盗聴を阻止するのはかなり単純です。認証されていないDiffie-Hellmanの鍵となる契約がこのトリックを行います。能動的な攻撃は、クライアントへのサーバのふりをすることができ、その逆もあり、すべてのトラフィックを代理することができるため、対処するのが少し難しくなります。証明書は、アクティブな攻撃者が(理論上)偽装できない方法で、一方または両方の当事者の身元を確立する手段を提供することによってこれに対処します。

MitMの攻撃は、ではありません。は、WiFiネットワークに限定されています。あなたのサーバが他のサーバとのサブネット上にある場合は、同じサブネット内のマシンにアクセスできる人がARP spoofing attackを実行して、サーバとルータ間のすべてのトラフィックを傍受する可能性があります。 ISPのネットワーク機器にアクセスできる人は誰でもMitMを行うことができます。あなたのISPはハッキングされることはないと信じていますか?最後に、ASN hijack attacksがあります。誰かがFacebookの内外にあるすべてのトラフィックを傍受して、彼らがそれに満足していることを行うことができます。

現実的に、証明書の検証を無効にすると、何か悪いことは起こりそうにありません。ヘルメットなしで自転車に乗ったり、シートベルトがなくても何か悪いことは起こりそうもない。要求に応じて1ミリ秒または2時間節約できるのでしょうか?

+0

それは素晴らしい答えです。ありがとうございました。 – Gajus

3

誰かがFacebookになりすますことはありますか?

4

暗号化とコンピュータセキュリティのman-in-the-middle攻撃(MITM、バケット旅団攻撃、または場合によってはJanus攻撃とも呼ばれることがあります)は、アクティブな盗聴の一種です。攻撃者は、犠牲者はそれらの間のメッセージを中継し、実際に会話全体が攻撃者によって制御されているときに、彼らが私的な接続を介して互いに直接話していると信じさせます。攻撃者は、2人の犠牲者の間を行き来するすべてのメッセージを傍受し、新しいものを挿入できなければなりません(例えば、暗号化されていないWi-Fi無線アクセスポイントの受信範囲内の攻撃者は、 -途中で)。 Wikipedia

+0

Uh。私のコメントはどこで消えたのですか?とにかく、私の指摘は、MITMはWI-FIネットワークで起こる可能性が高いということです。しかしここでは、ISPがFacebookのサーバーに直接連絡を取っていることについて話しています。私が見る限り、MITMが発生する場所はありません。 – Gajus

関連する問題