on
Issue 10
- 🗞️ Articles
- Lunascape と Sleipnir に報告した脆弱性の話(スマホアプリではとにかく HTTPS を使え 2021)
- Guest Blog Post: Good First Steps to Find Security Bugs in Fenix (Part 2)
- Launching OSV - Better vulnerability triage for open source
- Dependency Confusion: How I Hacked Into Apple, Microsoft and Dozens of Other Companies
- 3 Ways to Mitigate Risk When Using Private Package Feeds
- Attacking Kubernetes clusters using the Kubelet API
- Defending Infrastructure as Code in GitHub Enterprise
- 🧰 Tools
- 💣 CVE
🗞️ 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
- https://groups.google.com/g/rubyonrails-security/c/ZzUqCh9vyhI
- https://hackerone.com/reports/1023899
Rails と PostgreSQL で Money 型を利用している場合に生じる Regex DoS 脆弱性。
CVE-2021-22881 : Possible Open Redirect in Host Authorization Middleware
- https://groups.google.com/g/rubyonrails-security/c/zN_3qA26l6E
- https://hackerone.com/reports/1047447
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
オプションに外部から任意の文字列を与えることができる場合に、任意コード実行につながる脆弱性。