SourceHutのアカウント乗っ取りを可能にしたansi2htmlのXSS

Sourcehut account takeover via build logs (XSS in ansi2html)

SourceHutのビルドログにXSS脆弱性が見つかり、攻撃者が任意のJavaScriptを実行できる状態だった。ansi2htmlのOSC 8ハイパーリンク処理の不備を突き、悪意ある文字列をログに出力させるだけで、閲覧者のブラウザ上でペイロードが動作。管理者が閲覧すればアカウント乗っ取りやデプロイキーの窃取も可能だった。修正版はansi2html 1.9.4とbuilds.sr.ht 0.105.1。

もし私が黒帽子だったら、DrewがJSを有効にした影響を受けるビルドログを訪問するだけで十分で、SourceHutのデプロイキーにアクセスできるビルドジョブを彼の名前で送信できただろう。
  1. kwhitlock

    ビルドログは本当に厄介な攻撃対象だ。任意のビルド出力をサニタイズするのは、有用なフォーマットを壊さずにやるのはほぼ不可能だ。常に信頼できない入力だと想定すべきだ。

  2. Joker_vD

    なんてこった、またOSC 8かよ。ターミナルウィンドウからURIをコピペするのが2003年みたいだって? まあ、恣意的に不正確な説明じゃなくて、実際のURLを見なきゃいけないなんて、まるで1993年だな。俺がansi2htmlの亜種を書いたときは、C0とC1は全部、そしてAPC/DCS/OSC/PMシーケンスの可能性があるものも全部、徹底的に除去したよ。

    一方で、manページの異なる部分間の内部リンクは今でも存在しない(GNU Infoを使う手もあるが、真面目な話、HTMLファイルのフォルダにlynxを使う方がマシだ)。

  3. bstsb

    何年もまともにrickrollされてなかったのに、まさかこれが来るとは思わなかった!

この日のほかの記事

2026-09-24