web-dev-qa-db-ja.com

Netflixをブロックするsslbumpを持つsquid

Ubuntu 15.10サーバーにSquid 3.15をインストールしました。 Squidはhttpsトラフィック用にsslbumpでセットアップされました。この機能は問題なく機能します。つまり、httpとhttpsの両方からのすべてのトラフィックがSquidを通過し、証明書がインストールされているすべてのデバイスですべてのインターネットにアクセスできます。

例外は次のとおりです。「Netflix APP」はIOSデバイス(iPhone、iPad)では動作しなくなりました。私が何をしようと。他のすべてのインターネットサービス(Safariおよびその他のアプリ)は、これらのデバイスで正常に動作します。

NetflixをLinuxボックスやOS X Safariのブラウザーから実行することができました。動作していない唯一のものは、IOS上のNetflix APPです。

もちろん、sslbumpを無効にして、httpのみがSquid Netflixの動作を許可した場合。 iPhoneで透過モードとプロキシモードの両方を試しましたが、まだ動作しません。

IOSデバイス上のNetflix APPを、sslbumpを有効にしたsquidで動作させることができましたか?

1
user3381475

問題は、netflixアプリが証明書の固定を使用していることです。

「証明書のピン留めは、そのすべてを無視し、この証明書のみを信頼するか、おそらくこの証明書によって署名された証明書のみを信頼するということです。」
https://security.stackexchange.com/questions/29988/what-is-certificate-pinning

Squid 3.17にアップグレードすることをお勧めします。これは、ipadで他のポートに接続するようにnetflixアプリを構成する方法がないため、透過モードを使用する可能性が高いためです。 3.17では、透過モードでのピークとスプライスが可能になりました

「私たちの目標は、ユーザーがSSLインターセプト(Squidの用語ではSpliceと呼ばれます)せずに、重要なWebページ(銀行や支払いシステムなど)を閲覧できるようにすることですが、HTTPSトラフィックの残りはインターセプト(「バンプ」)して確認する必要がありますコンテンツ。" 「現在、HTTPS標準のTLS拡張(SNIの紹介)とSquidのピーク&スプライス機能のおかげで、クライアントの要求を覗くことでserver_nameを決定することができます(クライアントがTLS/SNI互換である限り)。

http://marek.helion.pl/install/squid.html <-すごい、ありがとう、マレク!

これは私がやったことです

acl step1 at_step SslBump1
acl step2 at_step SslBump2
acl nobumpSites ssl::server_name .netflix.com

# Peek at client's TLS-request in order to find the SNI
ssl_bump peek step1 all         
# don't bump the nobumpSites
ssl_bump splice step2 nobumpSites    

# bumping all other SSL connections
ssl_bump bump                  

SNIの内容(.netflix.com)がわからない場合は、wiresharkを使用してクライアントのhelloを確認してください。 Netflixクライアントのトラフィックはhttpsであるため、SNIが含まれる暗号化されていないクライアントhelloを覗くには、squidがドメインを知る唯一の方法です。

ビデオの再生を開始するには、ipad netflixアプリが約60秒かかることに注意してください。理由はわかっているので、後で更新します。

重要な注意(上記では実装されていません)「Squid mitm SSL接続はできますが、自己署名または無効なアップストリーム接続に対して無効な証明書を意図的に生成できるため、ブラウザはフラグを立てますか?」 「現在のSquidは、サーバーの詳細がわかっているときに、ステップ3でSSL-Bump "bump"アクションを実行します。 " http://lists.squid-cache.org/pipermail/squid-users/2016-March/009707.html <-彼が共有するすべてのイカの知識に感謝します!

その他のソース http://www.squid-cache.org/Doc/config/acl/

http://lists.squid-cache.org/pipermail/squid-users/2016-April/010009.html

1
user584583