> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> CVE-2020-15084: Express-jwt ライブラリのセキュリティアップデート

# CVE-2020-15084: express-jwt ライブラリのセキュリティアップデート

**公開日**: 2020年6月30日

**CVE番号**: CVE-2020-15084

**謝辞**: IST Group

<div id="overview">
  ## 概要
</div>

5.3.3 以前 (5.3.3 を含む) のバージョンでは、設定で **algorithms** エントリの指定を必須としていませんでした。

設定で **algorithms** が指定されていない場合、jwks-rsa または場合によっては他の非対称暗号ライブラリと組み合わせることで、認可の回避につながる可能性があります。

<div id="am-i-affected">
  ## 影響を受けますか？
</div>

以下の条件をすべて満たす場合、この脆弱性の影響を受けます。

* express-<Tooltip tip="JSON Web Token (JWT): 2者間でクレームを安全に表現するために使用される標準的なIDトークン形式（多くの場合はアクセストークン形式でもあります）。" cta="用語集を表示" href="/ja/docs/glossary?term=jwt">jwt</Tooltip> を使用しており、かつ
* express-jwt の設定で **algorithms** を設定しておらず、かつ
* **secret** として jwks-rsa などのライブラリを使用している。

<div id="how-to-fix-that">
  ## どう修正すればよいですか？
</div>

express-jwt の設定で **algorithms** を指定します。以下は、正しい設定例です。

```javascript lines theme={null}
const checkJwt = jwt({
  secret: jwksRsa.expressJwtSecret({
    rateLimit: true,
    jwksRequestsPerMinute: 5,
    jwksUri: `https://{DOMAIN}/.well-known/jwks.json`
  }),
  // オーディエンスとIssuerを検証する。
  audience: process.env.AUDIENCE,
  issuer: `https://{DOMAIN}/`,
  // 許可するアルゴリズムを制限する
  algorithms: ['RS256']
});
```

<div id="will-this-update-impact-my-users">
  ## この更新はユーザーに影響しますか？
</div>

許可するalgorithmsを指定している場合、このパッチで提供される修正がユーザーに影響することはありません。このパッチにより、algorithmsの設定が必須になりました。
