概要
XFH を使ったオープンリダイレクトの脆弱性を指摘され rack_protection を使ったホスト名
認証を導入したので設定が必要になります
許可されていないホストからのアクセスは Host not permitted になります
環境
- macOS 15.1
- Ruby 3.3.5
- Sinatra 4.1.0
対応方法
host_authorization で permitted_hosts に許可したホスト名を指定します
すべてのホストを許可する場合は空の配列で OK です
require "sinatra/base"
class ExampleApp < Sinatra::Base
# disable it only for development
configure :development do
set :host_authorization, { permitted_hosts: [] }
end
# but enable it for production for some domains
configure :production do
set :host_authorization, { permitted_hosts: [".example.com"] }
end
get("/") { "OK" }
end
最後に
デフォルトでは拒否状態になっているので本番にデプロイする場合は必ず設定する必要があります
0 件のコメント:
コメントを投稿