LoginSignup
5
4

More than 5 years have passed since last update.

SailsのX-Powered-Byを書き換える

Posted at

サイトにアクセスしているだけでは気づきませんが、HeaderにしっかりとSailsを使っているぜ!と主張なさっているヘッダーが埋め込まれています。

X-Powered-By    Sails <sailsjs.org>

これではせっかく作ったサイトもSailsが作ったみたいになってます。不愉快です。

Sailsのソースコードを見てみましょう。ワードで検索をかけた所、どうやらmiddlewareのdefault値の所に実装されているようでした。

default.js
poweredBy: function xPoweredBy(req, res, next) {
  res.header('X-Powered-By', 'Sails <sailsjs.org>');
  next();
}

御存知の通り、Sailsのmiddlewareはconfigから自由に継承することができます。

Sails v0.9以下の人

config/express.coffee
module.exports.express =
  middleware:
    poweredBy: (req, res, next)->
      res.header 'X-Powered-By', 'PHP/4.1.0'
      next()

Sails v0.10以降の人

config/http.coffee
module.exports.http =
  middleware:
    poweredBy: (req, res, next)->
      res.header 'X-Powered-By', 'PHP/4.1.0'
      next()

PHP〜な奴を好きな値に変えれば幸せになります。
ヘッダーを見て脆弱性を突く人が沢山いるので、これを応用してクラッカーを欺きましょう。
また、そもそもX-Powered-By自体を無効化したいなら、

res.removeHeader "x-powered-by"

を書いてみると良いかもしれません。

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4