しばらく前に、3.2.10カーネルを使用して組み込みプロジェクトを開始しました。プロジェクトは本番段階にあり、安定したカーネルは3.2.16です。非互換性を避けるために何もアップグレードしたくありませんが、重要なセキュリティホールが3.2.10から3.2.16に解決された場合はアップグレードする必要があります。
2つのバージョン間でセキュリティホールが修正されたことをどこで確認できますか? kernel.orgのような明白な場所では答えが見つかりませんでした。
答え1
MITREに行って見てください一般的な脆弱性と暴露。検索ページはここ。 「Linuxカーネル」を検索してたくさん見つけましたが、3.2がすでに出てきた2012年に出てきたのはたった一つだけでしたね。私はLinuxカーネルの開発に厳密に従うことはありませんが、Linuxカーネル開発者の態度は、ほとんどの「セキュリティホール」を安定性のバグまたは同様のものとして扱うことです。
答え2
ほとんどのカーネルセキュリティ問題は、奇妙なモジュールやほとんど使用されていないモジュールをロードしなければ悪用される可能性があります。 (私は過去2年間、LinuxカーネルCVEに細心の注意を払ってきましたが、これは確かにそうです。)
モジュール例:
- IPX
- リンゴの物語
- IPv6(驚くべきことではありませんが、多くの機能があります)
- USB/ISDNカード
したがって、安全を確保するための最も簡単な方法は、ホットスワッピングおよび/または自動モジュールローディングを無効にすることです。これは組み込みシステムでは簡単です。
それ以外にも、アップデートが何をしているのかわからない。ほとんどのCVEは、新機能を提供する新しいモジュールを中心に行われます。
GLibCは深刻なセキュリティ問題を抱えているもう一つの候補です。したがって、組み込みシステムがシェルを許可している場合、遅かれ早かれ、攻撃者はルートになります。