multerにおいて、リクエストの終了後に未完了のアシンクロナスな`fileFilter`が存在すると、サービス拒否(DoS)の脆弱性が存在する。
### 影響
`multer`が非同期の`fileFilter`で設定されている場合、単一のリクエストがNode.jsプロセスをクラッシュさせる可能性がある。例えば、ファイルが拒否された場合にリクエストが中断されたとき、別のファイルの非同期`fileFilter`がまだ処理中である場合、multerがすでに終了させたストリームの解析処理が後で再開される。その結果、`busboy`がエラーリスナーを持たないストリームに対してエラーを発生させ、Node.jsが未処理の`'error'`イベントとしてそれを検出し、プロセスが終了する。認証されていない単一のリクエストでさえ十分であり、非同期`fileFilter`を使用している`multer`を利用するアプリケーションは、ストレージエンジンに関わらず影響を受ける。同期`fileFilter`を使用している場合は影響を受けない。
### 修正
ユーザーは`multer`をバージョン`2.5.0`以降にアップグレードする必要がある。
### 対策
同期`fileFilter`を使用する。
影響を受けるパッケージ:
- npm (JavaScript) multer: 影響を受けるバージョンは`2.0.0`より大きく、`2.5.0`より小さい。`2.5.0`で修正済み。