# curlのCookie解析バグがリモートコード実行につながる可能性、HackerOne報告書
HackerOneの脆弱性開示によると、curlのCookie解析コードには、リモートコード実行につながる可能性のある重大なスタックベースのバッファオーバーフローが存在する。報告書は、多くのアプリケーションがHTTPリクエストに使用しているライブラリ、libcurlがこのバグの影響を受けると説明している。libcurlは幅広いソフトウェアに組み込まれているため、解析ロジックの限定的な欠陥でさえ、下流に広範な影響を及ぼし得る。
この脆弱性開示は、深刻度と悪用経路の両面で注目に値する。Cookieの解析はウェブ通信の通常の一部であり、脆弱なコードが、多くのアプリケーションが自動的に通る経路に存在することを意味する。攻撃者が悪意を持って細工したCookieをそのパーサーに入力できれば、通常とは異なるユーザー操作を必要とせずにスタックオーバーフローを引き起こせる可能性があると報告書は述べている。そのため、この問題は単独のアプリケーションのバグにとどまらない。このライブラリに依存するあらゆるプロジェクトにとって、サプライチェーンのセキュリティ問題となる。
報告書の表現は、最悪の場合の結果としてリモートコード実行を挙げている。実務的に言えば、これは、libcurlをリンクしているプロセス内で攻撃者が任意のコードを実行できる可能性を意味するため、保守担当者が最も迅速に注意を向けるセキュリティ上の分類である。サーバー側ソフトウェアでは、不正な形式の応答から重大な侵害に至る経路となり得る。クライアントアプリケーションでは、周辺環境に応じて、クラッシュからシステム全体のより広範な危険への露出まで、さまざまな結果が生じ得る。
この開示は、インターネットの基盤がどのようにリスクを集中させるかを改めて示すものでもある。curlは、開発者が見えないインフラとして扱いがちなライブラリの一つだ。あまりにも一般的であるため、多くのチームは脆弱性開示が発表されて初めて、その存在を意識する。しかし、基盤的なライブラリにメモリー安全性のバグがあると、その問題はパッケージマネージャー、クラウドサービス、自動化ツール、そして宣伝文句ではcurlに一切触れていない組み込み機器にまで波及し得る。
提供された抜粋では、報告書は悪用の詳細や修正状況を説明していない。したがって、報道機関にとって最も安全な扱いは、開示内容の主張に徹することだ。すなわち、Cookie解析に重大なスタックベースのオーバーフローが存在し、適切な条件下で引き起こされた場合、コード実行につながる可能性があるという主張である。それ以上の内容には、別途の勧告、保守担当者の声明、またはエクスプロイト分析が必要となる。
より大きな教訓は、よく知られたものだが重要である。成熟したオープンソースプロジェクトは広く信頼されていても、ありふれて見えるコードに危険なバグを抱えている可能性がある。Cookie処理は華やかではないが、ネットワーク入力とプログラムの状態との信頼境界に位置するため、セキュリティ上の機密性が高い。その信頼境界が破られると、影響はエコシステム全体に急速に広がり得る。
開発者や運用担当者にとって、この報告書は上流のパッチを注視し、libcurlがどこに導入されているかを棚卸しするきっかけとなる。それ以外の人々にとっては、依存関係にある小さな解析エラーが広範なセキュリティ事案へ発展し得ることを示す、もう一つの例である。この脆弱性がニュースになるのは、珍しいからではない。非常に多くの他のシステムが人知れず依存しているソフトウェアに存在するからだ。



