Encrypted PGP Messaging

I basically outlined what I was getting at in my previous post attempting to articulate threat models and messaging models. My last post may have distracted from that.

###TLDR:

  1. The social and technical landscape has changed since this thread stopped in 2014.
  2. I really like the implementations of PGP notifications by Facebook and the aforementioned WP plugin. Discourse adding that capability would be helpful.
  3. I’d also love to be able to use Discourse messaging secured by something like Signal Protocol so I could avoid Facebook Messenger altogether for private conversations with forum users (currently, we end up shifting back and forth).
  4. My aesthetic preference for encrypting everything likely does not represent most users.

Email notifications with no content leakage would certainly be less useful, but it would alleviate some of the concerns. Thank you for pointing that out.

I don’t think I have anything further to add.

「いいね!」 1

The way I see it this completely solves “Thread Model 3”

Big Data: User email providers (Gmail, Yahoo!, Microsoft, etc.). Transactional email providers (Mandrill, etc.). Attacks on email in transmission or at rest.

I would only be comfortable solving

Directly in the Discourse mobile app (or whatever packaged desktop app).

「いいね!」 1

Hi there,

I work for a consortium of journalists (ICIJ) that investigates on highly sensitive projects. Most known being the Panama Papers and the Paradise Papers.

I’m about to use Discourse to help our network to coordinate and I wonder if anyone ever come out with solution for encrypted private messaging? Our main concern being: if ever the database get leaked, how can we prevent the attackers to read private messages which could reveal sensitive info about our sources.

With our current forum portal, we already setup a “proxy” service in front of our SMTP that uses GPG to automatically encrypt messages for the known keys. If the key for an email has not been provisioned, the email is not sent.

Thanks a ton!

「いいね!」 4

My suggestion would be to have the actual source info referenced as a general codename – all direct source communication should be through a highly secure medium like Signal.

Derived from

「いいね!」 1

Yeah. Where that document says:

Assume that anything you say on Slack or in Twitter direct messages will one day be public.

Apply that to Discourse as well.

Discourse is trying to be a facilitator for public discussion and doesn’t put a lot of focus on protecting users from the admins.
As a case in point, the re-naming of “private messages” to “personal messages” – the forum admins need to be able to audit PMs for harassment etc without the abusive participant noticing.

Make sure that your journalists know how to go from a codename & document number to the actual document, and that this actually WORKS, so you don’t have people uploading documents to the forum in order to get their work done.

「いいね!」 2

Yes, we already advise them to use Signal, and of course we have many security instructions like the one @riking mentioned. But each investigation involve hundreds of journalists, not all of them are tech savvy and since there is no ways to ensure they follow our recommendations, we must encrypt as many things as possible to lower risks.

The main things to check with regards to “database being leaked”:

  • anyone who has admin access to your Discourse can download the DB so limit the number of admins, and perhaps only log in as admin when absolutely required, use a “regular” moderator account typically

  • anyone who can log into your hosting server can directly grab the database, so strictly limit and control who has login credentials to your hosting server.

「いいね!」 5

Gotcha, I’ll limit the number of admin, thanks!

So I suppose no one ever implemented OTR in PM then?

非常に難しい問題領域です。ホストサーバーのログインには、二要素認証を強く推奨(または必須化)することをお勧めします。

(Discourse でも二要素認証をサポートしていますが、管理者は技術サポートツールとしてそれを上書きできます。)

「いいね!」 2

We have 3-factors of authentication in fact, using our own SSO.

「いいね!」 1

I’d like to add one point:

  • Keep Discourse and the host up to date. As is the case for any complicated software, sometimes, security vulnerabilities surface that could lead to the database being compromised. Assuming you won’t be the target of sophisticated attacks that specifically target you, quickly installing patches can eliminate most of that risk.
「いいね!」 3

The underlying issue is that you can not trust the server if you want truly secure messaging between members.

This means that the software used to encrypt and decrypt stuff should not be sent from the discourse server.

I second what was said here, you want something like keybase or signal for secure comms, you have to invest in training here. Treat the info you have on Discourse as potentially leaked, there are just too many vectors. People hosting the service, web browser caches on local computers running old exploitable operating systems and so on.

If I was pushed hard to come up with something for journalists discussing highly sensitive info that is Discourse I would

  1. Host the physical server in my house or somewhere I can see it all the time

  2. Use SSL clearly

  3. Only have myself as admin

  4. Enforce limited user agent support, demand everyone use a very specific browser and only allow that user agent on the site, this browser would not store any cached files on local disk

But… even with all of that … signal/keybase is much better on so many levels

「いいね!」 10

Discourse(または同様の非同期投稿プラットフォーム)に AutoCrypt オーバーレイがあれば素晴らしいのですが。

これはユーザーにとって PGP の「複雑さ」を安全かつ透明に管理します。しかし、「ベストエフォート」モードでは、明示的なルーム設定がなければ平文へのフォールバックが可能であることがユーザーに十分に周知されていないという問題があります。

はい、鍵交換とループ外での公開鍵の違いは理解しています。これは盲目の信頼を伴わないものです。

いいえ。2FA は ID 管理(Shibboleth のようなもの)とは全く異なります。あなたは間接的に「私が持っているもの」と「私が知っているもの」に言及しているのでしょうか?つまり、「私が持っているもの」の証明を提供することが、結果的に ID として機能するという意味ですか?

その場合、DANE 確認も必要になります。

「無料」アカウントを暗示しているのでしょうか?

Movim も同様で、それが理由で XMPP ソーシャルウェブプラットフォームから OMEMO を放棄しました。

振り返る価値のある GitHub プロジェクトに OverSec があります。これは Android 向けですが、誰かが Android 向けの取り組みを引き継ぐ可能性があります。


脅威モデルについてさらに検討します。

AutoCrypt が最高ですよね?

プライバシーに対する悪行への寛容さが、現在の脅威の土壌を作ってきました。無関心をどう解決すればよいかはわかりません。

この論理を使うなら、はるかに時代遅れのインターネットの使用を中止するよう彼らを招待したいですね。

メールは、XMPP や Matrix と同様にフェデレーションされています。

アーメン。ありがとうございます。

私はこの理由でダイジェストモードを無効にしました。

彼らは広告ブロッカーと同様に、この点について再教育が必要です。

これはいまだに問題的に携帯電話番号を必要としていますか?

検索の最良の一致だったため、ネクロ(過去の投稿への返信)しました。

「いいね!」 1

公開フォーラムに投稿する前に検索機能をもっと活用する(あるいは書く前にもっと読む)ことも、素晴らしいかもしれません。

私には明確ではありませんが、あなたは広告ブロッカーの増加を支持しているのでしょうか、それとも減少を支持しているのでしょうか?

「いいね!」 1

はい、ここでの主な推奨事項は以下の通りです。

  • Discourse Encrypt プラグインをインストールして使用する(非常に成熟しており、社内でも使用しています)
  • 「セキュアメディア」を有効にする(警告:設定が非常に困難です)
  • 「プライベートメール」を有効にして、メール経由でのコンテンツ漏洩を防ぐ
「いいね!」 2