タグ

SSLとsecurityに関するclavierのブックマーク (26)

  • AWS ALB+ACMの意外な落とし穴 | 外道父の匠

    全然たいした話ではないのですが、へーって思ったので記録しておきます。 ALB にて外部からの不正アクセスを塞いだ話になります。 はじめに注意 ※追記3 この記事は、知識不足な状態で始まり、知識不足なまま初出した未熟な内容であり、外部の助力によりそれが解決に向かう、という流れになっています。 調査環境がAWSだったために、タイトルがこうなっていますが、実際はALB+ACM単独の問題ではなく、SSL/TLS としての仕様の話になっている、 ということを念頭において、読んでいただければと思います。 ※追記3ここまで 構成と問題点 手動で作成された ALB → EC2 環境があって、ワイルドカードなACM を使って 0.0.0.0:443 のみ開いており、EC2 は Global からのアクセスは遮断してありました。 にも関わらず、不正系なHostヘッダでアクセスされた形跡があり、コイツどこから来

    AWS ALB+ACMの意外な落とし穴 | 外道父の匠
  • イラストで正しく理解するTLS 1.3の暗号技術

    イラストで正しく理解するTLS 1.3の暗号技術 初めに ここではTLS 1.3(以下TLSと略記)で使われている暗号技術を解説します。 主眼はTLSのプロトコルではなく、「暗号技術」の用語の挙動(何を入力して何を出力するのか)と目的の理解です。 実際にどのような方式なのかといった、より詳しい説明は拙著『図解即戦力 暗号と認証のしくみと理論がこれ1冊でしっかりわかる教科書』(暗認)や『暗認』の内容を紹介したスライドや動画などの資料集をごらんください。 なお表題の「イラストで」は数式を使わないという程度の意味です。 TLSで守りたいもの TLSはコンピュータ同士が安全に通信するための規格です。 主に人がブラウザを介して「https://」で始まるWebサイトにアクセスするときに利用されます。 安全に通信するためには、通信内容が盗聴されても情報が漏れない機密性が必要です。 それから通信が改

    イラストで正しく理解するTLS 1.3の暗号技術
  • 知られたくないドメインのSSL/TLS証明書を取得する場合は証明書の透明性(CT)を無効にしよう(AWS Certificate Manager編) | DevelopersIO

    知られたくないドメインのSSL/TLS証明書を取得する場合は証明書の透明性(CT)を無効にしよう(AWS Certificate Manager編) SSL/TLS証明書(以下証明書)には証明書の監視や監査を行って証明書の信頼性を高める「Certificate Transparency(証明書の透明性;以下CT)」という仕組みがあります。 Certificate Transparency : Certificate Transparency CAが証明書を発行する際には、パブリックなCTログサーバーに発行履歴を登録し、ログサーバーから受け取った署名付きのタイムスタンプ(SCT;Signed Certificate Timestamp)を埋め込んだ証明書を発行します(埋め込まない方法も有り)。 ブラウザは証明書に埋め込まれたSCTを確認し、存在しなければ証明書を不正とみなします(ブラウザによ

    知られたくないドメインのSSL/TLS証明書を取得する場合は証明書の透明性(CT)を無効にしよう(AWS Certificate Manager編) | DevelopersIO
  • Let's EncryptのDNS-01を使用して無料のSSL証明書をWebサーバなしで取得する -- ぺけみさお

    サマリDNSによる認証(DNS-01)でドメインを認証し、Let’s EncryptからSSL証明書を取得することができたので、メモとしてまとめます。クライアントはサードパーティ製のletsencrypt.shを使用します。DNSで認証するには、ドメインに認証専用のサブドメインを追加し、サブドメインに対してTXTレコードを設定できる必要があります。HTTPによる認証ではないため、Webサーバは必要ありません。このためHTTPによる認証と比較してとても簡単に証明書を取得できます。HTTPによる認証と手間なところ無料でDVのSSL証明書を取得できるLet’s Encryptが話題です。 Let’s Encryptで証明書の取得を行う場合、HTTPを使用してドメインを認証を方法(HTTP-01)が紹介されることが多いようです。 この方法でドメインを認証する仕組みは、ざっくり説明すると以下のとおり

  • 通信の安全を守るためにエンジニアができること

    http://secnight.connpass.com/event/30672/ http://togetter.com/li/974201 シャノン技術ブログ http://shanon-tech.blogspot.jp/ Read less

    通信の安全を守るためにエンジニアができること
  • Let's EncryptでHTTPSサーバを建てたついでにSSL LabsでA+評価をめざす - sonickun.log

    最近 Let's Encrypt が Public Beta になったということで,自分のサイト(https://sonickun.xyz)もSSL化してみた.また,どうせならSSL LabsのテストでA+を取りたいと思いあれこれ試行錯誤したので備忘録として残しておく. Let's Encrypt letsencrypt.org Let's Encrypt は,SSL/TLSサーバ証明書の取得・管理を簡略化できる無料のサービスであり,TLSやHTTPSを普及させることを目的としている.Let's Encryptで取得可能なSSL/TLSサーバ証明書は「ドメイン認証 (DV) SSL/TLS証明書」であり,独自ドメインの所有者であれば誰でも取得可能である.企業認証(OV)SSL/TLS証明書やEV SSL証明書は取得できないが,個人が運営するサイト程度ならDV証明書で十分といえる. Let'

    Let's EncryptでHTTPSサーバを建てたついでにSSL LabsでA+評価をめざす - sonickun.log
  • Let's Encrypt の使い方 - Let's Encrypt 総合ポータル

    Let's Encrypt は、クライアントソフトウェア「Certbot」を使用することで、SSL/TLS サーバ証明書の取得・更新作業を自動化できる仕組みになっています。 独自ドメインがあれば、簡単なコマンド操作で SSL/TLS 証明書(無料)を取得できます。 ※一般の認証局で SSL/TLS サーバ証明書を取得する場合とは異なり、秘密鍵・公開鍵・署名リクエスト(CSR)を手動で生成する必要はありません。これらの作業は、Certbot クライアントが自動的に行います。 ※Certbot 以外の ACME クライアント (英文) を使用して Let's Encrypt の証明書を取得することも可能です。 より詳しく知りたい方へ このページでは、Certbot クライアント(旧・Let's Encrypt クライアント)のプラグイン Webroot または Standalone を使用して

    Let's Encrypt の使い方 - Let's Encrypt 総合ポータル
  • 理解してるつもりの SSL/TLS でも、もっと理解したら面白かった話 · けんごのお屋敷

    apache や nginx の設定をしたことがあれば以下の様な行を見たことがある人も多いのではないでしょうか。(※ 下記は nginx の設定。apache の場合は SSLCipherSuite です。) ssl_ciphers AES128-SHA:AES256-SHA:RC4-SHA:DES-CBC3-SHA:RC4-MD5; これが暗号スイートを指定している箇所です。そしてこの部分、わけのわからない文字列の羅列なのですごく取っつきにくくて何を指定したらいいかわからないので、コピペしてしまう人も多いんじゃないでしょうか。かくいう私も数年前に趣味で TLS 対応の Web サービスを作った時はコピペで済ませていました。この暗号スイートは、以下のような OpenSSL のコマンドを使って対応している一覧を見ることができます。 $ openssl ciphers -v AES128-SH

    理解してるつもりの SSL/TLS でも、もっと理解したら面白かった話 · けんごのお屋敷
  • ApacheやNginxのSSL関連のおすすめ設定を生成する便利サイト - cakephperの日記(CakePHP, Laravel, PHP)

    ApacheやNginxとopensslのバージョンを指定するとおすすめの暗号スイートなど、SSL設定ファイルを表示してくれるMozillaのサイトがあります。 https://mozilla.github.io/server-side-tls/ssl-config-generator/ これを使えば安全な暗号スイートのみを使ってる設定などが簡単に生成されますので、この通りに指定すれば良いです。 Apacheの場合はデフォルトでは暗号スイート設定の記述はなかったと思いますが、下記の3つは表示通りに指定しておくのが良いかと思います。 SSLProtocol SSLCipherSuite SSLHonorCipherOrder Oldを選択すると、古いブラウザにも対応してる暗号スイートを含めます。ただ暗号強度が弱いものが含まれるためサイトのアクセス傾向をみて古いブラウザのアクセスが無いのであれ

    ApacheやNginxのSSL関連のおすすめ設定を生成する便利サイト - cakephperの日記(CakePHP, Laravel, PHP)
  • ELBによるSSL Terminationをご利用中の方へ、TLSの脆弱性「Logjam」対策のご案内 - サーバーワークスエンジニアブログ

    こんにちは、サーバーワークスの三井です。 少しばかり遅くなってしまいましたが、HTTPSやSSH、IPSecなどセキュアな接続に幅広く使われているTLSプロトコルに、「Logjam」と呼ばれる脆弱性が見つかり、日でもぼちぼち話題となっています。まずは慌てずに状況を確認し、対策を実施しましょう。 (※記事は、AWS環境でELBを用いたSSL Terminationを行っている方を主たる対象としています。予めご了承ください。) この脆弱性の成立するロジック自体は、3月に大きな話題となった「FREAK」と似ていますが、前者はOpenSSLの実装の脆弱性であったのに対し、今回のLogjamは鍵交換のプロトコル自体に潜在的にある脆弱性です。中間攻撃者にこの脆弱性を悪用されると、TLS通信を暗号強度の低い輸出グレードの暗号方式にダウングレードされ、通信内容が傍受される可能性があります。 クリティカ

    ELBによるSSL Terminationをご利用中の方へ、TLSの脆弱性「Logjam」対策のご案内 - サーバーワークスエンジニアブログ
  • Logjam Attackについてまとめてみた - piyolog

    Diffie-Hellman(DH)鍵交換の脆弱性を使ったTLSプロトコルに対する攻撃「Logjam Attack」に関する情報をまとめます。 脆弱性概要 脆弱性の概要情報は次の通り。 愛称 Logjam Attack (攻撃手法の愛称) Webサイト https://weakdh.org/ アイコン 無し CVE CVE-2015-1716(Microsoft) 発見者名 次の合同チームにより発見 フランス国立科学研究センター(CNRS) フランス国立情報学自動制御研究所(INRIA) Microsoft Research ジョンズホプキンス大学 ミシガン大学 ペンシルバニア大学 Logjam Attackの概要 Diffie-Hellman(DH)鍵交換の脆弱性。この脆弱性を用いて中間者攻撃が行われている環境において、TLS接続を512bitの輸出グレード暗号にダウングレードし、通信経

    Logjam Attackについてまとめてみた - piyolog
  • NginxでHTTPS : ゼロから始めてSSLの評価をA+にするまで Part 1 | POSTD

    数年前、Webは全体的に暗号化されていませんでした。HTTPSはWebページの最も重要な部分だけのために確保されていました。暗号化が必要なのは大切なユーザデータだけで、Webページの公開される部分は暗号化せずに送ってもいいということで意見が一致していました。 しかし、 今は 状況 が 違います 。現在では、どんなWebトラフィックでも暗号化されていないのは良くないということが分かっているので、Webサイトを運営する誰もがコンテンツに関係なく強固なHTTPSを設定しなければなりません。 お恥ずかしい話ですが、私自身のWebサイトは2年近くも全くHTTPSをサポートしていませんでした ^(1) 。 Eric Mill の 今すぐ無料でHTTPSに切り替えよう という素晴らしい記事が最終的に私に喝を入れてくれました。私は休暇中、HTTPSをセットアップして Qualys SSL Report

    NginxでHTTPS : ゼロから始めてSSLの評価をA+にするまで Part 1 | POSTD
  • 華麗なる因数分解:FREAK攻撃の仕組み - ぼちぼち日記

    1. はじめに ちょうど今朝 OpenSSLをはじめとした様々なTLS実装の脆弱性の詳細が公表されました。 この InriaとMSRのグループは以前からTLSのセキュリティに関して非常にアクティブに調査・検証をしているグループで、今回も驚きの内容でした。 このグループは、TLSのハンドシェイク時の状態遷移を厳密にチェックするツールを開発し、様々なTLS実装の脆弱性を発見・報告を行っていたようです。 特にFREAKと呼ばれるOpenSSLの脆弱性(CVE-2015-0204)に関しては、ちょうど修正直後の1月初めに Only allow ephemeral RSA keys in export ciphersuites で見ていましたが、具体的にどのように攻撃するのかさっぱりイメージできず、あのグループだからまた超絶変態な手法だろうが、まぁそれほど深刻じゃないだろうと見込んでいました。 今回

    華麗なる因数分解:FREAK攻撃の仕組み - ぼちぼち日記
  • 細かすぎて伝わらないSSL/TLS

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog 「細かいと言うより長いよね」 はじめに こんにちは。ATS の脆弱性を発見した小柴さんや ATS に HTTP/2 の実装を行っている大久保さんと同じチームの一年目、匿名社員M さんからいじられている新人です。今回ありがたい事に、こういったすごい方々を含めモヒカン諸先輩方より「何か書かないの?」「いつ書くの?」という数々のプレッシャーお言葉をいただきました。 というわけで、SSL/TLS の Session 再開機能に関して書いていこうかと思います。 SSL/TLS は機密性、完全性そして真正性に対して安全な通信を行うための仕組みです。しかし、この仕組みは暗号技術を多用し特に接続において複雑なプロトコルを用い、Client, Se

    細かすぎて伝わらないSSL/TLS
  • 改めて知ろう、SSLサーバー証明書とは?(第二回) | さくらのナレッジ

    こんにちは、サイバートラストの坂です。前回に続き、入門編として、SSL サーバー証明書について説明致します。 SSLサーバー証明書の違い 前回の記事では、SSL サーバー証明書に関する動向は、今年も来年も目が離せないといった状況をふまえ、改めてSSL を理解しておこうという目的のため、証明書の役割である暗号化と認証について説明しました。また、その記事のなかで、認証のレベルには違いがあることを言及しました。 SSL サーバー証明書の種類は 3 つに分けられるのですが、それは、暗号の強さ(どれだけ破られにくいか)で分類されるのでなく、どこまで詳しく証明書の名義の人(組織)を調べるかという認証のレベルによって分けられるのです。 今回は、この認証の違いについて説明させてください。 DV、OV、EV 認証レベルの違いにより、証明書の呼び方が異なります。業界では、Domain Validation

    改めて知ろう、SSLサーバー証明書とは?(第二回) | さくらのナレッジ
  • 脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (KOF2014)

    1. ~誰かの失敗を他山の石に~ 脆弱性事例に学ぶセキュアコーディング 「SSL/TLS証明書検証」編 JPCERT/CC 情報流通対策グループ 戸田 洋三 (yozo.toda@jpcert.or.jp) 1 KOF2014 version 2. Copyright©2014 JPCERT/CC All rights reserved. 自己紹介 http://www.tomo.gr.jp/root/e9706.html JPCERT/CC 情報流通対策グループ 解析チーム リードアナリスト 戸田 洋三 脆弱性情報分析, セキュアコー ディング普及啓発活動…… に努めてます 2

    脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (KOF2014)
  • SSL 3.0 を無効に設定する方法(POODLE対応) apache+mod_ssl, nginx - Qiita

    SSL 3.0の脆弱性 CVE-2014-3566 aka POODLE の対応でSSL v3を無効にする必要あり http://www.itmedia.co.jp/news/articles/1410/15/news054.html http://googleonlinesecurity.blogspot.jp/2014/10/this-poodle-bites-exploiting-ssl-30.html https://blog.mozilla.org/security/2014/10/14/the-poodle-attack-and-the-end-of-ssl-3-0/ https://www.openssl.org/~bodo/ssl-poodle.pdf Apache httpd + mod_sslなら http://httpd.apache.org/docs/2.2/mod

    SSL 3.0 を無効に設定する方法(POODLE対応) apache+mod_ssl, nginx - Qiita
  • OpenSSLの脆弱性(CVE-2014-3511)でTLSプロトコルの基礎を学ぶ - ぼちぼち日記

    1. はじめに、 昨日 OpenSSLのバージョンアップがアナウンスされ、9つの脆弱性が公開されました。バージョンアップの数日前にOpenSSLの次期リリース予告がアナウンスされていましたが、ちょうど BlackHat 開催初日にあたることもあり、なんかまた重大な脆弱性の修正が入るんじゃないかとドキドキしていました。蓋を開けてみるとHeatBleed程の大事ではなくホットひと安心です。 昨日公開されたOpenSSLの9つの脆弱性のうち、TLS プロトコルダウングレード攻撃 (CVE-2014-3511)の修正を見ていたところ、これはTLSプロトコルを学ぶいい題材になるなぁとふと思いつき、試しにこのOpensslの脆弱性の詳細をTLSプロトコルの基礎に合わせて書いてみました。 ちょっと長いですが、TLSプロトコルの仕組み(の一部)を知りたい方はお読みください。 2. OpenSSLの脆弱性

    OpenSSLの脆弱性(CVE-2014-3511)でTLSプロトコルの基礎を学ぶ - ぼちぼち日記
  • CCS Injection脆弱性(CVE-2014-0224)発見の経緯についての紹介 - OpenSSL #ccsinjection Vulnerability

    菊池です。CCS Injection脆弱性(CVE-2014-0224)発見の経緯について紹介します。 バグの簡単な解説 OpenSSLがハンドシェーク中に不適切な状態でChangeCipherSpecを受理してしまうのが今回のバグです。 このバグはOpenSSLの最初のリリースから存在していました。 通常のハンドシェークでは、右の図のような順序でメッセージを交換します(RFC5246 The Transport Layer Security (TLS) Protocol Version 1.2 §7.3より作成)。 ChangeCipherSpecは必ずこの位置で行うことになっています。OpenSSLもChangeCipherSpecをこのタイミングで送信しますが、受信は他のタイミングでも行うようになっていました。これを悪用することで、攻撃者が通信を解読・改ざん可能です。 発見の困難さ

    CCS Injection脆弱性(CVE-2014-0224)発見の経緯についての紹介 - OpenSSL #ccsinjection Vulnerability
  • WiresharkでSSL通信の中身を覗いてみる - ろば電子が詰まつてゐる

    OpenSSLの脆弱性「Heartbleed」が世間を賑わせていますが、色々と乗り遅れてしまった感があるので、ゆるゆると落ち穂拾いをしようかと思います。 Heartbleedで秘密鍵を手に入れたらSSL通信の中身全部見えちゃうじゃん!! という事態になっていますが、なんとなく理論的にそうだろうなと分かるもののイマイチ具体的な手順が分からない。 というわけで今回のテーマとして、手元にサーバの秘密鍵と、SSL通信をパケットキャプチャしたpcapファイルがあるときに、Wiresharkでどんな感じでSSL通信を「ほどく」のか……という具体的な手順を、ハマり所を含めてまとめておこうかと思います。 というか、私自身がハマったので自分用メモですな。なおこの文書では"SSL"とだけ記述し、TLSは無視しています。 前提条件 とりあえず以下のような感じの検証環境で試しました。 IPアドレス 説明 ホストO

    WiresharkでSSL通信の中身を覗いてみる - ろば電子が詰まつてゐる