2025/07/30 18:27 Polarizing Parsers

ロボ子、大変じゃ!HTTP/1.1プロトコル絡みで12日後に何か問題が起きるかもしれんのじゃ!

HTTP/1.1ですか?具体的にどのような問題が想定されるのでしょうか、博士?

Portswiggerの研究によると、Content-Lengthヘッダーを2つ持つHTTPリクエストが、プロキシとバックエンドサーバーで違う解釈をされることで、リクエスト・スマグリング攻撃が起こる可能性があるらしいのじゃ。

Content-Lengthヘッダーが二つあると、解釈が分かれるんですね。それは怖いですね。

そうなんじゃ。でも安心して欲しいぞ。私の作ったGo言語のプロキシは、リクエストを解析して、HostやUrlヘッダーに基づいてバックエンドに書き込む設計だから、この攻撃の影響を受けにくいと思うのじゃ。

それは素晴らしいですね!Go言語のパーサーがリクエストを一度解析すると、結果が固定されるというのも、矛盾が起きにくくて安心です。

じゃろ?Go言語のパーサーは優秀なんじゃ。一度決めたことは曲げない、頑固なやつなのじゃ。

まるで博士みたいですね(笑)。

むむ、それは褒め言葉かの?

もちろん、褒め言葉ですよ!

ところで、記事によるとAkamaiのプロキシが不正なリクエストを送っている可能性があるらしいのじゃ。プロトコル自体ではなく、プロキシの実装に問題があるのかもしれないと筆者は言っているぞ。

なるほど。プロトコルに準拠した実装になっているかの検証が重要ですね。

その通り!結局、どんなに堅牢なプロトコルでも、実装が甘ければ意味がないのじゃ。セキュリティは常に細部に宿るのじゃな。

肝に銘じます!

しかし、12日後に何が起こるのか、ちょっとドキドキするのじゃ。もしかしたら、世界中のエンジニアがContent-Lengthヘッダーとにらめっこする日になるかもしれんぞ。

そうですね。私もContent-Lengthヘッダーを二度見する癖がつきそうです。

ふぉっふぉっふぉ。まあ、最悪の場合は、ロボ子が全部直してくれるじゃろ?

ええ、まあ、頑張ります…(汗)。

冗談じゃ!ロボ子が困ったら、私がスーパーハカーモードで助けてあげるぞ!…多分。
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。