XZバックドア: 時間、呪われた時間、そして詐欺
- 最近、xz/liblzma の tarball に隠されたバックドアが発見された。
- これは自由ソフトウェアのエコシステムにおける信頼に対する最大級の裏切りのひとつである可能性がある。
- バックドアは xz の長年のメンテナーである Jia Tan によって挿入されたと推定されている。
- Jia はメンテナーとして活動している間、比較的謎めいた人物のままであり、彼の実際の正体についてはほとんど知られていない。
- 自由ソフトウェア分野では匿名性は一般的に肯定的に受け止められるが、このケースでは、コミュニティの信頼を長年かけて築いた後にそれを悪用した人物が誰なのかを見極めることは興味深い。
- Jia の活動から得られるメタデータを通じて、彼についてさらに多くを知ることができる。
時間から何を学べるか?
- ソフトウェアが作られる条件について考えてみる。
- 時間のパターンが私たちに語ることの範囲は非常に広い。
- コードを書く人の中には仕事として行う人もいれば、趣味で行う人もいる。
- 地域によって異なる時間にコードを書く人もいる。
- 休日、睡眠スケジュール、ワークライフバランスなど、コードを書く行為もこうしたものから自由ではない。
- いつ誰かがコードを書いているのかを理解することは、なぜ、どこでコードを書いているのかを理解する助けになる。
Jia のコミット分析
- JiaT75 の XZ リポジトリに対するコミットとタイムスタンプの分析を実施。
- Git のタイムスタンプは好きなように変更できるが、もっともらしく時間データを操作するのは実際には難しい。
- 実際の時刻を変えるより、タイムゾーンだけを変更するほうが簡単である。
- Jia Tan は人々に自分をアジア人、特に中国人だと思わせたかったとみられ、彼のコミットの大半(440件)は UTC+08 のタイムスタンプを持っている。
- しかし実際には、UTC+02(冬)/UTC+03(サマータイム)のタイムゾーンにあるどこかから来たと推定される。
- ときどきタイムゾーンを変更し忘れたことがあり、これは東ヨーロッパのサマータイム切り替えと一致する。
- Jia の作業スケジュールと休日は、中国人よりも東ヨーロッパの人によりよく当てはまるように見える。
GN⁺の意見
- この記事は、ソフトウェア開発コミュニティにおける信頼と匿名性の重要性について興味深い事例を提示している。
- バックドアのようなセキュリティ脅威はオープンソースプロジェクトの信頼性に大きな打撃を与えうるものであり、これは開発者がコードレビューとセキュリティ監査により多くの注意を払うべきことを意味する。
- このような事件は、開発者にコミットログとメタデータの重要性を思い出させる。信頼できる貢献者の身元を確認することが、プロジェクトの安全のために不可欠な場合がある。
- 類似の機能を提供する他のオープンソースプロジェクトとしては GitLab、GitHub などがあり、これらはコミュニティの信頼を維持するためにセキュリティプロトコルとユーザー認証を強化している。
- この記事は、技術コミュニティの中で匿名性と信頼のあいだのバランスを見つけることがいかに重要かを示している。プロジェクト管理者と貢献者はこのような事件から学び、コードの透明性とセキュリティを強化するための措置を取るべきである。
1件のコメント
Hacker Newsの意見
1つ目のコメント要約:
2つ目のコメント要約:
3つ目のコメント要約:
gcコマンドをTZ=UTC0 git commitにマッピングして使っているという。4つ目のコメント要約:
5つ目のコメント要約:
6つ目のコメント要約:
7つ目のコメント要約:
8つ目のコメント要約:
9つ目のコメント要約: