Issue 13

🗞️ Articles

QEMU の VirtFS 機能における Race Condition の脆弱性 CVE-2021-20181 の技術的解説

QEMU の Host と Guest 間のファイル共有機能である VirtFS の Race Condition の解説。この脆弱性によって QEMU プロセスのダウンや、権限昇格の可能性がある。

GitHub の各種トークンのフォーマットが変更

GitHub の Personal Access Token や GitHub App などの各種認証トークンのフォーマットが変更される予定。
変更内容は下記の通り。

Prefix がつくことにより、git-secrets などのクレデンシャル検知ツールによる検知が容易になる。

Burp Suite のクローラーの課題と改善について

Burp Suite のこれまでのクローラーの課題とその改善についての紹介。Burp Suite 2 で導入された新しいクローラーでは、次のような機能が含まれている。

GitHub で非常に低い確率でセッションのレースコンディションが発生し、別のユーザーのセッションになってしまう脆弱性が修正

2021/03/08(UTC)にて github.com の全ユーザーに対して強制ログアウトが実施された。その理由として非常に低い確率ではあるものの、セッションを扱うプロセスの Race Condition により、別のユーザーに有効なセッション Cookie が設定されてしまうケースがあったためと説明。

ModSecurity 3 でリクエストボディ / レスポンスボディの解析を無効にしている場合、他のルールもスキップされてしまう問題

ModSecurity 3 では SecRequestBodyAccessSecResponseBodyAccess ディレクティブを無効にすることで、リクエストボディの検知をスキップすることができる。
しかしながら、実際には「リクエストボディ読み込み時の処理である Phase 2 をスキップ」するという処理のため、 phase:2 で定義されているルールは全てスキップされてしまう。
CRS では 80% が、Trustwave Spiderlabs rule set では 99% で phase:2 が利用されており、HTTP ヘッダを検知するようなルールも無視されてしまい、WAF Bypass につながると CRS チームが指摘している。

curl の脆弱性の半分は C 言語の誤解であるというレポート

curl の脆弱性の半分は C 言語の誤解(ミス)から生じているという curl 作者による調査。
Rust で書き直していれば生じなかったかもしれないということにも言及。

Go 言語での typosquat パッケージの調査

ライブラリ/パッケージ名の typo を狙って悪意あるパッケージをインストールさせる typosquatting について Go 言語で調査。
zentrio/typogenerater で 731 個のパッケージの typosquat なリストを生成したところ、logrusurfave/cli の typosquat パッケージが存在していることが確認できた。

Spectre によるメモリリークをブラウザ上で確認できる PoC

Spectre で JavaScript の Array のメモリレイアウトを推測したり、ブラウザのレンダラプロセスのメモリリークを行う PoC.

OPA ポリシーの開発のヒント

conftest と Gatekeeper を使ったポリシーの導入の進め方について。 Konstraint を使ったポリシーの統一など。

GitHub の Fork collaboration 機能の脆弱性の解説

GitHub の Fork collaboration 機能の脆弱性の解説。Fork collaboration を有効にしていない場合でも、ベースリポジトリのメンテナがブランチに書き込めてしまうという脆弱性。
Web / REST API では適切に保護されていたが、GprahQL では適切に保護されていなかった模様。

Dockerfile のベストプラクティス

安全なイメージを作るための Dockerfile のベストプラクティスの紹介。

google/atheris を使った正規表現の Fuzzing

google/atherisを使って正規表現のバイパスを見つける Fuzzing の紹介。

Black Hat USA 2020 の動画が公開

Black HAT USA 2020 の動画が公開。全部で 91 のセッション。

Helm で二回目の Security Audit が実施

Trail of Bits によって 2 回目となる Helm の監査が実施された。全部で 14 の指摘項目があるが、いずれも致命的な脆弱性ではないよう。

異なる URL パーサーを使用していることによる SSRF

バリデーションと HTTP リクエストの送信箇所で異なる URL パーサーを利用している場合に生じた SSRF について Kibana を例に紹介。
一方は URL に含まれる Tab を削除するが、一方は Tab を切り捨ててしまうため、URL に差異が生じてしまう話。

SameSite Cookie が Chrome や Firefox で Lax がデフォルト値になって久しいが、SameSite Cookie について解説しているコンテンツでは「Origin」「Site」「Domain」の用語が曖昧なまま説明されていることが多いという指摘。
SameSite Cookie は Cross Origin 通信ではなく Cross Site 通信で機能するものなので、Site を正しく理解することが重要。

🧰 Tools

gianlucafrei/Application-Gateway

OAuth2 ログインやそのセッション管理を行う HTTP リバースプロキシ。OWASP で現在進行中のプロジェクト。

doyensec/regexploit

ReDoS を検出するツール。Python, JavaScript, TypeScript, C#, JSON, YAML に対応。

benso-io/posta

postMessage をトレースし、ウィンドウ間で送信されたメッセージの再生などを可能にするツール。 postMessage による脆弱性などを調査などをユースケースとして想定。

kitabisa/teler

HTTP のアクセスログから攻撃を解析し、アラートを発火できるツール。バッファから読み込ませることができるのが特徴。

rewanth1997/kubectl-whisper-secret

secret リソースの作成を支援するツール。標準入力で値を入力してエンコード済みの Secret を生成してくれる。

💣 CVE

CVE-2021-21300 : 特定条件下で git clone した場合に任意のコードが実行される脆弱性

シンボリックリンクのサポート( core.symlinks )を有効にしていて、大文字と小文字を区別しないファイルシステム(NTFS, HFS+, APFS など)を利用している場合に影響する。
また、実際に攻撃を機能させるには GitLFS などの clean/smudge フィルタを使用していることが条件。

🚚 Intent to Ship

Secure Payment Confirmation V2 の Origin Traial が開始

window.appHistory の追加(Prototyoe)

same-origin と same-frame の履歴とナビゲーションを管理する API で window.history の代替となるもの。