1
/
5

HSTS(HTTP Strict Transport Security)とは?【株式会社ライトコード】

※弊社エンジニアの記事になります。

はじめに

システムやインターネットは生活をする上で欠かせないものとなりました。その分、個人情報などを扱う機会も多くなり情報セキュリティ対策が需要になってきている。

現在携わっているプロジェクトでリリースに向けて脆弱性診断のフェーズがあります。その際、セキュリティ会社へ脆弱性診断を依頼したところ、HSTS(HTTP Strict Transport Security)の設定がされていないと指摘を受けた。

指摘の対応をするにあたり、HSTSについて調べたことをまとめる。

HSTS(HTTP Strict Transport Security)とは

WebサーバがHTTPヘッダに設定する項目の一つで、ユーザが同一ドメインに対するアクセスした際にHTTPでアクセスしようとしても、ブラウザが強制的にHTTPSでアクセスを行う仕組み。

簡単にまとめると、「https://www.apple.com/jp/」にいる状態で「http://www.apple.com/jp/iphone-15/」にリクエストをしてもブラウザが勝手に「https://www.apple.com/jp/iphone-15/」でリクエストを送ってくれるということらしい。

HSTSはRFC6797で規定されてる。

HSTSはどういった攻撃に有効なの?

HTTP通信は暗号化されていない平文での通信を行うため、通信内容の傍受や改ざんによって意図しないサイトへのリダイレクトさせるなどのセキュリティーリスクが存在する。

HTTPS通信はTLS/SSLによって暗号化されているため、通信内容の傍受が行われても内容の解読ができなくなる。

HTTPからHTTPS通信に変更し暗号化された通信になり中間者攻撃(MITM)を防ぐことに役立つ。

HSTSの設定方法

調べたところ、設定方法は環境によって異なるようだった。

私のプロジェクトだとSpringで開発をこなっているため、Spring Securityのリファレンスを確認するとデフォルトで設定されているようだった。

デフォルトの設定内容

Strict-Transport-Security: max-age=31536000 ; includeSubDomains

max-ageに値を設定することで、指定された秒数だけ当該ドメインに対してHSTSが有効になる。

今回は1年間有効にしたいのでデフォルトのままでOK。

includeSubDomainsはオプションで、これを設定すると該当のドメインだけではなくサブドメインにもHTSTSが有効になる。

今回はなくても問題ないが、デフォルトのまま。

HSTSがヘッダーに表示されない原因

デフォルトで設定されているのに指摘を受け、ヘッダーを確認すると確かに設定されてない。。。悩んだ。

原因は、AWS ALBを利用していること。ALBはカスタムヘッダーを付与することができないらしい。

そのため、HSTSが付与されておらず指摘を受けてしまったようだった。

解決方法としては、ALBにこのリクエストはHTTPSで行われていることを伝えれば良いためその設定を行う。

yamlファイルに下記の内容を追加するだけ。

server:
  tomcat:
    remoteip:
      remote-ip-header: "x-forwarded-for"
      protocol-header: "x-forwarded-proto"

この設定をすることでALBはIPとプロトコルを判断することができるようになりました。

記事の続きは下のリンクをクリック!

https://rightcode.co.jp/blog/information-technology/http-strict-transport-security

【2024年卒】新卒採用エントリー開始しました!

特設ページはこちら:https://rightcode.co.jp/recruit/entry-2024

※終了致しました。

インターン募集!未経験ok、チャレンジ精神ある方求む

メディア運営:https://rightcode.co.jp/recruit/intern-media

社長と一杯飲みながらお話しませんか?(転職者向け)

特設ページはこちら: https://rightcode.co.jp/gohan-sake-president-talk

もっとワクワクしたいあなたへ

現在、ライトコードでは「WEBエンジニア」「スマホアプリエンジニア」「ゲームエンジニア」、「デザイナー」「WEBディレクター」「エンジニアリングマネージャー」「営業」などを積極採用中です!

有名WEBサービスやアプリの受託開発などの企画、開発案件が目白押しの状況です。

  • もっと大きなことに挑戦したい!
  • エンジニアとしてもっと成長したい!
  • モダンな技術に触れたい!

現状に満足していない方は、まずは、エンジニアとしても第一線を走り続ける弊社代表と気軽にお話してみませんか?

ネット上では、ちょっとユルそうな会社に感じると思いますが(笑)、
実は技術力に定評があり、沢山の実績を残している会社ということをお伝えしたいと思っております。

  • ライトコードの魅力を知っていただきたい!
  • 社風や文化なども知っていただきたい!
  • 技術に対して熱意のある方に入社していただきたい!

一度、【Wantedly内の弊社ページ】や【コーポレートサイト】をのぞいてみてください。

【コーポレートサイト】https://rightcode.co.jp/

【採用募集】https://rightcode.co.jp/recruit(こちらからの応募がスムーズ)

【wantedlyぺージ】https://www.wantedly.com/companies/rightcode

Invitation from 株式会社ライトコード
If this story triggered your interest, have a chat with the team?
株式会社ライトコード's job postings

Weekly ranking

Show other rankings
Like Hiroyuki Choshi's Story
Let Hiroyuki Choshi's company know you're interested in their content