グレッグ・クロア-ハートマン、 Linuxカーネルの安定したブランチを維持する責任があるのは誰ですか それを知らせた 私は数日間飲んでいます ミネソタ大学からLinuxカーネルへの変更を拒否する決定、および以前に受け入れたすべてのパッチを元に戻し、それらを再チェックします。
封鎖の理由は研究グループの活動でした このグループはさまざまなタイプのエラーを含むパッチを送信しているため、オープンソースプロジェクトのコードに隠された脆弱性を促進する可能性を研究しています。
ポインタを使用する状況を考えると、それは意味がなく、パッチ提出の目的は、誤った変更がカーネル開発者のレビューに合格するかどうかを調査することでした。
このパッチに加えて、 ミネソタ大学の開発者は、カーネルに疑わしい変更を加える他の試みを行ってきました。、隠れた脆弱性の追加に関連するものを含みます。
パッチを送信した寄稿者は自分自身を正当化しようとしました 新しい静的アナライザーをテストし、そのテスト結果に基づいて変更を準備しました。
しかし グレッグは、提案された修正が典型的ではないという事実に注意を向けました 静的アナライザーによって検出されたエラーの 送信されたパッチは何も解決しません。 問題の研究者のグループは、過去に隠れた脆弱性を備えたソリューションの導入をすでに試みているため、カーネル開発コミュニティで実験を続けていることは明らかです。
興味深いことに、過去に、実験グループのリーダーは、USBスタック(CVE-2016-4482)やネットワーク(CVE-2016-4485)での情報漏えいなど、正当な脆弱性の修正に関与してきました。
ミネソタ大学のチームは、隠れた脆弱性の伝播に関する研究で、2019年にカーネルに受け入れられたパッチによって引き起こされたCVE-12819-2014の脆弱性の例を挙げています。このソリューションは、エラー処理のブロックにput_device呼び出しを追加しました。 mdio_busにありますが、XNUMX年後、そのような操作により、メモリブロックへの解放後使用アクセスが発生することが明らかになりました。
同時に、研究の著者は、彼らの研究において、エラーを導入するが研究参加者とは関係のない138のパッチに関するデータを要約したと主張している。
独自のバグパッチを送信する試みは、メールでのやり取りに限定されていました そして、そのような変更はどのカーネルブランチのGitコミットステージにも到達しませんでした(パッチを電子メールで送信した後、メンテナがパッチが正常であると判断した場合、エラーがあるため変更を含めないように求められました。その後、正しいパッチが出荷されました)。
また、批判された修正の作者の活動から判断すると、彼は長い間さまざまなカーネルサブシステムにパッチを適用してきました。 たとえば、radeonおよびnouveauドライバーは、最近pm_runtime_put_autosuspend(dev-> dev)ブロックエラーへの変更を採用しました。これにより、関連するメモリを解放した後にバッファーが使用される可能性があります。
また、 グレッグは190の関連するコミットをロールバックし、新しいレビューを開始しました。 問題は、@ umn.eduの寄稿者が疑わしいパッチの宣伝を試みただけでなく、実際の脆弱性も修正し、変更をロールバックすると、以前に修正されたセキュリティ問題が再発する可能性があることです。 一部のメンテナは、行われていない変更をすでに再確認し、問題を発見していませんが、バグパッチもありました。
ミネソタ大学コンピュータサイエンス学部 声明を発表 この分野での調査の停止を発表し、 使用された方法の検証を開始し、調査がどのように承認されたかについて調査を実施します。 結果レポートはコミュニティと共有されます。
最後に、グレッグは、コミュニティからの反応を観察し、レビュープロセスをだます方法を模索するプロセスも考慮に入れていると述べています。 グレッグの意見では、有害な変化を導入するためにそのような実験を行うことは容認できず、非倫理的です。