セキュリティ

nginxのssl_trusted_certificateメモ

nginxのssl_trusted_certificate(およびssl_client_certificate)は異なるコンテキストから利用されている。 クライアント証明書を検証する際に信頼する証明書は ssl_trusted_certificate で指定されるが、この命令で定義されるtrust storeはOCSP Stapling…

セキュアなメール配送(MTA間通信)を考える+DNSSEC

2015年現在、メール配送の終着点(メールボックスサーバー)とエンドユーザーの間は、ほとんどのメールサービスでPOPS・IMAPSあるいはHTTPS上のウェブメールが利用でき、TLSによるセキュアな通信が可能になっています。 一方で、メール配送、すなわちMTA間の…

fluent-plugin-secure-forwardの脆弱性と匿名TLSの話

先日fluentdのサードパーティプラグインの fluent-plugin-secure-forward に言及した件について、更新v0.3.2が公開されています。 http://tagomoris.hatenablog.com/entry/2015/05/28/182245 http://tagomoris.tumblr.com/post/120090873793/vulnerability-a…

証明書作成サイトCertCraft.netを公開しました

CertCraft.netというテスト用x509証明書(いわゆるSSL証明書)と認証局(Certificate Authority)をオンラインで作成するツールを公開しました。 なにこれ? これはTLS Transport Layer Security (旧称SSL)で使われる証明書、いわゆるオレオレ証明書・オレ…

リバースブルートフォース攻撃対策手法

一言で言えば、リバースブルートフォース対策=脆弱なパスワードの禁止。 ブルートフォースとの相違点 『リバースブルートフォース』と呼ばれる攻撃は、多くのユーザーが使っていそうな少数のパスワード辞書と、多数のアカウント名を用いてログイン試行を繰…

CentOS6+NginxでECDHEを有効にしてForward Secrecy取得までのメモ

昨日は鍵共有を甘く見て爆死したためCentOS+NginxのサーバーをWindows環境に対応させてみる。 RPMに慣れていた都合上、主なサーバーにCentOS6を使っている。 CentOS/RHEL6.4では2013年10月時点で、標準のOpenSSLは1.0.0、Nginxは1.0系が導入される。Nginxに…

SSLとGPGの秘密鍵と鍵交換(訂正)

Lavabitに関するGeekなページの記事がGPGとSSLの鍵や鍵交換を混同しているようなのでメモ。 SSLとGPGの秘密鍵 LavabitのようなWeb上の暗号化メールシステムでは、二つの全く異なる暗号化機構がある(あった)。 SSLでのサーバー証明用秘密鍵 まず、サーバー…

Exim4はSMTP-AUTH over TLSをサポートしない

exim4の実装は、他のSMTPサーバーにSMTP-AUTHでログインする際に、TLSのCommon Nameではなく逆引きドメイン名に対応する認証情報を送ってしまう。 本来フル機能のMTAのexim4が、二つ以上の異なるスマートホストに対する認証情報を持つ、というレアなケースで…

パスワード認証を脆弱にする10の方法とアンチパターン

いかにしてパスワード認証を脆弱にするか。プログラミング黎明期からずっとデベロッパーの頭を悩ませ続ける問題です。 ここでは脆弱なパスワード認証を実現するための方法を紹介します。 パスワード自動入力の禁止 不届きなブラウザがパスワードを記憶してし…

SSL中間CA証明書の確認方法メモ

先日、久しく寝かせていたレンタルサーバーを使おうと思い、メールアカウントを設定したのだが、SSL通信に失敗した。原因はよくある、中間証明書の設定ミス。POPS/SMTPSサーバーにインストールされた証明書セットが間違っていた。 HTTPSの設定確認はQualys L…