Linux kernel の脆弱性
概要
Linux kernel に 脆弱性 (CVE-2024-47702) が存在。悪用されるとシステム全体を乗っ取られる可能性があります。
自動生成の要約
取得元のデータ (CVSS・CWE・影響バージョンなど) から SecPulse が定型文で組み立てた要約です。AI は使っていません。正確な内容は下の原文と参照URLで確認してください。
Linux kernel という製品で、CVE-2024-47702 という番号がついた弱点 (脆弱性) が見つかりました。
悪用されるとシステム全体を乗っ取られる可能性があります。重要度は CVSS スコア 7.8/10 です。
対策: ベンダー公式の修正版に更新してください。
心配なら、システム担当者や製品の公式サイトで「Linux kernel CVE-2024-47702」を検索してください。
CVE-2024-47702 (Linux kernel) — CVSS v3 7.8
攻撃ベクター: ローカル / 被害者操作不要
対応方針: 1) SBOMで影響バージョン横断確認, 2) ステージング検証→本番更新, 3) WAF/プロキシで該当エンドポイントを監視, 4) ログでIOC調査。
参考: 当ページの『参照URL』の GHSA / vendor advisory / patched release を参照。
Linux kernel に 脆弱性 (分類未定) があります。
Linux kernel の影響バージョンはベンダーのアドバイザリで確認してください。
重要度: 重要 (CVSS 7.8/10)。悪用されるとシステム全体を乗っ取られる可能性があります。
ベンダー公式アドバイザリの修正版に更新してください。
修正版が未提供時は、影響機能の無効化・WAFルール・ネットワークACLでの遮断を検討。
Webサーバ・プロキシ・WAFログで該当CVEのIOCに合致する不審リクエストを検索。SBOM/依存ファイルで影響バージョンを横断確認。
対応アクション
SOC/SREチームが順番に実行すべき具体的なステップとコマンド例
-
1
影響範囲の特定identify
Audit SBOM/dependencies for affected components.資産台帳・SBOM・依存マニフェストで Linux kernel を使っているサービスとバージョンを洗い出す。
-
2
事後検証verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。
影響パッケージ
| 種類 | パッケージ | 影響を受ける版 | 直った版 |
|---|---|---|---|
| Linux | Kernel |
6.6.0 以上 6.6.158 未満 6.7.0 以上 6.10.13 未満 6.11.0 以上 6.11.2 未満 |
6.6.158 6.10.13 6.11.2 |
ディストリビューション別の修正状況
各ディストリビューションが公開している、この CVE の修正パッケージ
- Debian DEBIAN-CVE-2024-47702 linux 修正版: 6.11.2-1
- Ubuntu UBUNTU-CVE-2024-47702 linux-hwe-edge
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。
In the Linux kernel, the following vulnerability has been resolved:
bpf: Fail verification for sign-extension of packet data/data_end/data_meta
syzbot reported a kernel crash due to
commit 1f1e864b6555 ("bpf: Handle sign-extenstin ctx member accesses").
The reason is due to sign-extension of 32-bit load for
packet data/data_end/data_meta uapi field.
The original code looks like:
r2 = *(s32 )(r1 + 76) / load __sk_buff->data */
r3 = *(u32 )(r1 + 80) / load __sk_buff->data_end */
r0 = r2
r0 += 8
if r3 > r0 goto +1
...
Note that __sk_buff->data load has 32-bit sign extension.
After verification and convert_ctx_accesses(), the final asm code looks like:
r2 = *(u64 *)(r1 +208)
r2 = (s32)r2
r3 = *(u64 *)(r1 +80)
r0 = r2
r0 += 8
if r3 > r0 goto pc+1
...
Note that 'r2 = (s32)r2' may make the kernel __sk_buff->data address invalid
which may cause runtime failure.
Currently, in C code, typically we have
void *data = (void *)(long)skb->data;
void *data_end = (void *)(long)skb->data_end;
...
and it will generate
r2 = *(u64 *)(r1 +208)
r3 = *(u64 *)(r1 +80)
r0 = r2
r0 += 8
if r3 > r0 goto pc+1
If we allow sign-extension,
void *data = (void *)(long)(int)skb->data;
void *data_end = (void *)(long)skb->data_end;
...
the generated code looks like
r2 = *(u64 *)(r1 +208)
r2 <<= 32…
出典: NIST National Vulnerability Database NVD GitHub Advisory
参照URL
- advisory nvd.nist.gov
- advisory github.com
- package git.kernel.org
- web git.kernel.org
- web git.kernel.org
- web git.kernel.org
- web git.kernel.org
- web github.com