kernel-5.14.0-427.13.1.el9_4
エラータID: AXSA:2024-8139:13
以下項目について対処しました。
[Security Fix]
- Bluetooth BR/EDR の PIN コードのペアリング手順には、
PIN コードを把握していないくてもペアリングできてしまう
問題があるため、Bluetooth 通信の可能な範囲にいる攻撃者
により、細工された Bluetooth デバイスアドレスを持つ機器
からの通信を介して、認証の迂回を可能とする脆弱性が存在
します。(CVE-2020-26555)
- fs/locks.c の filelock_init() 関数には、memcg が POSIX
ファイルロック数を制限していないことに起因して意図
しないメモリを確保してしまう問題があるため、ローカル
の攻撃者により、サービス拒否攻撃 (メモリ枯渇) を可能
とする脆弱性が存在します。(CVE-2022-0480)
- vmwgfx ドライバーの drivers/gpu/vmxgfx/vmxgfx_execbuf.c
の vmw_cmd_dx_define_query() 関数には、NULL ポインタ
デリファレンスの問題があるため、ローカルの攻撃者により、
/dev/dri/renderD128 などのデバイスファイルの利用を介して、
サービス拒否攻撃を可能とする脆弱性が存在します。
(CVE-2022-38096)
- Bluetooth スタックの net/bluetooth/l2cap_core.c の
l2cap_config_req() 関数には、整数オーバーフローの問題
があるため、Bluetooth 通信が可能な近隣の攻撃者により、
細工された L2CAP_CONF_REQ パケットを介して、
サービス拒否攻撃 (クラッシュの発生) を可能とする脆弱性
が存在します。(CVE-2022-45934)
- Bluetooth コア仕様のセキュアシンプルペアリング機能
およびセキュアコネクションペアリング機能をサポート
した Bluetooth BR/EDR デバイスには、短いキーを強制
する中間者攻撃を許容してしまう問題があるため、
Bluetooth による通信が可能な範囲内の攻撃者により、
暗号化キーの漏洩、およびライブインジェクション攻撃
を可能とする脆弱性が存在します。(CVE-2023-24023)
- Intel 社製イーサネットコントローラ RDMA ドライバには、
不適切なアクセス制御の問題があるため、リモートの認証
されていない攻撃者により、ネットワークアクセスを介して、
特権昇格を可能とする脆弱性が存在します。
(CVE-2023-25775)
- net/bluetooth/hci_conn.c の hci_conn_cleanup() 関数には、
hci_dev_put() 関数および hci_conn_put() 関数を呼び出す際に
メモリ領域を二重解放してしまう問題があるため、ローカル
の攻撃者により、特権昇格もしくはクラッシュの発生に起因
するサービス拒否攻撃を可能とする脆弱性が存在します。
(CVE-2023-28464)
- net/bluetooth/hci_sync.c には、メモリ領域の範囲外アクセス
の問題があるため、リモートの攻撃者により、情報の漏洩を
可能とする脆弱性が存在します。(CVE-2023-28866)
- drivers/bluetooth/hci_ldisc.c の hci_uart_tty_ioctl() 関数には、
HCIUARTSETPROTO および HCIUARTGETPROTO 間の
レースコンディションに起因する NULL ポインタデリファレンス
の問題があるため、ローカルの攻撃者により、hu->proto 変数
を設定する前に HCI_UART_PROTO_SET を設定することを
介して、クラッシュの発生やこれに起因するサービス拒否
攻撃を可能とする脆弱性が存在します。(CVE-2023-31083)
- 仮想コンソール機能を実装している drivers/tty/vt/vc_screen.c
の vcs_read() 関数には、メモリ領域の解放後利用の問題が
あるため、ローカルの攻撃者により、情報の漏洩やサービス
拒否攻撃 (クラッシュの発生) を可能とする脆弱性が存在
します。(CVE-2023-3567)
- USB サブシステムの drivers/usb/core/sysfs.c の
read_descriptors() 関数には、メモリ領域の範囲外読み取りの
問題があるため、物理的にマシンの操作が可能な攻撃者により、
細工された USB デバイスを介して、サービス拒否攻撃
(クラッシュの発生) を可能とする脆弱性が存在します。
(CVE-2023-37453)
- Netfilter サブシステムの nfnl_osf_add_callback() 関数には、
opt_num フィールドの評価処理の欠落に起因したメモリ領域
の範囲外読み取りの問題があるため、CAP_NET_ADMIN 権限
を持つローカルの攻撃者により、情報の漏洩、およびサービス
拒否攻撃 (クラッシュの発生) を可能とする脆弱性が存在します。
(CVE-2023-39189)
- Netfilter サブシステムの sctp_mt_check() 関数には、
xt_sctp_info 構造体の flag_count メンバの評価処理の欠落
に起因したメモリ領域の範囲外読み取りの問題があるため、
CAP_NET_ADMIN 権限を持つローカルの攻撃者により、
情報の漏洩、およびサービス拒否攻撃 (クラッシュの発生)
を可能とする脆弱性が存在します。(CVE-2023-39193)
- XFRM サブシステムのステートフィルター処理には、
メモリ領域の範囲外読み取りの問題があるため、
CAP_NET_ADMIN 権限を持つローカルの攻撃者により、
情報の漏洩を可能とする脆弱性が存在します。
(CVE-2023-39194)
- QXL ドライバーの qxl_mode_dumb_create() 関数には、
qxl_gem_object_create_with_handle() 関数から取得した
qobj ポインタを保持し続けてしまうことに起因したメモリ
領域の解放後利用の問題があるため、ローカルの攻撃者に
より、権限の昇格、およびサービス拒否攻撃を可能とする
脆弱性が存在します。(CVE-2023-39198)
- cxgb4 ドライバには、メモリ領域の解放後利用の問題が
あるため、ローカルの攻撃者により、サービス拒否攻撃
(クラッシュの発生) を可能とする脆弱性が存在します。
(CVE-2023-4133)
- IPv4 スタックには、NULL ポインタデリファレンスの問題
があるため、CAP_NET_ADMIN 権限を持つローカルの攻撃者
により、IPVS を利用したパケットの再ルーティング処理を
介して、サービス拒否攻撃 (クラッシュの発生) を可能とする
脆弱性が存在します。(CVE-2023-42754)
- Netfilter サブシステムの __ip_set_put() 関数には、
IPSET_CMD_ADD と IPSET_CMD_SWAP 間のレース
コンディションの問題があるため、ローカルの攻撃者により、
誤った set 引数を指定した当該関数の呼び出しを介して、
サービス拒否攻撃 (クラッシュの発生) を可能とする脆弱性
が存在します。(CVE-2023-42756)
- lib/kobject.c には、レースコンディションの問題があるため、
特権を持つ攻撃者により、カーネルモジュールのロードなど
を介して、サービス拒否攻撃や特権昇格を可能とする脆弱性
が存在します。(CVE-2023-45863)
- io_uring/fdinfo.c の io_uring_show_fdinfo() 関数には、レース
コンディションに起因する NULL ポインタデリファレンスの
問題があるため、ローカルの攻撃者により、SQ スレッドの
終了を介して、サービス拒否攻撃 (クラッシュの発生) を可能
とする脆弱性が存在します。(CVE-2023-46862)
- DRI サブシステムの drivers/gpu/drm/drm_atomic.c には、
ノンブロックかつアトミックなメモリ領域への書き込み処理
とドライバーのアンロード処理間のレースコンディション
に起因したメモリ領域の解放後利用の問題があるため、
ローカルの攻撃者により、特権昇格、およびサービス拒否
攻撃 (クラッシュの発生) を可能とする脆弱性が存在します。
(CVE-2023-51043)
- Bluetooth サブシステムには、bt_sock_recvmsg() 関数と
bt_sock_ioctl() 関数間のレースコンディションに起因する
ソケットバッファー領域の解放後利用の問題があるため、
ローカルの攻撃者により、任意のコードの実行、および
サービス拒否攻撃を可能とする脆弱性が存在します。
(CVE-2023-51779)
- ATM ネットワークドライバーの net/atm/ioctl.c の
do_vcc_ioctl() 関数には、レースコンディションに起因する
メモリ領域の解放後利用の問題があるため、ローカルの攻撃者
により、特権昇格、およびサービス拒否攻撃 (クラッシュの
発生) を可能とする脆弱性が存在します。(CVE-2023-51780)
- SMB クライアント機能の smb2_parse_contexts() 関数には、
作成したコンテキストのポインタを設定する前にそのポインタ
変数を利用してオフセットとサイズのチェック処理を実行して
しまう問題があるため、近隣ネットワーク上の攻撃者により、
情報の漏洩、およびサービス拒否攻撃を可能とする脆弱性が
存在します。(CVE-2023-52434)
- gfs2 ドライバーの gfs2_rgrp_dump() 関数には、NULL
ポインタデリファレンスの問題があるため、ローカルの攻撃者
により、サービス拒否攻撃を可能とする脆弱性が存在します。
(CVE-2023-52448)
- arch/x86/events/utils.c の branch_type() 関数には、ローカルの
攻撃者より、LBR サンプリングが有効化されている環境下での
vsyscall の実行を介して、サービス拒否攻撃を可能とする脆弱性
が存在します。(CVE-2023-52476)
- メモリ管理サブシステムには、NULL ポインタデリファレンス
の問題があるため、ローカルの攻撃者により、サービス拒否攻撃
(カーネルパニックの発生) を可能とする脆弱性が存在します。
(CVE-2023-52489)
- net/core/neighbour.c には、リストから RCU で保護された項目を
削除する際の処理が欠落しているため、ローカルの攻撃者により、
サービス拒否攻撃を可能とする脆弱性が存在します。
(CVE-2023-52522)
HID ドライバーの drivers/hid/hid-sony.c には、エラー発生時の
usb_free_urb() 関数の呼び出しが欠落している問題があるため、
ローカルの攻撃者により、サービス拒否攻撃を可能とする脆弱性
が存在します。(CVE-2023-52529)
- チーミングドライバーには、NULL ポインタデリファレンスの
問題があるため、ローカルの攻撃者により、対象とするデバイス
のタイプをイーサネット以外からイーサネットに変更することを
介して、サービス拒否攻撃を可能とする脆弱性が存在します。
(CVE-2023-52574)
- ネットワークブリッジの br_handle_frame_finish() 関数には、
レースコンディションの問題があるため、ローカルの攻撃者に
より、サービス拒否攻撃を可能とする脆弱性が存在します。
(CVE-2023-52578)
- net/core/flow_dissector.c の __skb_flow_dissect() 関数 には、
データサイズの計算処理に問題があるため、ローカルの攻撃者
により、サービス拒否攻撃 (クラッシュの発生) を可能とする
脆弱性が存在します。(CVE-2023-52580)
- Netfilter サブシステムの net/netfilter/nf_tables_api.c には、
メモリリークの問題があるため、ローカルの攻撃者より、
サービス拒否攻撃を可能とする脆弱性が存在します。
(CVE-2023-52581)
- ネットワークスケジューラーには、フラグメント化された
パケットが順序どおりに受信できない場合、最後のフラグメント
の参照フラグが解除されず、結果としてすべてのフラグメント
のバッファ領域が解放されない問題があるため、リモートの
攻撃者により、細工されたパケットの送信を介して、サービス
拒否攻撃を可能とする脆弱性が存在します。(CVE-2023-52610)
- netfilterサブシステムの net/netfilter/nf_tables_api.c の
nf_tables_newset()関数 には、ユーザースペースからの匿名的
なタイムアウトを許容できてしまう問題があるため、ローカル
の攻撃者によりサービス拒否攻撃を可能とする脆弱性が存在
します。(CVE-2023-52620)
- Netfilter コンポーネントの nf_tables_newtable() 関数には、
メモリ領域の範囲外読み取りの問題があるため、ローカルの
攻撃者により、細工された新規の Netfilter テーブルの作成を
介して、情報の漏洩、およびサービス拒否攻撃を可能とする
脆弱性が存在します。(CVE-2023-6040)
- NVMe-oF/TCP サブシステムには、メモリ領域の範囲外読み
取り、およびヒープ領域のバッファーオーバーフローの問題
があるため、リモートの攻撃者により、細工された TCP
パケットの送信を介して、情報の漏洩 (kmalloc() 関数で確保
されたメモリのカーネルリングバッファへの漏洩) を可能と
する脆弱性が存在します。(CVE-2023-6121)
- scatterwalk 暗号アルゴリズムの API には、特定のソケット
の設定下における NULL ポインタデリファレンスの問題がある
ため、ローカルの攻撃者により、細工されたパケットを介して、
特権昇格、およびサービス拒否攻撃 (クラッシュの発生) を可能
とする脆弱性が存在します。(CVE-2023-6176)
- UNIX ガベージコレクターには、レースコンディションに起因
するメモリ領域の解放後利用の問題があるため、ローカルの
攻撃者により、SKB データがキューイングされているソケット
に対して unix_stream_read_generic() 関数を実行することを
介して、情報の漏洩、およびサービス拒否攻撃などを可能と
する脆弱性が存在します。(CVE-2023-6531)
- GSM 0710 tty マルチプレクサーには、レースコンディション
に起因するメモリ領域の解放後利用の問題があるため、ローカル
の攻撃者により、GSM 回線が有効化されている TTY ファイル
ディスクリプターに対して 2 つのスレッドから
GSMIOC_SETCONF を指定した ioctl(2) システムコールを実行
することを介して、特権昇格を可能とする脆弱性が存在します。
(CVE-2023-6546)
- nf_tables の net/netfilter/nft_dynset.c の nft_dynset_init()
関数には、NULL ポインタデリファレンスの問題があるため、
CAP_NET_ADMIN 権限を持つローカルの攻撃者により、
サービス拒否攻撃を可能とする脆弱性が存在します。
(CVE-2023-6622)
- lib/idr.c の ida_free() 関数には、NULL ポインタデリファレンス
の問題があるため、リモートの攻撃者により、サービス拒否攻撃
を可能とする脆弱性が存在します。(CVE-2023-6915)
- パフォーマンスイベントシステムコンポーネントには、
perf_event 構造体の read_size メンバーのオーバーフローに
起因するヒープ領域の範囲外書き込みの問題があるため、
ローカルの攻撃者により、特権昇格、任意のコードの実行、
およびサービス拒否攻撃 (クラッシュの発生) を可能とする
脆弱性が存在します。(CVE-2023-6931)
- インターネットグループ管理プロトコル (IGMP) の実装には、
レースコンディションに起因するメモリ領域の解放後利用の
問題があるため、ローカルの攻撃者により、特権昇格、情報
の漏洩、およびサービス拒否攻撃 (クラッシュの発生) を可能
とする脆弱性が存在します。(CVE-2023-6932)
- SMB クライアントサブコンポーネントの
fs/smb/client/smb2ops.c の receive_encrypted_standard() 関数
には、整数アンダーフローに起因するメモリ領域の範囲外読み
取りの問題があるため、近隣ネットワーク上の攻撃者により、
サービス拒否攻撃を可能とする脆弱性が存在します。
(CVE-2024-0565)
- HugeTLS ページ処理機能の hugetlbfs_fill_super() 関数には、
NULL ポインタデリファレンスの問題があるため、ローカルの
攻撃者により、特権昇格、およびサービス拒否攻撃 (クラッシュ
の発生) を可能とする脆弱性が存在します。(CVE-2024-0841)
- Netfilter サブシステムの nft_selem_catchall_deactivate() 関数
には、キャッチオールセットの解放処理におけるチェックの不備
に起因したメモリ領域の二重解放の問題があるため、ローカル
の攻撃者により、特権昇格を可能とする脆弱性が存在します。
(CVE-2024-1085)
- Netfilter サブシステムの nf_hook_slow() 関数には、
nft_verdict_init() 関数の処理の不備に起因したメモリ領域の
二重解放の問題があるため、ローカルの攻撃者により、特権昇格
を可能とする脆弱性が存在します。(CVE-2024-1086)
- TLS サブシステムの tls_decrypt_sg() 関数には、メモリ領域の
解放後利用の問題があるため、ローカルの攻撃者により、任意
のコードの実行、およびサービス拒否攻撃を可能とする脆弱性
が存在します。(CVE-2024-26582)
- TLS サブシステムには、非同期暗号化ハンドラーが complete()
関数を呼び出した際に recvmsg(2) システムコールおよび
sendmsg(2) システムコールの実行スレッドがすぐに終了して
しまう問題に起因したレースコンディションの問題があるため、
ローカルの攻撃者により、サービス拒否攻撃を可能とする脆弱性
が存在します。(CVE-2024-26583)
- TLS サブシステムの crypto_aead_encrypt() 関数および
crypto_aead_decrypt() 関数には、
CRYPTO_TFM_REQ_MAY_BACKLOG フラグを指定して実行
した場合、EINPROGRESS の代わりに誤って EBUSY を返して
しまう問題があるため、ローカルの攻撃者により、cryptd のキュー
が溢れる状況下でのこれらの関数の呼び出しを介して、サービス
拒否攻撃、および影響を特定できない未定義の動作を可能とする
脆弱性が存在します。(CVE-2024-26584)
- TLS サブシステムの非同期暗号化ハンドラーには、内部で
complete() 関数を呼び出した際に recvmsg(2) システムコール
および sendmsg(2) システムコールの実行スレッドを意図せず
終了してしまう問題があるため、ローカルの攻撃者により、
サービス拒否攻撃、および影響を特定できない未定義の動作を
可能とする脆弱性が存在します。(CVE-2024-26585)
- mlxsw ドライバーの
drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_tcam.c には、
ACL グループの要素数が 16 を超えている場合においてスタック
領域を破壊してしまう問題があるため、ローカルの攻撃者により、
任意のコードの実行、およびサービス拒否攻撃などを可能とする
脆弱性が存在します。(CVE-2024-26586)
- i801 I2C デバイスドライバーには、ブロックバッファー
インデックスを 2 回リセットすべきところ 1 回しかリセットして
いない問題があるため、ローカルの攻撃者により、サービス拒否
攻撃を可能とする脆弱性が存在します。(CVE-2024-26593)
- membarrier には、想定以上にスレッドが並列動作してしまう
問題があるため、ローカルの攻撃者により、サービス拒否攻撃
(CPU リソースの枯渇) を可能とする脆弱性が存在します。
(CVE-2024-26602)
- Netfilter サブシステムの net/netfilter/nf_tables_api.c の
nft_verdict_init() 関数には、メモリ領域の解放後利用の問題が
あるため、ローカルの攻撃者により、サービス拒否攻撃を可能
とする脆弱性が存在します。(CVE-2024-26609)
- IPv6 スタックのトンネル機能の ip6_tnl_parse_tlv_enc_lim()
関数には、NEXTHDR_FRAGMENT を指定した際の処理に問題
があるため、ローカルの攻撃者により、サービス拒否攻撃を可能
とする脆弱性が存在します。(CVE-2024-26633)
パッケージをアップデートしてください。
Bluetooth legacy BR/EDR PIN code pairing in Bluetooth Core Specification 1.0B through 5.2 may permit an unauthenticated nearby device to spoof the BD_ADDR of the peer device to complete pairing without knowledge of the PIN.
A flaw was found in the filelock_init in fs/locks.c function in the Linux kernel. This issue can lead to host memory exhaustion due to memcg not limiting the number of Portable Operating System Interface (POSIX) file locks.
A NULL pointer dereference vulnerability was found in vmwgfx driver in drivers/gpu/vmxgfx/vmxgfx_execbuf.c in GPU component of Linux kernel with device file '/dev/dri/renderD128 (or Dxxx)'. This flaw allows a local attacker with a user account on the system to gain privilege, causing a denial of service(DoS).
An issue was discovered in the Linux kernel through 6.0.10. l2cap_config_req in net/bluetooth/l2cap_core.c has an integer wraparound via L2CAP_CONF_REQ packets.
Bluetooth BR/EDR devices with Secure Simple Pairing and Secure Connections pairing in Bluetooth Core Specification 4.2 through 5.4 allow certain man-in-the-middle attacks that force a short key length, and might lead to discovery of the encryption key and live injection, aka BLUFFS.
Improper access control in the Intel(R) Ethernet Controller RDMA driver for linux before version 1.9.30 may allow an unauthenticated user to potentially enable escalation of privilege via network access.
hci_conn_cleanup in net/bluetooth/hci_conn.c in the Linux kernel through 6.2.9 has a use-after-free (observed in hci_conn_hash_flush) because of calls to hci_dev_put and hci_conn_put. There is a double free that may lead to privilege escalation.
In the Linux kernel through 6.2.8, net/bluetooth/hci_sync.c allows out-of-bounds access because amp_init1[] and amp_init2[] are supposed to have an intentionally invalid element, but do not.
An issue was discovered in drivers/bluetooth/hci_ldisc.c in the Linux kernel 6.2. In hci_uart_tty_ioctl, there is a race condition between HCIUARTSETPROTO and HCIUARTGETPROTO. HCI_UART_PROTO_SET is set before hu->proto is set. A NULL pointer dereference may occur.
A use-after-free flaw was found in vcs_read in drivers/tty/vt/vc_screen.c in vc_screen in the Linux Kernel. This issue may allow an attacker with local user access to cause a system crash or leak internal kernel information.
An issue was discovered in the USB subsystem in the Linux kernel through 6.4.2. There is an out-of-bounds and crash in read_descriptors in drivers/usb/core/sysfs.c.
A flaw was found in the Netfilter subsystem in the Linux kernel. The nfnl_osf_add_callback function did not validate the user mode controlled opt_num field. This flaw allows a local privileged (CAP_NET_ADMIN) attacker to trigger an out-of-bounds read, leading to a crash or information disclosure.
A flaw was found in the Netfilter subsystem in the Linux kernel. The sctp_mt_check did not validate the flag_count field. This flaw allows a local privileged (CAP_NET_ADMIN) attacker to trigger an out-of-bounds read, leading to a crash or information disclosure.
A flaw was found in the XFRM subsystem in the Linux kernel. The specific flaw exists within the processing of state filters, which can result in a read past the end of an allocated buffer. This flaw allows a local privileged (CAP_NET_ADMIN) attacker to trigger an out-of-bounds read, potentially leading to an information disclosure.
A race condition was found in the QXL driver in the Linux kernel. The qxl_mode_dumb_create() function dereferences the qobj returned by the qxl_gem_object_create_with_handle(), but the handle is the only one holding a reference to it. This flaw allows an attacker to guess the returned handle value and trigger a use-after-free issue, potentially leading to a denial of service or privilege escalation.
A use-after-free vulnerability was found in the cxgb4 driver in the Linux kernel. The bug occurs when the cxgb4 device is detaching due to a possible rearming of the flower_stats_timer from the work queue. This flaw allows a local user to crash the system, causing a denial of service condition.
A NULL pointer dereference flaw was found in the Linux kernel ipv4 stack. The socket buffer (skb) was assumed to be associated with a device before calling __ip_options_compile, which is not always the case if the skb is re-routed by ipvs. This issue may allow a local user with CAP_NET_ADMIN privileges to crash the system.
A flaw was found in the Netfilter subsystem of the Linux kernel. A race condition between IPSET_CMD_ADD and IPSET_CMD_SWAP can lead to a kernel panic due to the invocation of `__ip_set_put` on a wrong `set`. This issue may allow a local user to crash the system.
An issue was discovered in lib/kobject.c in the Linux kernel before 6.2.3. With root access, an attacker can trigger a race condition that results in a fill_kobj_path out-of-bounds write.
An issue was discovered in the Linux kernel through 6.5.9. During a race with SQ thread exit, an io_uring/fdinfo.c io_uring_show_fdinfo NULL pointer dereference can occur.
In the Linux kernel before 6.4.5, drivers/gpu/drm/drm_atomic.c has a use-after-free during a race condition between a nonblocking atomic commit and a driver unload.
bt_sock_recvmsg in net/bluetooth/af_bluetooth.c in the Linux kernel through 6.6.8 has a use-after-free because of a bt_sock_ioctl race condition.
An issue was discovered in the Linux kernel before 6.6.8. do_vcc_ioctl in net/atm/ioctl.c has a use-after-free because of a vcc_recvmsg race condition.
In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential OOBs in smb2_parse_contexts() Validate offsets and lengths before dereferencing create contexts in smb2_parse_contexts(). This fixes following oops when accessing invalid create contexts from server: BUG: unable to handle page fault for address: ffff8881178d8cc3 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 4a01067 P4D 4a01067 PUD 0 Oops: 0000 [#1] PREEMPT SMP NOPTI CPU: 3 PID: 1736 Comm: mount.cifs Not tainted 6.7.0-rc4 #1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.2-3-gd478f380-rebuilt.opensuse.org 04/01/2014 RIP: 0010:smb2_parse_contexts+0xa0/0x3a0 [cifs] Code: f8 10 75 13 48 b8 93 ad 25 50 9c b4 11 e7 49 39 06 0f 84 d2 00 00 00 8b 45 00 85 c0 74 61 41 29 c5 48 01 c5 41 83 fd 0f 76 55 <0f> b7 7d 04 0f b7 45 06 4c 8d 74 3d 00 66 83 f8 04 75 bc ba 04 00 RSP: 0018:ffffc900007939e0 EFLAGS: 00010216 RAX: ffffc90000793c78 RBX: ffff8880180cc000 RCX: ffffc90000793c90 RDX: ffffc90000793cc0 RSI: ffff8880178d8cc0 RDI: ffff8880180cc000 RBP: ffff8881178d8cbf R08: ffffc90000793c22 R09: 0000000000000000 R10: ffff8880180cc000 R11: 0000000000000024 R12: 0000000000000000 R13: 0000000000000020 R14: 0000000000000000 R15: ffffc90000793c22 FS: 00007f873753cbc0(0000) GS:ffff88806bc00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: ffff8881178d8cc3 CR3: 00000000181ca000 CR4: 0000000000750ef0 PKRU: 55555554 Call Trace:
In the Linux kernel, the following vulnerability has been resolved: gfs2: Fix kernel NULL pointer dereference in gfs2_rgrp_dump Syzkaller has reported a NULL pointer dereference when accessing rgd->rd_rgl in gfs2_rgrp_dump(). This can happen when creating rgd->rd_gl fails in read_rindex_entry(). Add a NULL pointer check in gfs2_rgrp_dump() to prevent that.
In the Linux kernel, the following vulnerability has been resolved: perf/x86/lbr: Filter vsyscall addresses We found that a panic can occur when a vsyscall is made while LBR sampling is active. If the vsyscall is interrupted (NMI) for perf sampling, this call sequence can occur (most recent at top): __insn_get_emulate_prefix() insn_get_emulate_prefix() insn_get_prefixes() insn_get_opcode() decode_branch_type() get_branch_type() intel_pmu_lbr_filter() intel_pmu_handle_irq() perf_event_nmi_handler() Within __insn_get_emulate_prefix() at frame 0, a macro is called: peek_nbyte_next(insn_byte_t, insn, i) Within this macro, this dereference occurs: (insn)->next_byte Inspecting registers at this point, the value of the next_byte field is the address of the vsyscall made, for example the location of the vsyscall version of gettimeofday() at 0xffffffffff600000. The access to an address in the vsyscall region will trigger an oops due to an unhandled page fault. To fix the bug, filtering for vsyscalls can be done when determining the branch type. This patch will return a "none" branch if a kernel address if found to lie in the vsyscall region.
In the Linux kernel, the following vulnerability has been resolved: mm/sparsemem: fix race in accessing memory_section->usage The below race is observed on a PFN which falls into the device memory region with the system memory configuration where PFN's are such that [ZONE_NORMAL ZONE_DEVICE ZONE_NORMAL]. Since normal zone start and end pfn contains the device memory PFN's as well, the compaction triggered will try on the device memory PFN's too though they end up in NOP(because pfn_to_online_page() returns NULL for ZONE_DEVICE memory sections). When from other core, the section mappings are being removed for the ZONE_DEVICE region, that the PFN in question belongs to, on which compaction is currently being operated is resulting into the kernel crash with CONFIG_SPASEMEM_VMEMAP enabled. The crash logs can be seen at [1]. compact_zone() memunmap_pages ------------- --------------- __pageblock_pfn_to_page ...... (a)pfn_valid(): valid_section()//return true (b)__remove_pages()-> sparse_remove_section()-> section_deactivate(): [Free the array ms->usage and set ms->usage = NULL] pfn_section_valid() [Access ms->usage which is NULL] NOTE: From the above it can be said that the race is reduced to between the pfn_valid()/pfn_section_valid() and the section deactivate with SPASEMEM_VMEMAP enabled. The commit b943f045a9af("mm/sparse: fix kernel crash with pfn_section_valid check") tried to address the same problem by clearing the SECTION_HAS_MEM_MAP with the expectation of valid_section() returns false thus ms->usage is not accessed. Fix this issue by the below steps: a) Clear SECTION_HAS_MEM_MAP before freeing the ->usage. b) RCU protected read side critical section will either return NULL when SECTION_HAS_MEM_MAP is cleared or can successfully access ->usage. c) Free the ->usage with kfree_rcu() and set ms->usage = NULL. No attempt will be made to access ->usage after this as the SECTION_HAS_MEM_MAP is cleared thus valid_section() return false. Thanks to David/Pavan for their inputs on this patch. [1] https://lore.kernel.org/linux-mm/994410bb-89aa-d987-1f50-f514903c55aa@quicinc.com/ On Snapdragon SoC, with the mentioned memory configuration of PFN's as [ZONE_NORMAL ZONE_DEVICE ZONE_NORMAL], we are able to see bunch of issues daily while testing on a device farm. For this particular issue below is the log. Though the below log is not directly pointing to the pfn_section_valid(){ ms->usage;}, when we loaded this dump on T32 lauterbach tool, it is pointing. [ 540.578056] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000 [ 540.578068] Mem abort info: [ 540.578070] ESR = 0x0000000096000005 [ 540.578073] EC = 0x25: DABT (current EL), IL = 32 bits [ 540.578077] SET = 0, FnV = 0 [ 540.578080] EA = 0, S1PTW = 0 [ 540.578082] FSC = 0x05: level 1 translation fault [ 540.578085] Data abort info: [ 540.578086] ISV = 0, ISS = 0x00000005 [ 540.578088] CM = 0, WnR = 0 [ 540.579431] pstate: 82400005 (Nzcv daif +PAN -UAO +TCO -DIT -SSBSBTYPE=--) [ 540.579436] pc : __pageblock_pfn_to_page+0x6c/0x14c [ 540.579454] lr : compact_zone+0x994/0x1058 [ 540.579460] sp : ffffffc03579b510 [ 540.579463] x29: ffffffc03579b510 x28: 0000000000235800 x27:000000000000000c [ 540.579470] x26: 0000000000235c00 x25: 0000000000000068 x24:ffffffc03579b640 [ 540.579477] x23: 0000000000000001 x22: ffffffc03579b660 x21:0000000000000000 [ 540.579483] x20: 0000000000235bff x19: ffffffdebf7e3940 x18:ffffffdebf66d140 [ 540.579489] x17: 00000000739ba063 x16: 00000000739ba063 x15:00000000009f4bff [ 540.579495] x14: 0000008000000000 x13: 0000000000000000 x12:0000000000000001 [ 540.579501] x11: 0000000000000000 x10: 0000000000000000 x9 :ffffff897d2cd440 [ 540.579507] x8 : 0000000000000000 x7 : 0000000000000000 x6 :ffffffc03579b5b4 [ 540.579512] x5 : 0000000000027f25 x4 : ffffffc03579b5b8 x3 :0000000000000 ---truncated---
In the Linux kernel, the following vulnerability has been resolved: net: fix possible store tearing in neigh_periodic_work() While looking at a related syzbot report involving neigh_periodic_work(), I found that I forgot to add an annotation when deleting an RCU protected item from a list. Readers use rcu_deference(*np), we need to use either rcu_assign_pointer() or WRITE_ONCE() on writer side to prevent store tearing. I use rcu_assign_pointer() to have lockdep support, this was the choice made in neigh_flush_dev().
In the Linux kernel, the following vulnerability has been resolved: HID: sony: Fix a potential memory leak in sony_probe() If an error occurs after a successful usb_alloc_urb() call, usb_free_urb() should be called.
In the Linux kernel, the following vulnerability has been resolved: team: fix null-ptr-deref when team device type is changed Get a null-ptr-deref bug as follows with reproducer [1]. BUG: kernel NULL pointer dereference, address: 0000000000000228 ... RIP: 0010:vlan_dev_hard_header+0x35/0x140 [8021q] ... Call Trace:
In the Linux kernel, the following vulnerability has been resolved: net: bridge: use DEV_STATS_INC() syzbot/KCSAN reported data-races in br_handle_frame_finish() [1] This function can run from multiple cpus without mutual exclusion. Adopt SMP safe DEV_STATS_INC() to update dev->stats fields. Handles updates to dev->stats.tx_dropped while we are at it. [1] BUG: KCSAN: data-race in br_handle_frame_finish / br_handle_frame_finish read-write to 0xffff8881374b2178 of 8 bytes by interrupt on cpu 1: br_handle_frame_finish+0xd4f/0xef0 net/bridge/br_input.c:189 br_nf_hook_thresh+0x1ed/0x220 br_nf_pre_routing_finish_ipv6+0x50f/0x540 NF_HOOK include/linux/netfilter.h:304 [inline] br_nf_pre_routing_ipv6+0x1e3/0x2a0 net/bridge/br_netfilter_ipv6.c:178 br_nf_pre_routing+0x526/0xba0 net/bridge/br_netfilter_hooks.c:508 nf_hook_entry_hookfn include/linux/netfilter.h:144 [inline] nf_hook_bridge_pre net/bridge/br_input.c:272 [inline] br_handle_frame+0x4c9/0x940 net/bridge/br_input.c:417 __netif_receive_skb_core+0xa8a/0x21e0 net/core/dev.c:5417 __netif_receive_skb_one_core net/core/dev.c:5521 [inline] __netif_receive_skb+0x57/0x1b0 net/core/dev.c:5637 process_backlog+0x21f/0x380 net/core/dev.c:5965 __napi_poll+0x60/0x3b0 net/core/dev.c:6527 napi_poll net/core/dev.c:6594 [inline] net_rx_action+0x32b/0x750 net/core/dev.c:6727 __do_softirq+0xc1/0x265 kernel/softirq.c:553 run_ksoftirqd+0x17/0x20 kernel/softirq.c:921 smpboot_thread_fn+0x30a/0x4a0 kernel/smpboot.c:164 kthread+0x1d7/0x210 kernel/kthread.c:388 ret_from_fork+0x48/0x60 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:304 read-write to 0xffff8881374b2178 of 8 bytes by interrupt on cpu 0: br_handle_frame_finish+0xd4f/0xef0 net/bridge/br_input.c:189 br_nf_hook_thresh+0x1ed/0x220 br_nf_pre_routing_finish_ipv6+0x50f/0x540 NF_HOOK include/linux/netfilter.h:304 [inline] br_nf_pre_routing_ipv6+0x1e3/0x2a0 net/bridge/br_netfilter_ipv6.c:178 br_nf_pre_routing+0x526/0xba0 net/bridge/br_netfilter_hooks.c:508 nf_hook_entry_hookfn include/linux/netfilter.h:144 [inline] nf_hook_bridge_pre net/bridge/br_input.c:272 [inline] br_handle_frame+0x4c9/0x940 net/bridge/br_input.c:417 __netif_receive_skb_core+0xa8a/0x21e0 net/core/dev.c:5417 __netif_receive_skb_one_core net/core/dev.c:5521 [inline] __netif_receive_skb+0x57/0x1b0 net/core/dev.c:5637 process_backlog+0x21f/0x380 net/core/dev.c:5965 __napi_poll+0x60/0x3b0 net/core/dev.c:6527 napi_poll net/core/dev.c:6594 [inline] net_rx_action+0x32b/0x750 net/core/dev.c:6727 __do_softirq+0xc1/0x265 kernel/softirq.c:553 do_softirq+0x5e/0x90 kernel/softirq.c:454 __local_bh_enable_ip+0x64/0x70 kernel/softirq.c:381 __raw_spin_unlock_bh include/linux/spinlock_api_smp.h:167 [inline] _raw_spin_unlock_bh+0x36/0x40 kernel/locking/spinlock.c:210 spin_unlock_bh include/linux/spinlock.h:396 [inline] batadv_tt_local_purge+0x1a8/0x1f0 net/batman-adv/translation-table.c:1356 batadv_tt_purge+0x2b/0x630 net/batman-adv/translation-table.c:3560 process_one_work kernel/workqueue.c:2630 [inline] process_scheduled_works+0x5b8/0xa30 kernel/workqueue.c:2703 worker_thread+0x525/0x730 kernel/workqueue.c:2784 kthread+0x1d7/0x210 kernel/kthread.c:388 ret_from_fork+0x48/0x60 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:304 value changed: 0x00000000000d7190 -> 0x00000000000d7191 Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 14848 Comm: kworker/u4:11 Not tainted 6.6.0-rc1-syzkaller-00236-gad8a69f361b9 #0
In the Linux kernel, the following vulnerability has been resolved: net/core: Fix ETH_P_1588 flow dissector When a PTP ethernet raw frame with a size of more than 256 bytes followed by a 0xff pattern is sent to __skb_flow_dissect, nhoff value calculation is wrong. For example: hdr->message_length takes the wrong value (0xffff) and it does not replicate real header length. In this case, 'nhoff' value was overridden and the PTP header was badly dissected. This leads to a kernel crash. net/core: flow_dissector net/core flow dissector nhoff = 0x0000000e net/core flow dissector hdr->message_length = 0x0000ffff net/core flow dissector nhoff = 0x0001000d (u16 overflow) ... skb linear: 00000000: 00 a0 c9 00 00 00 00 a0 c9 00 00 00 88 skb frag: 00000000: f7 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff Using the size of the ptp_header struct will allow the corrected calculation of the nhoff value. net/core flow dissector nhoff = 0x0000000e net/core flow dissector nhoff = 0x00000030 (sizeof ptp_header) ... skb linear: 00000000: 00 a0 c9 00 00 00 00 a0 c9 00 00 00 88 f7 ff ff skb linear: 00000010: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff skb linear: 00000020: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff skb frag: 00000000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff Kernel trace: [ 74.984279] ------------[ cut here ]------------ [ 74.989471] kernel BUG at include/linux/skbuff.h:2440! [ 74.995237] invalid opcode: 0000 [#1] PREEMPT SMP NOPTI [ 75.001098] CPU: 4 PID: 0 Comm: swapper/4 Tainted: G U 5.15.85-intel-ese-standard-lts #1 [ 75.011629] Hardware name: Intel Corporation A-Island (CPU:AlderLake)/A-Island (ID:06), BIOS SB_ADLP.01.01.00.01.03.008.D-6A9D9E73-dirty Mar 30 2023 [ 75.026507] RIP: 0010:eth_type_trans+0xd0/0x130 [ 75.031594] Code: 03 88 47 78 eb c7 8b 47 68 2b 47 6c 48 8b 97 c0 00 00 00 83 f8 01 7e 1b 48 85 d2 74 06 66 83 3a ff 74 09 b8 00 04 00 00 eb ab <0f> 0b b8 00 01 00 00 eb a2 48 85 ff 74 eb 48 8d 54 24 06 31 f6 b9 [ 75.052612] RSP: 0018:ffff9948c0228de0 EFLAGS: 00010297 [ 75.058473] RAX: 00000000000003f2 RBX: ffff8e47047dc300 RCX: 0000000000001003 [ 75.066462] RDX: ffff8e4e8c9ea040 RSI: ffff8e4704e0a000 RDI: ffff8e47047dc300 [ 75.074458] RBP: ffff8e4704e2acc0 R08: 00000000000003f3 R09: 0000000000000800 [ 75.082466] R10: 000000000000000d R11: ffff9948c0228dec R12: ffff8e4715e4e010 [ 75.090461] R13: ffff9948c0545018 R14: 0000000000000001 R15: 0000000000000800 [ 75.098464] FS: 0000000000000000(0000) GS:ffff8e4e8fb00000(0000) knlGS:0000000000000000 [ 75.107530] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 75.113982] CR2: 00007f5eb35934a0 CR3: 0000000150e0a002 CR4: 0000000000770ee0 [ 75.121980] PKRU: 55555554 [ 75.125035] Call Trace: [ 75.127792]
In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_tables: fix memleak when more than 255 elements expired When more than 255 elements expired we're supposed to switch to a new gc container structure. This never happens: u8 type will wrap before reaching the boundary and nft_trans_gc_space() always returns true. This means we recycle the initial gc container structure and lose track of the elements that came before. While at it, don't deref 'gc' after we've passed it to call_rcu.
In the Linux kernel, the following vulnerability has been resolved: net/sched: act_ct: fix skb leak and crash on ooo frags act_ct adds skb->users before defragmentation. If frags arrive in order, the last frag's reference is reset in: inet_frag_reasm_prepare skb_morph which is not straightforward. However when frags arrive out of order, nobody unref the last frag, and all frags are leaked. The situation is even worse, as initiating packet capture can lead to a crash[0] when skb has been cloned and shared at the same time. Fix the issue by removing skb_get() before defragmentation. act_ct returns TC_ACT_CONSUMED when defrag failed or in progress. [0]: [ 843.804823] ------------[ cut here ]------------ [ 843.809659] kernel BUG at net/core/skbuff.c:2091! [ 843.814516] invalid opcode: 0000 [#1] PREEMPT SMP [ 843.819296] CPU: 7 PID: 0 Comm: swapper/7 Kdump: loaded Tainted: G S 6.7.0-rc3 #2 [ 843.824107] Hardware name: XFUSION 1288H V6/BC13MBSBD, BIOS 1.29 11/25/2022 [ 843.828953] RIP: 0010:pskb_expand_head+0x2ac/0x300 [ 843.833805] Code: 8b 70 28 48 85 f6 74 82 48 83 c6 08 bf 01 00 00 00 e8 38 bd ff ff 8b 83 c0 00 00 00 48 03 83 c8 00 00 00 e9 62 ff ff ff 0f 0b <0f> 0b e8 8d d0 ff ff e9 b3 fd ff ff 81 7c 24 14 40 01 00 00 4c 89 [ 843.843698] RSP: 0018:ffffc9000cce07c0 EFLAGS: 00010202 [ 843.848524] RAX: 0000000000000002 RBX: ffff88811a211d00 RCX: 0000000000000820 [ 843.853299] RDX: 0000000000000640 RSI: 0000000000000000 RDI: ffff88811a211d00 [ 843.857974] RBP: ffff888127d39518 R08: 00000000bee97314 R09: 0000000000000000 [ 843.862584] R10: 0000000000000000 R11: ffff8881109f0000 R12: 0000000000000880 [ 843.867147] R13: ffff888127d39580 R14: 0000000000000640 R15: ffff888170f7b900 [ 843.871680] FS: 0000000000000000(0000) GS:ffff889ffffc0000(0000) knlGS:0000000000000000 [ 843.876242] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 843.880778] CR2: 00007fa42affcfb8 CR3: 000000011433a002 CR4: 0000000000770ef0 [ 843.885336] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 843.889809] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 843.894229] PKRU: 55555554 [ 843.898539] Call Trace: [ 843.902772]
In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_tables: disallow timeout for anonymous sets Never used from userspace, disallow these parameters.
An out-of-bounds access vulnerability involving netfilter was reported and fixed as: f1082dd31fe4 (netfilter: nf_tables: Reject tables of unsupported family); While creating a new netfilter table, lack of a safeguard against invalid nf_tables family (pf) values within `nf_tables_newtable` function enables an attacker to achieve out-of-bounds access.
An out-of-bounds read vulnerability was found in the NVMe-oF/TCP subsystem in the Linux kernel. This issue may allow a remote attacker to send a crafted TCP packet, triggering a heap-based buffer overflow that results in kmalloc data being printed and potentially leaked to the kernel ring buffer (dmesg).
A null pointer dereference flaw was found in the Linux kernel API for the cryptographic algorithm scatterwalk functionality. This issue occurs when a user constructs a malicious packet with specific socket configuration, which could allow a local user to crash the system or escalate their privileges on the system.
A use-after-free flaw was found in the Linux Kernel due to a race problem in the unix garbage collector's deletion of SKB races with unix_stream_read_generic() on the socket that the SKB is queued on.
A race condition was found in the GSM 0710 tty multiplexor in the Linux kernel. This issue occurs when two threads execute the GSMIOC_SETCONF ioctl on the same tty file descriptor with the gsm line discipline enabled, and can lead to a use-after-free problem on a struct gsm_dlci while restarting the gsm mux. This could allow a local unprivileged user to escalate their privileges on the system.
A null pointer dereference vulnerability was found in nft_dynset_init() in net/netfilter/nft_dynset.c in nf_tables in the Linux kernel. This issue may allow a local attacker with CAP_NET_ADMIN user privilege to trigger a denial of service.
A Null pointer dereference problem was found in ida_free in lib/idr.c in the Linux Kernel. This issue may allow an attacker using this library to cause a denial of service problem due to a missing check at a function return.
A heap out-of-bounds write vulnerability in the Linux kernel's Performance Events system component can be exploited to achieve local privilege escalation. A perf_event's read_size can overflow, leading to an heap out-of-bounds increment or write in perf_read_group(). We recommend upgrading past commit 382c27f4ed28f803b1f1473ac2d8db0afc795a1b.
A use-after-free vulnerability in the Linux kernel's ipv4: igmp component can be exploited to achieve local privilege escalation. A race condition can be exploited to cause a timer be mistakenly registered on a RCU read locked object which is freed by another thread. We recommend upgrading past commit e2b706c691905fe78468c361aaabc719d0a496f1.
An out-of-bounds memory read flaw was found in receive_encrypted_standard in fs/smb/client/smb2ops.c in the SMB Client sub-component in the Linux Kernel. This issue occurs due to integer underflow on the memcpy length, leading to a denial of service.
A null pointer dereference flaw was found in the hugetlbfs_fill_super function in the Linux kernel hugetlbfs (HugeTLB pages) functionality. This issue may allow a local user to crash the system or potentially escalate their privileges on the system.
A use-after-free vulnerability in the Linux kernel's netfilter: nf_tables component can be exploited to achieve local privilege escalation. The nft_setelem_catchall_deactivate() function checks whether the catch-all set element is active in the current generation instead of the next generation before freeing it, but only flags it inactive in the next generation, making it possible to free the element multiple times, leading to a double free vulnerability. We recommend upgrading past commit b1db244ffd041a49ecc9618e8feb6b5c1afcdaa7.
A use-after-free vulnerability in the Linux kernel's netfilter: nf_tables component can be exploited to achieve local privilege escalation. The nft_verdict_init() function allows positive values as drop error within the hook verdict, and hence the nf_hook_slow() function can cause a double free vulnerability when NF_DROP is issued with a drop error which resembles NF_ACCEPT. We recommend upgrading past commit f342de4e2f33e0e39165d8639387aa6c19dff660.
In the Linux kernel, the following vulnerability has been resolved: net: tls: fix use-after-free with partial reads and async decrypt tls_decrypt_sg doesn't take a reference on the pages from clear_skb, so the put_page() in tls_decrypt_done releases them, and we trigger a use-after-free in process_rx_list when we try to read from the partially-read skb.
In the Linux kernel, the following vulnerability has been resolved: tls: fix race between async notify and socket close The submitting thread (one which called recvmsg/sendmsg) may exit as soon as the async crypto handler calls complete() so any code past that point risks touching already freed data. Try to avoid the locking and extra flags altogether. Have the main thread hold an extra reference, this way we can depend solely on the atomic ref counter for synchronization. Don't futz with reiniting the completion, either, we are now tightly controlling when completion fires.
In the Linux kernel, the following vulnerability has been resolved: net: tls: handle backlogging of crypto requests Since we're setting the CRYPTO_TFM_REQ_MAY_BACKLOG flag on our requests to the crypto API, crypto_aead_{encrypt,decrypt} can return -EBUSY instead of -EINPROGRESS in valid situations. For example, when the cryptd queue for AESNI is full (easy to trigger with an artificially low cryptd.cryptd_max_cpu_qlen), requests will be enqueued to the backlog but still processed. In that case, the async callback will also be called twice: first with err == -EINPROGRESS, which it seems we can just ignore, then with err == 0. Compared to Sabrina's original patch this version uses the new tls_*crypt_async_wait() helpers and converts the EBUSY to EINPROGRESS to avoid having to modify all the error handling paths. The handling is identical.
In the Linux kernel, the following vulnerability has been resolved: tls: fix race between tx work scheduling and socket close Similarly to previous commit, the submitting thread (recvmsg/sendmsg) may exit as soon as the async crypto handler calls complete(). Reorder scheduling the work before calling complete(). This seems more logical in the first place, as it's the inverse order of what the submitting thread will do.
In the Linux kernel, the following vulnerability has been resolved: mlxsw: spectrum_acl_tcam: Fix stack corruption When tc filters are first added to a net device, the corresponding local port gets bound to an ACL group in the device. The group contains a list of ACLs. In turn, each ACL points to a different TCAM region where the filters are stored. During forwarding, the ACLs are sequentially evaluated until a match is found. One reason to place filters in different regions is when they are added with decreasing priorities and in an alternating order so that two consecutive filters can never fit in the same region because of their key usage. In Spectrum-2 and newer ASICs the firmware started to report that the maximum number of ACLs in a group is more than 16, but the layout of the register that configures ACL groups (PAGT) was not updated to account for that. It is therefore possible to hit stack corruption [1] in the rare case where more than 16 ACLs in a group are required. Fix by limiting the maximum ACL group size to the minimum between what the firmware reports and the maximum ACLs that fit in the PAGT register. Add a test case to make sure the machine does not crash when this condition is hit. [1] Kernel panic - not syncing: stack-protector: Kernel stack is corrupted in: mlxsw_sp_acl_tcam_group_update+0x116/0x120 [...] dump_stack_lvl+0x36/0x50 panic+0x305/0x330 __stack_chk_fail+0x15/0x20 mlxsw_sp_acl_tcam_group_update+0x116/0x120 mlxsw_sp_acl_tcam_group_region_attach+0x69/0x110 mlxsw_sp_acl_tcam_vchunk_get+0x492/0xa20 mlxsw_sp_acl_tcam_ventry_add+0x25/0xe0 mlxsw_sp_acl_rule_add+0x47/0x240 mlxsw_sp_flower_replace+0x1a9/0x1d0 tc_setup_cb_add+0xdc/0x1c0 fl_hw_replace_filter+0x146/0x1f0 fl_change+0xc17/0x1360 tc_new_tfilter+0x472/0xb90 rtnetlink_rcv_msg+0x313/0x3b0 netlink_rcv_skb+0x58/0x100 netlink_unicast+0x244/0x390 netlink_sendmsg+0x1e4/0x440 ____sys_sendmsg+0x164/0x260 ___sys_sendmsg+0x9a/0xe0 __sys_sendmsg+0x7a/0xc0 do_syscall_64+0x40/0xe0 entry_SYSCALL_64_after_hwframe+0x63/0x6b
In the Linux kernel, the following vulnerability has been resolved: i2c: i801: Fix block process call transactions According to the Intel datasheets, software must reset the block buffer index twice for block process call transactions: once before writing the outgoing data to the buffer, and once again before reading the incoming data from the buffer. The driver is currently missing the second reset, causing the wrong portion of the block buffer to be read.
In the Linux kernel, the following vulnerability has been resolved: sched/membarrier: reduce the ability to hammer on sys_membarrier On some systems, sys_membarrier can be very expensive, causing overall slowdowns for everything. So put a lock on the path in order to serialize the accesses to prevent the ability for this to be called at too high of a frequency and saturate the machine.
** REJECT ** This CVE ID has been rejected or withdrawn by its CVE Numbering Authority.
In the Linux kernel, the following vulnerability has been resolved: ip6_tunnel: fix NEXTHDR_FRAGMENT handling in ip6_tnl_parse_tlv_enc_lim() syzbot pointed out [1] that NEXTHDR_FRAGMENT handling is broken. Reading frag_off can only be done if we pulled enough bytes to skb->head. Currently we might access garbage. [1] BUG: KMSAN: uninit-value in ip6_tnl_parse_tlv_enc_lim+0x94f/0xbb0 ip6_tnl_parse_tlv_enc_lim+0x94f/0xbb0 ipxip6_tnl_xmit net/ipv6/ip6_tunnel.c:1326 [inline] ip6_tnl_start_xmit+0xab2/0x1a70 net/ipv6/ip6_tunnel.c:1432 __netdev_start_xmit include/linux/netdevice.h:4940 [inline] netdev_start_xmit include/linux/netdevice.h:4954 [inline] xmit_one net/core/dev.c:3548 [inline] dev_hard_start_xmit+0x247/0xa10 net/core/dev.c:3564 __dev_queue_xmit+0x33b8/0x5130 net/core/dev.c:4349 dev_queue_xmit include/linux/netdevice.h:3134 [inline] neigh_connected_output+0x569/0x660 net/core/neighbour.c:1592 neigh_output include/net/neighbour.h:542 [inline] ip6_finish_output2+0x23a9/0x2b30 net/ipv6/ip6_output.c:137 ip6_finish_output+0x855/0x12b0 net/ipv6/ip6_output.c:222 NF_HOOK_COND include/linux/netfilter.h:303 [inline] ip6_output+0x323/0x610 net/ipv6/ip6_output.c:243 dst_output include/net/dst.h:451 [inline] ip6_local_out+0xe9/0x140 net/ipv6/output_core.c:155 ip6_send_skb net/ipv6/ip6_output.c:1952 [inline] ip6_push_pending_frames+0x1f9/0x560 net/ipv6/ip6_output.c:1972 rawv6_push_pending_frames+0xbe8/0xdf0 net/ipv6/raw.c:582 rawv6_sendmsg+0x2b66/0x2e70 net/ipv6/raw.c:920 inet_sendmsg+0x105/0x190 net/ipv4/af_inet.c:847 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] ____sys_sendmsg+0x9c2/0xd60 net/socket.c:2584 ___sys_sendmsg+0x28d/0x3c0 net/socket.c:2638 __sys_sendmsg net/socket.c:2667 [inline] __do_sys_sendmsg net/socket.c:2676 [inline] __se_sys_sendmsg net/socket.c:2674 [inline] __x64_sys_sendmsg+0x307/0x490 net/socket.c:2674 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0x44/0x110 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x63/0x6b Uninit was created at: slab_post_alloc_hook+0x129/0xa70 mm/slab.h:768 slab_alloc_node mm/slub.c:3478 [inline] __kmem_cache_alloc_node+0x5c9/0x970 mm/slub.c:3517 __do_kmalloc_node mm/slab_common.c:1006 [inline] __kmalloc_node_track_caller+0x118/0x3c0 mm/slab_common.c:1027 kmalloc_reserve+0x249/0x4a0 net/core/skbuff.c:582 pskb_expand_head+0x226/0x1a00 net/core/skbuff.c:2098 __pskb_pull_tail+0x13b/0x2310 net/core/skbuff.c:2655 pskb_may_pull_reason include/linux/skbuff.h:2673 [inline] pskb_may_pull include/linux/skbuff.h:2681 [inline] ip6_tnl_parse_tlv_enc_lim+0x901/0xbb0 net/ipv6/ip6_tunnel.c:408 ipxip6_tnl_xmit net/ipv6/ip6_tunnel.c:1326 [inline] ip6_tnl_start_xmit+0xab2/0x1a70 net/ipv6/ip6_tunnel.c:1432 __netdev_start_xmit include/linux/netdevice.h:4940 [inline] netdev_start_xmit include/linux/netdevice.h:4954 [inline] xmit_one net/core/dev.c:3548 [inline] dev_hard_start_xmit+0x247/0xa10 net/core/dev.c:3564 __dev_queue_xmit+0x33b8/0x5130 net/core/dev.c:4349 dev_queue_xmit include/linux/netdevice.h:3134 [inline] neigh_connected_output+0x569/0x660 net/core/neighbour.c:1592 neigh_output include/net/neighbour.h:542 [inline] ip6_finish_output2+0x23a9/0x2b30 net/ipv6/ip6_output.c:137 ip6_finish_output+0x855/0x12b0 net/ipv6/ip6_output.c:222 NF_HOOK_COND include/linux/netfilter.h:303 [inline] ip6_output+0x323/0x610 net/ipv6/ip6_output.c:243 dst_output include/net/dst.h:451 [inline] ip6_local_out+0xe9/0x140 net/ipv6/output_core.c:155 ip6_send_skb net/ipv6/ip6_output.c:1952 [inline] ip6_push_pending_frames+0x1f9/0x560 net/ipv6/ip6_output.c:1972 rawv6_push_pending_frames+0xbe8/0xdf0 net/ipv6/raw.c:582 rawv6_sendmsg+0x2b66/0x2e70 net/ipv6/raw.c:920 inet_sendmsg+0x105/0x190 net/ipv4/af_inet.c:847 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] ____sys_sendmsg+0x9c2/0xd60 net/socket.c:2584 ___sys_sendmsg+0x28d/0x3c0 net/socket.c:2638 __sys_sendmsg net/socket.c:2667 [inline] __do_sys_sendms ---truncated---
N/A
SRPMS
- kernel-5.14.0-427.13.1.el9_4.src.rpm
MD5: 12e2c76ebd53dfbf4eca30cad08fbab6
SHA-256: 52a6f52ec6428aa70d0ceca3a442df2a878cb6b6ba6b04a38b8e473d3601d3e6
Size: 145.06 MB
Asianux Server 9 for x86_64
- bpftool-7.3.0-427.13.1.el9_4.x86_64.rpm
MD5: 98f356e7139ae7229cb1da38b3464adc
SHA-256: 4c8d127dfc2456637c8a62874a1721c1f6b20c88b4f1c128b277ab4eb3ea9454
Size: 6.29 MB - kernel-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: c811d56603666021bbbfac1483ae07f4
SHA-256: 11c55417c44958375bd9e60e9ab4d9695f8f5a71a0de9c19f4975c3598d1af4f
Size: 5.53 MB - kernel-abi-stablelists-5.14.0-427.13.1.el9_4.noarch.rpm
MD5: 031cbc3493d53b1aa2e162c07cb7b431
SHA-256: b4bc89ba58afddef5e43349dc04ad7f561d23004a8b7807eca35969b8a009a44
Size: 5.55 MB - kernel-core-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 116d674cdf5526d662d967ab23636ae3
SHA-256: 4badc113b56468fcf9c98cd2c4670bd34e75085a869d855829946abf149f8021
Size: 20.39 MB - kernel-cross-headers-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: f1dcad6f61f976852950f582d5aa7d01
SHA-256: cf4a28c3a0d48bab4dc00a321373c9b88631a6a0e74617e6c97adf2413dbaafe
Size: 12.13 MB - kernel-debug-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 6480317b548c30473fbed9122b9d9b0a
SHA-256: 4a2fc59d262864e8ee9d1b28370f2327b46fb4814fb92f82e65e798398aeaab1
Size: 5.53 MB - kernel-debug-core-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: f14244fb727cd50024ded6d3eea75b63
SHA-256: 6714c0b25afdda45ad572c008bd5a508e60e2c7f97ee5bc1fa31b59ee7e792ff
Size: 33.05 MB - kernel-debug-devel-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: ae21d7703c6a235ac1411ffd517ca52d
SHA-256: ea554e88b5b3eb240d054e387b6be50c1ecd18c10aae9255ef31c8d7d8a722c8
Size: 24.75 MB - kernel-debug-devel-matched-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 77868e4485491bd9b8fa2ebbe43b310e
SHA-256: d87e6f950c24f5448520cbf32fb3e595cdbd3f470037eaf751a3dbd9ad81aac7
Size: 5.53 MB - kernel-debug-modules-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 5c0bf73f3eb54343cf854bfd480bdac7
SHA-256: d66f8d93608802b1773c3179d04547922c399aced0d30b2dce53c322a2de07c6
Size: 64.50 MB - kernel-debug-modules-core-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: acd51f77e3fca37d650f5449630c2e5e
SHA-256: f7c0cfa046e47b482acf471d471e2e6de36e8ab10939cdfb77c256925d82e1ea
Size: 50.57 MB - kernel-debug-modules-extra-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: fc8951b9a1916a48ae5526a1c1a8d194
SHA-256: c7b80ad4f5766fcde20922282ec7b0f986a4bf4c2d3f9690c36febe9b19f3bbb
Size: 6.37 MB - kernel-debug-uki-virt-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 452a08111c22430971704bc9f633d1a5
SHA-256: 97c989eca47a9b0a5a0f69be49ac133729ea7e5b3c91b95b7cfa27d54cf219dc
Size: 82.35 MB - kernel-devel-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 9bd8bff3ee745418075c605f08044b83
SHA-256: fd15ed73f3fc5731117d752fc26d58291bef823953856876fbf86e7687f7a26b
Size: 24.58 MB - kernel-devel-matched-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: c04be993ddfc3ed39258b9d94a78291b
SHA-256: 4bccdacdd2968e60ceae68364fff614727b182dc2e33b94ec210dffa2a5c7ec8
Size: 5.53 MB - kernel-doc-5.14.0-427.13.1.el9_4.noarch.rpm
MD5: d00418de4dabb2debbc886f57de05ba9
SHA-256: d32cc9f0b2c8c82e34cd9da41be2d0009a940968d46a8bb0cc24a2056cf419d8
Size: 38.96 MB - kernel-headers-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: af162e249b086b7a626ed4e370b64306
SHA-256: 14f4d94b9e069283c7b0a08bc1a931c12503fddbac967037dffd9d57488c3615
Size: 7.20 MB - kernel-modules-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: c0094ab50a0c52cc9c59157317f23ef1
SHA-256: c68c45aef2635fad44fd5ccf392efc54a24b8ad71a37cbb71a91abb911294ca9
Size: 39.14 MB - kernel-modules-core-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 80c6fc6d13247816dade6e65f5438f02
SHA-256: 688f7c4dccc2589fc445628abebffbffa79dbb013856ca37e591f7aa46a439f7
Size: 33.25 MB - kernel-modules-extra-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: b616d2747a1bacd999ab727fdb04a054
SHA-256: 9fc01ab5cbf9905f73155897fc08ef8be3a0301d4a50def89c62a8213fbc3735
Size: 5.99 MB - kernel-tools-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 9690d8f116e9139ebc1b707ae1a75701
SHA-256: ae29006a9e60fcc6e79ea3fd8cb19da71554dc48291326a965f48bfbd7fa7204
Size: 5.79 MB - kernel-tools-libs-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 74645dfb1fed1e2d9d48cc966fdd1d0e
SHA-256: cd52acbf202fa9ee0e46a392a986f48ecde57b6761d61baad411f32e9a7c6e32
Size: 5.54 MB - kernel-tools-libs-devel-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 376cca62c3be8c326787991c93eb4725
SHA-256: 06370a1026a0658ead0ea6f935cc7d595f66b776a03f3475a64a4e731c3a958c
Size: 5.53 MB - kernel-uki-virt-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: eec8627efbf3120c765e88ed6359b059
SHA-256: a040df33ef9fc6b94f6bb84527574ca0e3c4a844d97a4b71e8edd7e03c4e5109
Size: 62.25 MB - libperf-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 9ff43dbb652c6939a47c8fe39e9bfa1f
SHA-256: b9621459808e65bed3f109df34836eafb010a5c8576062b1219080d69d84cf0f
Size: 5.55 MB - perf-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 08653c94adc68738b7658227d2f01ae2
SHA-256: 82b6ab9fd62675e3b3aa0b932aa46f6a869bf1bf97c7e8afcf228c491ad0cc42
Size: 7.56 MB - python3-perf-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: ab5c06105b697833530320de9d56726c
SHA-256: bfcfc823e24b714a78df00e20b0abf9f535b171b44e7f2420d0b0e5182721001
Size: 5.63 MB - rtla-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: 2b6a6b3e9cb8de129ca7307b2e785b05
SHA-256: 9ebee4bb3ea6142604bbde4c3a3c72336107491ae0c1d21b98beaedfe4eb2ca8
Size: 5.58 MB - rv-5.14.0-427.13.1.el9_4.x86_64.rpm
MD5: a6e78184c624446d04ac262268f11857
SHA-256: 30570cee732b6114eb8668e25d2b76011c7efdd197e9f027006712ba99a92a63
Size: 5.54 MB