目標達成 すべての支援者に感謝 — 100%達成しました!

目標: 1000 CNY · 調達済み: 1000 CNY

100.0%

CVE-2024-50099— Linux kernel 安全漏洞

EPSS 0.01% · P2
新しい脆弱性情報の通知を購読するログインして購読

I. CVE-2024-50099の基本情報

脆弱性情報

脆弱性についてご質問がありますか?Shenlongの分析が参考になるかご確認ください!
Shenlongの10の質問を表示 ↗

高度な大規模言語モデル技術を使用していますが、出力には不正確または古い情報が含まれる可能性があります。Shenlongはデータの正確性を確保するよう努めていますが、実際の状況に基づいて検証・判断してください。

脆弱性タイトル
arm64: probes: Remove broken LDR (literal) uprobe support
ソース: NVD (National Vulnerability Database)
脆弱性説明
In the Linux kernel, the following vulnerability has been resolved: arm64: probes: Remove broken LDR (literal) uprobe support The simulate_ldr_literal() and simulate_ldrsw_literal() functions are unsafe to use for uprobes. Both functions were originally written for use with kprobes, and access memory with plain C accesses. When uprobes was added, these were reused unmodified even though they cannot safely access user memory. There are three key problems: 1) The plain C accesses do not have corresponding extable entries, and thus if they encounter a fault the kernel will treat these as unintentional accesses to user memory, resulting in a BUG() which will kill the kernel thread, and likely lead to further issues (e.g. lockup or panic()). 2) The plain C accesses are subject to HW PAN and SW PAN, and so when either is in use, any attempt to simulate an access to user memory will fault. Thus neither simulate_ldr_literal() nor simulate_ldrsw_literal() can do anything useful when simulating a user instruction on any system with HW PAN or SW PAN. 3) The plain C accesses are privileged, as they run in kernel context, and in practice can access a small range of kernel virtual addresses. The instructions they simulate have a range of +/-1MiB, and since the simulated instructions must itself be a user instructions in the TTBR0 address range, these can address the final 1MiB of the TTBR1 acddress range by wrapping downwards from an address in the first 1MiB of the TTBR0 address range. In contemporary kernels the last 8MiB of TTBR1 address range is reserved, and accesses to this will always fault, meaning this is no worse than (1). Historically, it was theoretically possible for the linear map or vmemmap to spill into the final 8MiB of the TTBR1 address range, but in practice this is extremely unlikely to occur as this would require either: * Having enough physical memory to fill the entire linear map all the way to the final 1MiB of the TTBR1 address range. * Getting unlucky with KASLR randomization of the linear map such that the populated region happens to overlap with the last 1MiB of the TTBR address range. ... and in either case if we were to spill into the final page there would be larger problems as the final page would alias with error pointers. Practically speaking, (1) and (2) are the big issues. Given there have been no reports of problems since the broken code was introduced, it appears that no-one is relying on probing these instructions with uprobes. Avoid these issues by not allowing uprobes on LDR (literal) and LDRSW (literal), limiting the use of simulate_ldr_literal() and simulate_ldrsw_literal() to kprobes. Attempts to place uprobes on LDR (literal) and LDRSW (literal) will be rejected as arm_probe_decode_insn() will return INSN_REJECTED. In future we can consider introducing working uprobes support for these instructions, but this will require more significant work.
ソース: NVD (National Vulnerability Database)
CVSS情報
N/A
ソース: NVD (National Vulnerability Database)
脆弱性タイプ
N/A
ソース: NVD (National Vulnerability Database)
脆弱性タイトル
Linux kernel 安全漏洞
ソース: CNNVD (China National Vulnerability Database)
脆弱性説明
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于arm64模块在 uprobes 支持中未能正确处理LDR(literal)和LDRSW(literal)指令,可能导致内核崩溃。
ソース: CNNVD (China National Vulnerability Database)
CVSS情報
N/A
ソース: CNNVD (China National Vulnerability Database)
脆弱性タイプ
N/A
ソース: CNNVD (China National Vulnerability Database)

影響を受ける製品

ベンダープロダクト影響を受けるバージョンCPE購読
LinuxLinux 9842ceae9fa8deae141533d52a6ead7666962c09 ~ cc86f2e9876c8b5300238cec6bf0bd8c842078ee -
LinuxLinux 4.10 -

II. CVE-2024-50099の公開POC

#POC説明ソースリンクShenlongリンク
AI生成POCプレミアム

公開POCは見つかりませんでした。

ログインしてAI POCを生成

III. CVE-2024-50099のインテリジェンス情報

登录查看更多情报信息。

Same Patch Batch · Linux · 2024-11-05 · 50 CVEs total

CVE-2024-50123bpf: Add the missing BPF_LINK_TYPE invocation for sockmap
CVE-2024-50129net: pse-pd: Fix out of bound for loop
CVE-2024-50134drm/vboxvideo: Replace fake VLA at end of vbva_mouse_pointer_shape with real VLA
CVE-2024-50136net/mlx5: Unregister notifier on eswitch init failure
CVE-2024-50135nvme-pci: fix race condition between reset and nvme_dev_disable()
CVE-2024-50137reset: starfive: jh71x0: Fix accessing the empty member on JH7110 SoC
CVE-2024-50138bpf: Use raw_spinlock_t in ringbuf
CVE-2024-50132tracing/probes: Fix MAX_TRACE_ARGS limit handling
CVE-2024-50127net: sched: fix use-after-free in taprio_change()
CVE-2024-50125Bluetooth: SCO: Fix UAF on sco_sock_timeout
CVE-2024-50126net: sched: use RCU read-side critical section in taprio_dump()
CVE-2024-50124Bluetooth: ISO: Fix UAF on iso_sock_timeout
CVE-2024-50121nfsd: cancel nfsd_shrinker_work using sync mode in nfs4_state_shutdown_net
CVE-2024-50122PCI: Hold rescan lock while adding devices during host probe
CVE-2024-50120smb: client: Handle kstrdup failures for passwords
CVE-2024-50119cifs: fix warning when destroy 'cifs_io_request_pool'
CVE-2024-50118btrfs: reject ro->rw reconfiguration if there are hard ro requirements
CVE-2024-50117drm/amd: Guard against bad data for ATIF ACPI method
CVE-2024-50116nilfs2: fix kernel bug due to missing clearing of buffer delay flag
CVE-2024-50115KVM: nSVM: Ignore nCR3[4:0] when loading PDPTEs from memory

Showing 20 of 50 CVEs. View all on vendor page →

IV. 関連脆弱性

V. CVE-2024-50099へのコメント

まだコメントはありません


コメントを残す