LoginSignup
0
0

NestJSでX-Powered-Byヘッダーを非表示にする

Posted at

NestJSでバックエンドアプリケーションを開発している最中、デバッグ中にコンソール画面でAPIレスポンスにX-Powered-By: Expressヘッダーが表示されていることに気づきました。

APIレスポンス

このままでは攻撃者に技術スタックが特定されるリスクがあるので、X-Powered-Byヘッダーを非表示にする必要があります。

まず、ルートに次の記述があるはずです。

const app = await NestFactory.create(AppModule);

次に、以下をインポートします。

import { ExpressAdapter } from '@nestjs/platform-express';
import express from 'express';

最後に、以下のようにコードを修正します。

const expressApp = express();
expressApp.disable('x-powered-by');
const adapter = new ExpressAdapter(expressApp);
const app = await NestFactory.create(AppModule, adapter);

これで、X-Powered-Byヘッダーが表示されなくなります。

修正後のAPIレスポンス

以上の手順で、技術スタックを露見させずにアプリケーションのセキュリティを向上させることができます。

※補足
以下でもOKみたいです。

import { NestExpressApplication } from '@nestjs/platform-express'

const app = await NestFactory.create<NestExpressApplication>(AppModule)
app.disable('x-powered-by')
0
0
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
0
0