Proxy module has no request validation — passes through malicious payloads to downstream services

オープン
#3 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
42/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
静か
技術スタック
typescript
領域
api, backend, security

調査の方向性

Start by reading src/proxy/proxy.service.ts and src/proxy/proxy.module.ts to trace how requests are forwarded and how user identity is available. Define and verify limits for payload size, Content-Type validation, and per-user rate limiting at the proxy boundary. Done means proxied requests enforce all three protections without bypassing downstream-service behavior.

索引モデルが issue の本文から書いたものです。

説明

bug help wanted security

Description

The proxy module in src/proxy/ acts as a gateway between the Hub and downstream services (Campus-Marketplace, CCPS-Portal, etc.) but performs no input validation, sanitization, or rate limiting on forwarded requests.

If any downstream service has a vulnerability, the proxy provides no protective layer. Conversely, the proxy could be used to:

  1. Forward overly large payloads causing memory exhaustion on backend services
  2. Bypass rate limits on individual services (proxy has its own identity, so per-user rate limits don't apply)
  3. Amplify attacks by fanning out a single request to multiple downstream services

Expected Behavior

  • Request payload size limits
  • Input validation on proxied requests
  • Per-user rate limiting at the proxy level

Suggested Fix

  • Add request body size limits (bodyLimit in Fastify)
  • Implement a validation middleware that checks Content-Type and approximate payload size
  • Add per-user rate limiting using the user identity extracted from auth

Affected Files

  • src/proxy/proxy.service.ts
  • src/proxy/proxy.module.ts
主要言語
TypeScript
スター
0
フォーク
0
PR マージ指標
30日以内にマージされた PR はありません

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

OpenLake/Hub のほかの issue

OpenLake/Hub の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。