fastapi-code-generator は、OpenAPI 定義のパス、追加レスポンスのステータスコードのキー、operation の summary を、エスケープせずに生成コードの文字列リテラルへ埋め込んでいました。引用符を含む値を仕込んだ定義から生成すると、任意の Python の式が生成コードに入り込みます。パスとステータスコードの件は main.py を読み込んだ時点(サーバー起動時)に、summary の件はそのエンドポイントが呼ばれた時点に、サーバー上でコードが実行されます。
isomorphic-git の checkout は、パスの途中にあるディレクトリのシンボリックリンクを確認せずにファイルを書き込んでいました。あるコミットでシンボリックリンクを置き、次のコミットで同名のディレクトリ配下にファイルを置いたリポジトリを clone して pull すると、作業ツリーの外へファイルが書かれます。Linux や macOS で Node の fs を使う場合、~/.ssh/authorized_keys や .git/hooks への書き込みを通じてコード実行につながります。
zt-zip の ZipUtil.unpack は展開先の外へ出るエントリを拒否しますが、Zips.get(zip).unpack().destination(dir).process() という fluent API 側には同じ確認がありませんでした。../ を含むエントリ名の ZIP を展開すると、展開先ディレクトリの外にファイルが書き込まれます。transformer を指定した場合も同様です。
OIDC プロバイダの Pocket ID は、client_credentials のトークン要求で渡された resource パラメータを検証せず、そのまま JWT の aud に入れていました。正規の資格情報を持つ OIDC クライアントなら、他のクライアントを宛先とする Pocket ID 署名済みのトークンを取得できます。サービス間認可に client credentials を使い、Pocket ID の JWKS でトークンを検証している環境では、サービス間の分離が破られます。
登録後に確認メールが届きます。メール内のリンクを押すと配信が始まります。配信はいつでも各メールの末尾から停止できます。無料です。
脆弱性の公表は毎日、何十件も流れてきます。
そのほとんどは、自分の使っていない言語やライブラリの話です。
このメディアは GitHub Advisory Database に載った直近24時間の脆弱性から重大なものを選び、
言語ごとに「何が起きたか」と「やること」を日本語で、毎朝7時に届けます。