悪意のあるデバイスが接続されたときにコードが実行される libinput の脆弱性

Wayland および X.Org に基づく環境で入力デバイスからのイベントを処理する同じ手段を使用できるようにする統合入力スタックを提供する libinput 1.20.1 ライブラリは、脆弱性 (CVE-2022-1215) を排除しました。を使用すると、特別に変更/エミュレートされた入力デバイスをシステムに接続するときに、コードの実行を整理できます。 この問題は、X.Org および Wayland に基づく環境で発生し、デバイスをローカルに接続する場合と Bluetooth インターフェイスでデバイスを操作する場合の両方で悪用される可能性があります。 X サーバーが root として実行されている場合、この脆弱性により、昇格された特権でコードが実行される可能性があります。

この問題は、デバイスの接続情報をログに出力するコード内の行フォーマット エラーが原因で発生します。 特に、evdev_log_msg 関数は、snprintf の呼び出しを使用して、ログ エントリの元の形式文字列を変更し、デバイス名がプレフィックスとして追加されました。 次に、変更された文字列が log_msg_va 関数に渡され、次に printf 関数が使用されます。 したがって、フォーマット文字解析が適用された printf の最初の引数には検証されていない外部データが含まれており、攻撃者はデバイスに文字列フォーマット文字 (「Evil %s」など) を含む名前を返させることでスタック破損を引き起こす可能性があります。 。

出所: オープンネット.ru

コメントを追加します