web-dev-qa-db-ja.com

セキュリティはユーザーではなくWebサイトによって処理される安全なWebサイトを作成しようとしています

私は子供と青少年の公民権に取り組み、LGBTの青少年と子供とその家族のためのウェブサイトを作成しようとしています。多くの国では、同性愛者(またはLGBTQ)であることを認めることは依然として非常に危険なので、ウェブサイトは安全である必要があります。

私はウェブサイトで無料でアクセスできるようにしたい一連の子供向けの短編映画を持っていますが、サイトにアクセスする若者、家族、教師は追跡できないようにする必要があります。

セキュリティがウェブサイト内にあるウェブサイトを作成できますか?
サイトにアクセスする人や子供は、追跡されないように独自のセキュリティ対策を設定しません。

31
FDoherty

やらないでください

安全でない体制をターゲットにしている場合、結果は深刻になる可能性があります。たとえば、イランでは、非難された同性愛者は通常、絞首刑により死刑を宣告されます。

サイトの一部またはユーザーの1人がほんのわずかな時間を費やしても、これが有罪の証拠となることはありません。あなたの意図したサイトが結局処刑につながった証拠になったと感じる罪悪感を想像できますか?

抑圧的な政権の中で破壊的にオンラインで活動することは、極端なスキルと注意を必要とします。 Torを使用するだけでは、それ自体が問題になります。アノニマスのようなハッカーグループはこれを回避できるかもしれませんが、通常のユーザーはできません。

(大体)「HTTPSを使用すれば大丈夫です」と他の回答にコメントがありました。それがいかに危険なアドバイスなのか、十分に強調することはできません。 HTTPSは、ユーザーがアクセスしているドメイン名を明らかにし、クライアントコンピューターに痕跡を残し、国(イランを含む)が 偽の証明書 を生成し、すべてのHTTPSトラフィックを傍受する可能性があります。

98
paj28

これは簡単なことではありません。欲しいものを手に入れるにはいくつかの方法があります。

まず、HTTPSを使用します。これにより、サーバーとユーザー(私はどちらもクリーンであると想定しています)以外のデータが転送されているのを見るのを防ぎます。これにより、外部のユーザーがユーザーがサイトにアクセスしたことを確認できます。転送されている正確なデータのみが表示されます。

ログイン画面の背後に何かが隠されている場合、サイトにアクセスするログインなしのユーザーは、サイトの内容を確認できません。ログインの詳細を知っているユーザーを信頼する必要があり、サイトを表示するために信頼できる人を募集する方法を考案する必要があるため、これはあまり良いことではありません。

より適切な方法は、「通常の」コンテンツを使用して他のコンテンツを非表示にし、どのタイプのコンテンツが要求されているのかを確認する方法がないことです。これを行う最良の方法は、リンクを提供するたびに、1回しか機能しない(または安全性が低く、そのユーザーに固有のCookieとの組み合わせでのみ機能する)URLを提供することです。ユーザーが見ていたもののユーザーのもっともらしい否認。データ転送を見ている人は誰でも「通常の」コンテンツにアクセスしなかったことを誰も証明できません。同じページにアクセスすると、エラーメッセージまたは「通常の」コンテンツが表示されます(設定方法によって異なります)。

上記の提案がお役に立てば幸いです。「サーバーの設定xxxの変更」のようなものがない理由は、すべてのユーザーがサイトにアクセスできるようにするためです。これには、アクセスするユーザーも迫害するユーザーが含まれる必要があります.

28
Topher Brink

上記の要件は物理的に不可能です。

このように考えてください。あなたが別の国の誰かに手紙を投稿していて、強力な危険なグループが両方であることを確認したい場合

  1. 手紙の内容を知らない

そして

  1. 受信者があなたから手紙を受け取ったことを知らない

どうしますか?

あなたの側の安全は素晴らしいかもしれませんが、手紙があなたの国を去ったらそれは問題ではありません。

手紙があなたの机から受取人の机までのどこかで傍受された場合、あなたの受取人は危険にさらされています。

したがって、セキュリティは、責任の共有です

  • あなた(ウェブサーバー)

  • 郵便システム(ISP/Webホスト)

  • 国際郵便システム(公的国際インターネット-政府スパイによるクローリング!)

  • 受信者の郵便システム(ISP)

  • 受信者(PC、Webブラウザなど)

受信者が安全な接続を確立するためのトレーニングとツールを持っている場合、2つのエンドポイントを保護するだけで安全に通信することが現実的です。

安全な通信リンクで両方のエンドポイントがアクティブに参加する必要があるというこの要件は、その上に「構築された」テクノロジを含むグローバルインターネットの固有の技術的制限です。 「デフォルト」のネットワークには「組み込みの」匿名性セキュリティがないため、物理インフラストラクチャを制御している人がスパイするのは非常に簡単です。

F2F無線メッシュネットなどのグローバルネットワークを構築するためのより優れた技術的な方法はありますが、まだ限られた小さな例しかありません。

別の配布方法を調べて、ユーザーや他の組織と話し合い、彼らが実用的であると考えるものを確認する必要があるかもしれません。

25
John McNamara

これは、@ TopherBrinkの回答への追加です。まず第一に、HTTPSとHSTSを使用し、ログイン画面の背後にあるものを用意します。第二に、私たちはいくつかの倫理を見る必要があります:


倫理的な議論

これはインターネットです。すべてのコンテンツがそこにあります。誰かがそれを望めば、彼はそれを手に入れます。ファイアウォールによってブロックされる可能性があり、誰かがホールパンチャーを見つけたり、プロキシ/ VPNを使用したり、DNSフィルター処理されたり、使用するIPのWebサイトを作成したりする可能性があります。

内容が危険である場合、いくつかの国では巨大リスクがあります:刑務所、拷問、死刑。しかし、これらのリスクに対しては、ほぼ2つの選択肢があります。

  1. しないでくださいおよび他の誰かがこれらの人々にコンテンツを提供することを許可します。そこにwill誰かがいる、これがインターネットです。

  2. 否認に最善を尽くす。否認性はセキュリティの低下として無視しますが、実際には選択肢がありません。

そして、私はティーンエイジャーがインターネットで見つけられたチュートリアルに基づいてVPNを使用することができるのを見ました。問題は、それらの設定は機能しましたが、大量の情報が漏洩していたことです。一般に、コンテンツにアクセスするためにプロキシ/ VPNが必要な場合でも、他の誰かがコンテンツを提供しない場合。

倫理的原因は、それを提供しないよりも複雑であり、誰かの死の責任を間接的にしないでください。コンテンツの提供をあきらめたとしても、あなたができることよりも安全性の低い場所からコンテンツにアクセスすることによって捕まえられた場合、あなたはまだ誰かの死に責任があります。

責任の回避は倫理的なポイントではありません。したがって、私は最も人気のないオプションを擁護し、それを行うと主張します。ただし、否認性についてはできる限りの努力をしてください。

最終倫理ノート

一部のユーザーは単に愚かであり、したがってユーザーを保護する方法がないことを常に覚えておいてください。 ある時点または別の時点で多くの利益のために1つを犠牲にする必要があるという事実に対処できない場合は、それを行わないでください。しかし、その理由でそれをしないでください。危険だからというだけではありません。


否認性の提案(つまり、それを行う1つの方法)

最大の問題は、信頼できるユーザーにログインを許可し、信頼できないユーザーにはログインを許可しない方法を見つける必要があることです。 2つのウェブサイトを持つことを回避する1つの方法として、safewebsite.comsecretwebsite.comがあるとします。

(両方のドメインがHTTPSでのみ実行され、HSTSを実装しています)

safewbsite.comには安全なコンテンツが含まれており、デフォルトではログインなしでアクセスできますが、ユーザーは登録できます。

secretwebsite.comは、だれでも常に同じ「安全な」ページを返します。残りのコンテンツを取得する唯一の方法は、承認されることです。つまり、secretwebsite.comの登録ユーザーになることです。現在、secretwebsite.comに登録する方法はありません(単一のページのみが返されます)。 secretwebsite.comが正しいトークンを提供する唯一の方法(簡単にするためにhttpsonly Cookieとしましょう)は、正しいURLにGETを発行することです。 https://secretwebsite.com/logon/6733abf78..77bab99(またはbase64エンコードなど)と言います。そのURLがセッショントークンです。

(認証にGETを使用することはbadですが、HTTPSを使用しており、URLは適切で推測が難しいため、トークンは受け入れられます)。

トークンは総当たりするのが難しいものでなければなりません。そして、正しいトークン(secretwebsite.comへの正しいリンク)を取得する唯一の方法は、safewebsite.comからです。

これで、safewebsite.comからsecretwebsite.comにアクセスできるユーザー(文字通りチェリーピック)を選択できます。

このアプローチのメリットは、秘密のWebサイトへのアクセスを担当するユーザーを選択できるトリアージエリア(安全なWebサイト)を作成することです。セッションメカニズムを正しく構築すれば、ユーザーから秘密のWebサイトにアクセスする権限を付与および取得できます。

問題は、これが少数のユーザーに対してのみ機能し、ソーシャルエンジニアリングの影響を受けやすいことです。ユーザーの真実性を評価するための作成とアルゴリズムは、些細なことではありません(可能な場合)。したがって、ユーザーの選択を自動化する方法はありません。もう1つの問題は、safewebsite.comsectretwebsite.comにアクセスする方法についての議論の場にならないようにする必要があることです。それ以降は、誰が信頼され、誰が信頼されないかについて完全にコントロールできなくなります。


セキュリティの概要

良い点:

  • secretwebsite.comは存在しません、よろしいですか?いいえ、ありません。常に「作成中」です。誰かがそこで何かを見たという事実は、彼自身の心の創造です。
  • 問題のあるユーザーのログインを削除できます。またはより良い、あなたはそれらを取り出す必要があります。ユーザーがsecretwebsite.comsafewebsite.comについて公然と話すと、両方のウェブサイトに害を及ぼすことになります。
  • あなた自身とあなたのユーザーに否認を与えます。それをもう少し説得力のあるものにするために、secretwebsite.comから送信された(偽の)ページのサイズをランダム化できます(そのため、誰かが異なるサイズのページを取得すると主張するのは現実的ではありません)。
  • 混乱のポイントもあります。実際にsecretwebsite.comにアクセスする方法は誰にもわからないため(URLは特定のユーザーには表示され、気まぐれに基づいて他のユーザーには表示されず、量子化できません)、危険なときに一時的にsecretwebsite.comをシャットダウンできます。

悪い点:

  • 拒否可能性は、誰かに何かをする必要があるという理由だけであなたに何かをしたい攻撃者に対しては機能しません(つまり、彼はscapegoatを必要とします)。否認可能性は誰もがスケープゴートになることを防ぐことはできませんが、攻撃者があなたに対して物理的および司法的な力を持っている場合は、他のセキュリティ対策も行いません。
  • secretwebsite.comに関する都市の伝説に対処する必要があります。 safewebsite.comでの無料ローミングを許可しないことが重要です。そうしないと、目に見える相関関係が生じます。
  • 現代社会では疑惑proof(すなわちsuspicion != proof)。攻撃者が彼の疑いに頼って誰かに判決を下すことができる瞬間、彼は自分の気まぐれでそれを行うことができます。良い面は、そのような攻撃者は誰かを疑う可能性があることであり、ウェブサイトのループを通過することは、路上でランダムに誰かを捕まえることと比較して多くの作業です。
  • 大変な作業です。ユーザーのコミュニティが成長する場合、見つけるのが難しい非常に倫理的な節度が必要になります。

追記:

  • それは危険ですか?はい、人々は捕まるかもしれません。しかし、彼らはとにかくスケープゴートになります。権威主義体制にはスケープゴートが必要です。ユーザーが他のユーザーよりスケープゴートになりにくいようにする必要があります。
  • あなたはたくさん言いましたが、そのようなウェブサイトは現実の世界で機能しますか? はい、動作します。むかしむかし、そのようなWebサイトのセットアップを手伝いました。それは5年前で、ウェブサイトはまだ生きています。安全面と秘密面の両方。
  • どのウェブサイトか教えていただけますか? No、理由については上記をお読みください。
2
grochmal

私はほとんど Topher Brinkが書いたもの に同意します。もう少しだけ。

安全なコンテンツだけでは十分ではない可能性があります。コンテンツにアクセスするために大量のトラフィックが必要です。検索エンジンのヒットなど。そうしないと、他のコンテンツが存在していても、サイトへのアクセスが機密コンテンツに関連付けられる可能性があります。

問題のある国で偽の証明書が問題になる可能性がある場合は、証明書のチェックサムを確認するよう依頼することができます。しかし、偽の証明書を導入する最も説得力のある方法は改ざんされたブラウザーのインストーラーであるため、これらのチェックサムも信頼しません。したがって、ユーザーがクリーンなブラウザを使用することを期待できないこのターゲット国を使用しないでください。同じことが国の認可を受けたキーロガーなどにも当てはまります。テクノロジーが提供するプライバシーはマシンで終わります。そのマシンがプライベートでない場合、接続はできません。

使い捨てリンクはサイトによって生成され、すべての訪問者が利用できる必要があることを覚えておいてください。おそらく、テキストの選択に使用されるものとしてマウスカーソルが維持された状態で、文の終わりの重要ではない期間に黒いリンクとして光学的に非表示になります。しかし、人々はこれらのリンクを書き留めて、後で再び訪れるために使用したり、友人に提供したりする必要はありません。悪意のあるURLを渡すことなく、「そこをクリックするだけで、見る必要のあるものが表示される」と友達に伝えることができるはずです。そして、あなたは方法を知っているという事実自体が不快なので、電子コミュニケーションではなく、口頭で対面でのみこれを言うべきです。

安全で機密性の高いページは、マシン上に残る可能性のあるトレースに関して、可能な限り類似していることを確認する必要があります。同じHTMLタイトル、同じファビコン、同じCookie。できれば同じ画像ファイルでさえ。それが不可能な場合は、訪問後にキャッシュを削除するようにユーザーに伝え、その方法を説明する必要があります。最も一般的なブラウザの匿名サーフィン機能の使用方法についても説明します。少なくとも、これらが使用の痕跡を残さないことを確認した後、それは期待されるかもしれませんが、私にはわかりません。

また、ユーザーの行動に関連するすべてのガイドラインを含める必要があります(キャッシュの消去、監視している人の監視、コンピューターのセキュリティが侵害されていないこと、他者への書面による指示、安全でない証明書の受け入れ、他者へのこれらの指示の中継など)は、目立つように頻繁に訪問者に表示されます。 。しかし、結局のところ、彼らがこのガイダンスに従うことを期待できるだけであり、これらの側面をリモートで制御することはできません。

1
MvG

概念的な答え

「方法」について詳しく説明していませんが、この「何をすべきか」の説明は、可能な限り機能するものを開発するのに役立つと思います。

状況

ユーザーの観点からすると、プロセスにはいくつかの重要なステップがあるようです。

  1. サーバーに接続する
  2. サーバー上のコンテンツを閲覧する
  3. サーバーから離れる

チャレンジ

彼らがトピックXに関連する何かを見たことを証明することは不可能であるべきです。彼らのインターネットは永久に監視されるかもしれず、彼らが終わった後彼らのコンピュータは没収されるかもしれません。

解決

これらのソリューションパーツを組み合わせると、合理的な状況になると思います。

  1. トピックXのコンテンツに接続していることを証明できないことを確認してください。これを行う最も実用的な方法は、トピックXを含む一般的なサイトに誰かを接続させることです。ここで検討することは、政府がトピックXを表示するためにサイトに接続していることを技術的に証明できない場合でも、サイトがそのためだけに知られていて、通常のコンテンツについては知られていない場合、これはまだ推測される可能性があるということです。
  2. 接続したら、トピックXにアクセスしたことを証明できないことを確認してください。もちろん、接続は暗号化されている必要があり(https ?!)、サイトは人を差別する可能性のあるログを保持するべきではありません。また間違いなく安全な国でホストされています。
  3. クライアント側に痕跡が残されていないことを確認してください。これは他の回答にはあまり触れられていませんが、訪問者のPCを翌日に検査する場合は重要です。私が間違っていない限り、これは通常のブラウザでコンテンツを利用可能にすることを自動的に失格にします。おそらく必要ではないかもしれませんが、これに対する解決策は、サイトの訪問者(トピックXにアクセスする訪問者だけでなく)がコンテンツを通常は表示せず、専用クライアントを介して表示することです。このクライアントは、履歴、キャッシュ、ダウンロードした動画などを保持しないように設計する必要があります。

リスクに見合うものですか?

先に述べたように、捕まったら刑務所に行く可能性のある人々にこの種のコンテンツを提供することは、軽く決断することではありません。私がここで推奨するのは、とにかく(安全性の低い方法で)似たようなコンテンツを見つけることを期待する場合にのみ、これを行うことです。

1

できません。クライアントが参加する必要があります。ユーザーベースが拡大した場合、安全で秘密のウェブサイトを使用することはできません。漏えいした1つのリンクを使用して、秘密のWebサイトのコンテンツを証明するために使用できます。あなたのウェブサイトによって提供されるコンテンツは、公的にアクセス可能な証明書を使用して、あなたのウェブサイトによって署名されています。 (それ以外の場合は、適切なWebサイトを取得していることを確認できません。表示されます。)証明書があなたのものであることを誰かが証明でき、ブラウザに送信した署名のコピーがある場合(クリックするだけで取得できます)ちなみに、Firefoxのいくつかのメニュー)できること証明すること彼らが提供したコンテンツが本物であると彼らが言う。

また、コンテンツの整合性も失わないように、ウェブサイトのコンテンツの署名を単純に回避することはできないことにも注意してください。

したがって、anyoneがリークした場合でも、否認性はありません。 (これは グロクマルの答え)を参照しています。

Torが最善の答えですが、それは不完全です。あなたが尋ねている質問に対する良い答えはありません。それでも、 Torブリッジ/プラグ可能なトランスポート が役立つかもしれません。

0
Singularity.