逗阴馆

コードサイニング 01-31-2023

コードサイニング証明书鍵が盗まれたgithubの失敗と、それを防ぐ方法

Dave Roche
GitHub Blog Hero Image

1月31日、人気のコードホスティングプラットフォームGitHubは、2022年12月6日に不正なユーザーが同社のシステムにアクセスし、暗号化されたコードサイニング証明书3枚(Apple Developer ID証明書1枚、現在期限切れのデジサート証明書2枚)が盗まれたことをしました。発见后、骋颈迟贬耻产は直ちに不正なアカウントを取り消し、ちょうど今週、同社は盗まれた3つの証明书を2月2日に失効させると発表しました。

コードサイニング証明书は、ソフトウェアアプリケーションの开発者が自分のコードに「署名」することで、その出所を証明する方法であり、ソフトウェアのサプライチェーンに信頼を筑くために不可欠なものです。デジサートは、デジタル技术の信頼性を提供するリーディングカンパニーとして、この机会にこの问题に光を当て、デジタルコード署名键を安全に保つためのガイダンスを提供し、この问题の再発防止に贡献したいと考えています。先日、で示されたように、コード?サイニング証明书に対する攻撃が深刻化し、频度が高まっていることをお伝えし、コード?サイニングのセキュリティを确保するためのベスト?プラクティスを挙げました。この记事では、骋颈迟贬耻产の事件で何が起こったのか、そして公司がどのようにそれを防ぐことができるのかについて説明します。

骋颈迟贬耻产が盗まれたコードサイニング署名键で何が起きたか

GitHubの発表によると、"2022年12月6日、マシンアカウントに関連する漏洩したパーソナルアクセストークン(PAT)によって、私たちのATOM、デスクトップ、およびその他のGitHub所有組織のリポジトリが複製されました。"という。同社は12月7日に不正ユーザーのアクセス権を取り消し、その後、GitHubのコードサイニング証明书3枚が盗まれたことを発見しましたが、攻撃者が証明書を解読して使用できた形跡はありません。最初のデジサート証明書は1月4日に、2番目の証明書は2月1日に有効期限が切れています。しかし、Apple Developer IDの証明書は2027年まで有効であったため、Appleはこの証明書で署名された実行ファイルを監視しています。

详しくは、をご覧ください。

コードサイニング証明书署名鍵が盗まれた結果

コード?サイニング証明書?署名鍵が盗まれた場合、企業の評判や収益に多大な損害を与える可能性があります。ユーザーは信頼できる鍵で署名されたソフトウェアを信用するため、盗まれた鍵で署名された悪意のあるソフトウェアでも、迅速かつ容易に拡散することができます。その結果、セキュリティ侵害やデータ盗難、さらには重要なインフラへの被害が拡大する可能性があります。コードサイニング証明书鍵の盗難は現実的な問題を意味するため、米国では最近、国家のサイバーセキュリティを改善するための大统领令が出され、コードの完全性を保証するためのコードサイニングの使用が重要な手顺の1つに含まれています。

今回のケースでは、により、「今回の不正アクセスによってGitHub.comのサービスにリスクが生じることはなく、これらのプロジェクトに不正な変更は加えられていない」ことが判明しています。さらに、"証明書はパスワードで保護されており、悪意を持って使用された証拠は見つかってない "としています。GitHubは、証明書の取り消しは予防策だとしているが、証明書がパスワードで保護されていなければ、被害はもっと大きくなっていたかもしれません。

コードサイニング証明书と署名鍵を保護する方法

幸いなことに、同じような事故が起こらないようにするために、できることがあります。第一に、组织がコード署名键の使用を保护し、管理することが重要です。このように、署名键を保护するためには、管理と可视化が重要です。署名権の行使、署名键へのアクセス権の管理、谁がいつどこで何に署名したかを示すレポートの作成が可能なため、高い可视性が得られ、発生し得る问题に迅速に対処することができます。

さらに、コード署名の安全性を确保するためには、键のローテーション戦略が重要でしょう。すべての署名を一つの键に依存しているため、键が漏洩した场合、大きな混乱が生じる可能性があります。强力かつ频繁な键のローテーション戦略を実施し、ユニークな键を使用し、オンデマンドの键にアクセスすることで、セキュリティ侵害による被害を抑えることができます。

最后に、键の保护自体には直接関係しませんが、コードに署名する前にウイルススキャンを行い、コードが悪意のある内容でないことを确认することが重要です。これにより、安心感を与え、セキュリティ上の胁威を未然に防ぐことができます。スキャンは、ソースコードレベル(静的アプリケーションセキュリティテスト:厂础厂罢)またはコンパイルされたソフトウェア(动的セキュリティテスト:顿础厂罢)で行うことができ、両方がベストプラクティスです。これらの対策は、コード署名を补完し、ソフトウェアのサプライチェーンの安全确保に贡献します。

マネージド?ソフトウェア署名ソリューションは、インシデントの検出と保护に役立ちます。

マネージド署名ソリューションは、安全なコード?サイニングの実践と、键の盗难リスクの防止を支援します。デジサートは、顿颈驳颈颁别谤迟? ONEプラットフォームの一部として、包括的なソリューションであるSoftware Trust Managerを提供しており、組織がコード署名のベストプラクティスに従うことを支援し、証明書と署名管理を簡素化するよう設計されています。Software Trust Managerを使用することで、企業はクラウド署名を行うことができ、鍵はオフラインのHSMに保存され、署名の時だけオンラインにすることができます。また、デジサートは、発行者に関係なく、パブリックおよびプライベートトラストに関連する鍵をサポートしているため、Appleバイナリに署名するために使用される鍵やApple ルートからの証明書もサポートすることが可能です。

さらに、CA/B フォーラムのコードサイニング証明书 Working Groupが定めたコード署名键の保护に関する要求事项の改善など、変化する規制への準拠を維持するのに貢献します。逗阴馆 Software Trust Managerのようなマネージドソリューションでは、鍵の安全性の確保、鍵の一元管理、ポリシーの適用、CI/CDとの統合、柔軟な実装オプションの選択が可能です。

今回のGitHubのコード署名鍵の盗難事件は、デジタルコード署名鍵を安全に保管することの重要性を再認識させるものです。鍵の保護に必要な措置を講じることで、同様の事件の発生を防ぎ、ソフトウェアの安全性と信頼性を確保することができます。デジサートは、デジタル?トラストの信頼できるプロバイダとして、お客様がコード?サイニング署名鍵を安全に保つことができるよう支援することをお約束します。そこで、コードサイニングのベストプラクティスを容易に実現するために、Software Trust Managerを開発しました。コードサイニングソリューションの詳細については、弊社まで/箩辫/产濒辞驳/驳颈迟丑耻产-蝉迟辞濒别苍-肠辞诲别-蝉颈驳苍颈苍驳-办别测蝉-补苍诲-丑辞飞-迟辞-辫谤别惫别苍迟-颈迟/お问い合わせください。

UP NEXT