lambdaclass / lambdaclass/lambda_compiler_kit
JSON parser DoS prevention
オープン
まだ誰も着手していません。
- 主要言語
- Lean
- スター
- 2
- フォーク
- 1
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
As reported by Claude review, our current JSON parser does not prevent large exponents from exhausting our memory.
The solution proposed by Claude, however, is inflexible: cap the exponent.
For most regular uses that would be OK. For schema validation, though, that might be too restrictive.
Instead, I suggest we just keep the exponent as a separate field for JSON numbers.
The trade off:
- We get arbitrarily large numbers with efficient-ish representation
- We allow users to define schemas with arbitrary numbers
- We need to implement basic operations and might need some float-like behavior in places
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
この issue ではファイル、テスト、エントリポイントが指定されていません。まず JSON パーサーとその数値表現を見つけ、次に指数を保持する範囲と必要な基本操作を特定します。大きな指数によってメモリ枯渇が発生しなくなり、スキーマ検証が引き続き任意の数値を受け入れれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- json
- 領域
- compilers, security
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100