Issue 10

🗞️ Articles

Lunascape と Sleipnir に報告した脆弱性の話(スマホアプリではとにかく HTTPS を使え 2021)

スマートフォン向けブラウザアプリである Lunascape と Sleipnir において、検索ワードや閲覧しようとした URL が開発元または検索サービスのサーバーに送信される問題について。

Guest Blog Post: Good First Steps to Find Security Bugs in Fenix (Part 2)

Firefox for Android (Fenix) のプライベートブラウジングモードのバイパスについて。
通常のブラウジングとプライベートブラウジングで Cookie ストアを共有しているため、トラッキングが可能である複数の脆弱性について解説されている。

Launching OSV - Better vulnerability triage for open source

Google が OSV (Open Source Vulnerabilities) を立ち上げ。CVE 単体では CPE とのマッピングが難しく、また、メンテナも影響のあるバージョンをすべて洗い出すのは困難である。
OSV ではそれらの課題を解決するために、できるだけ脆弱性情報公開のためのメンテナの作業量を減らし、正確なメタデータをクエリで検索できるようにする。

テストケースとビルドの手順を用意し、OSS-Fuzz と連携することで自動で OSV のデータベースをアップデートしている。現在は OSS-Fuzz を利用している 380 個以上のプロジェクトが登録されており、今後は NPM や PyPI などのエコシステムも登録する予定。

Dependency Confusion: How I Hacked Into Apple, Microsoft and Dozens of Other Companies

いくつかのパッケージマネージャーは公式とは異なるパッケージインデックス URL を指定した場合、公式と指定した URL の両方を検索し、バージョンが大きい方をインストールする仕組みになっている。例えば pip であれば pip install <package> --extra-index-url ... で指定したパッケージインデックスから取得できる。 この挙動を利用し、内部で利用されているだろうパッケージを OSINT で取得し、同名のパッケージを公式インデックスで公開。Apple や PayPal などで不正にインストールさせることを可能とした。

3 Ways to Mitigate Risk When Using Private Package Feeds

パッケージを利用する際のサプライチェーン攻撃への対策に関するホワイトペーパー。それぞれのパッケージマネージャーでスコープ制限や Integrity Versification の仕組みがあるため、それを利用することが推奨されている。

Attacking Kubernetes clusters using the Kubelet API

Kubelet API を利用した攻撃パターンについての紹介。

Defending Infrastructure as Code in GitHub Enterprise

GitHub Enterprise のおける Attack Surfaces とセキュリティ強化のための推奨項目について。

🧰 Tools

google/kctf

Kubernetes ベースの CTF 環境構築のためのツールキット。コンテナの中でさらに nsjail を使うことで参加者ごとに個別の環境を用意できる。

palantir/policy-bot

Pull Requests の Approve ポリシーを適用する GitHub App. 特定の条件を満たさなければマージできないようにする。

💣 CVE

CVE-2021-22880 : Possible DoS Vulnerability in Active Record PostgreSQL adapter

Rails と PostgreSQL で Money 型を利用している場合に生じる Regex DoS 脆弱性。

CVE-2021-22881 : Possible Open Redirect in Host Authorization Middleware

config.hosts. (dot) 始まりのドメイン(e.g .example.com)が設定されている場合、生成される正規表現にミスがあり、指定したホスト以外からもアクセスができてしまう脆弱性。

CVE-2021-21288 : Server-side request forgery in CarrierWave

CarrierWave で任意の URL からファイルをアップロードしている場合に SSRF 脆弱性が生じる。

CVE-2021-21305 : Code Injection vulnerability in CarrierWave::RMagick

CarrierWave::RMagick で #manipulate! を利用し、 :read:write オプションに外部から任意の文字列を与えることができる場合に、任意コード実行につながる脆弱性。