- Let's Encryptは、オペレーティングシステムやネットワークインフラの多くがCやC++のような安全でない言語で書かれていることを懸念してきた
- CAソフトウェアはメモリ安全なGolangで書かれているが、OS/ネットワーク部分はメモリ安全性が不足しており、パッチが必要な脆弱性が日常的に発生している
- 2020年にProssimoプロジェクトを開始し、重要なソフトウェアインフラをメモリ安全にすることを目標としている
Prossimoプロジェクトの主な成果
- Rustls TLSライブラリ、Hickory DNS、Riverリバースプロキシ、sudo-rs、LinuxカーネルのRustサポート、ntpd-rsなど、さまざまなソフトウェアコンポーネントに投資してきた
- 最近、Let's EncryptインフラにProssimo初のメモリ安全なソフトウェアであるntpd-rsを展開した
ntpd-rsの重要性
- ほとんどのオペレーティングシステムは、正確な時刻を決定するためにネットワーク時刻プロトコル(NTP)を使用している
- 時刻管理はOSの重要な作業であり、インターネットと相互作用するため、NTP実装のセキュリティは重要である
- 2022年4月、Prossimoはメモリ安全でより安全なNTP実装であるntpd-rsの開発を開始した
- 2024年4月、ntpd-rsはLet's Encryptのステージング環境に展開され、現在は本番環境で使用されている
今後の計画
- 今後数年間で、Let's EncryptインフラにおけるCまたはC++製ソフトウェアをメモリ安全な代替へ置き換える計画
- OpenSSLとその派生製品をRustlsに置き換え。
- DNSソフトウェアをHickoryに置き換え。
- NginxをRiverに置き換え。
- sudoをsudo-rsに置き換え。
GN⁺の見解
- メモリ安全性の重要性: メモリ安全な言語で書かれたソフトウェアは、セキュリティ脆弱性を減らすうえで大きな助けとなる。
- Rustの利点: Rustはメモリ安全性を保証しつつ高い性能を提供するため、多くのセキュリティに敏感なソフトウェアに適している。
- コミュニティの役割: オープンソースプロジェクトではコミュニティの貢献が重要であり、Let's Encryptの場合も例外ではない。
- 技術導入時の考慮事項: 新しい技術を導入する際には、既存システムとの互換性や学習コストなどを考慮する必要がある。
- セキュリティ強化の必要性: インターネットインフラのセキュリティを強化することは、インターネット生態系全体の安全性向上に寄与する。
1件のコメント
Hacker Newsの意見