Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[Bug] Raise certifi >= 2026.10.19 and pip >= 26.2.2 to distrust the compromised eMudhra intermediates

オープン 初心者向け
#10,669 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@DOTBave がすでに取り組んでいます。

2026年10月21日 から。

  • #10670 @DOTBave による — オープン

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
72/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
docker, python
領域
devops, security

調査の方向性

まず pyproject.toml と requirements.txt で certifi と pip の最低バージョンを確認し、Docker イメージがこれらの依存関係をどのようにインストールするかを追ってください。最低バージョンを issue に記載された修正済みバージョンに引き上げ、クリーンインストールで certifi = 2026.10.19 と pip = 26.2.2 が解決されることを確認してください。修正を含めるには、古いイメージを再ビルドする必要があります。

索引モデルが issue の本文から書いたものです。

説明

bug
Description

AstrBot's declared minimum versions of certifi and pip are still vulnerable to the October 2026 eMudhra intermediate-CA compromise:

  • pyproject.toml / requirements.txt: certifi>=2025.4.26
  • pyproject.toml / requirements.txt: pip>=25.1.1

certifi versions before 2026.10.19 bundle the emSign ECC Root CA - G3 root. Eight eMudhra intermediate CAs chaining to that root had trivially recoverable P-384 private keys (d < 256), were revoked on 2026-10-18, and are blocked by browsers through OneCRL/CRLSet. Any client that trusts the root and does not enforce revocation can be MITM'd with a forged leaf certificate for an arbitrary hostname.

AstrBot loads the certifi bundle into its outbound SSL contexts (for example, runtime_bootstrap.py patches aiohttp's verified SSL context to the certifi-backed context, and io.py, zip_updater.py, plugin_service.py use certifi.where()). Plugin dependencies are installed with the in-process pip (pip_installer.py), and pip always adds its vendored certifi to certificate verification. With the current floors, environments can still resolve certifi < 2026.10.19 and pip < 26.2.2 (pip 26.2.2 is the first release that vendors certifi 2026.10.19).

Impact: an on-path attacker holding a compromised intermediate key can impersonate provider APIs (API keys and chat content) and plugin/update endpoints. Core, dashboard, and plugin ZIPs are downloaded over that TLS and executed after extraction, so the issue can escalate to code execution. Docker images built before 2026-10-19 keep the vulnerable certifi/pip baked in until rebuilt.

Reproduction Steps
  1. Install AstrBot v4.29.1 (or an older Docker image) in a clean environment.

  2. Check the resolved trust-store tooling:

    python -c "import certifi; print(certifi.__version__)"
    python -m pip --version
    

    Expected (fixed): certifi >= 2026.10.19 and pip >= 26.2.2.
    Affected environments report something like certifi 2026.7.22 and pip 26.2.1.

  3. Network-position check with the incident test host

    curl https://dv-g3b-emudhra.we-have-a-problem.com/
    

    A client with a vulnerable trust store completes the handshake; a fixed client returns a certificate error.

AstrBot Version

v4.29.1

Operating System

Linux

Deployment Method

Any

Message Platform Adapter

N/A

Error Log
No error is raised: the vulnerable trust store still validates a chain it should reject. Example from an affected environment:


$ python -c "import certifi; print(certifi.__version__)"
2026.7.22
$ python -m pip --version
pip 26.2.1 ...


A fixed environment reports `certifi 2026.10.19` and `pip 26.2.2`.
Supplementary Information

No response

Checklist
  • I have searched the Issue list for related issues and could not resolve the problem, or this issue has never been reported before.
  • I have tried disabling all plugins to rule out issues caused by plugins.
  • The issue I am reporting is related to AstrBot itself, not to a specific plugin.
  • I have read and agree to the project's Code of Conduct.
  • (Optional) I am willing to submit a PR to help fix this issue.
主要言語
Python
スター
42.1k
フォーク
3.1k
平均マージ
1日 2時間
マージ済み PR(30日)
146

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

AstrBotDevs/AstrBot のほかの issue

AstrBotDevs/AstrBot の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。