Linux Kernel hasta 5.12.8 scsi smp_processor_id desbordamiento de búfer

| CVSS Puntuación meta temporal | Precio actual del exploit (≈) | Puntuación de interés CTI |
|---|---|---|
| 5.4 | $0-$5k | 0.00 |
Resumen
Se ha detectado una vulnerabilidad clasificada como crítica en Linux Kernel hasta 5.12.8. Se ve afectada una función desconocida del componente scsi. A través de la manipulación de un input desconocido se causa una vulnerabilidad de clase desbordamiento de búfer. La vulnerabilidad es identificada como CVE-2021-47178. No se encuentra disponible ningún exploit. El mejor modo sugerido para mitigar el problema es actualizar a la última versión.
Detalles
Una vulnerabilidad clasificada como crítica fue encontrada en Linux Kernel hasta 5.12.8. La función smp_processor_id del componente scsi es afectada por esta vulnerabilidad. Por la manipulación de un input desconocido se causa una vulnerabilidad de clase desbordamiento de búfer. Esto tiene repercusión sobre la confidencialidad, integridad y disponibilidad. El resumen de CVE es:
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: scsi: target: core: Evite smp_processor_id() en código interrumpible Se observó el mensaje de ERROR "ERROR: usar smp_processor_id() en código interrumpible [00000000]" para dispositivos TCMU con configuración de kernel DEBUG_PREEMPT. El mensaje se observó cuando se ejecutó blktests block/005 en dispositivos TCMU con backend fileio o usuario:zbc [1]. La confirmación 1130b499b4a7 ("scsi: target: tcm_loop: Use el asistente de envío LIO wq cmd") desencadenó el síntoma. La confirmación modificó la cola de trabajo para manejar comandos y cambió 'current->nr_cpu_allowed' en la llamada a smp_processor_id(). El mensaje también se observó al apagar el sistema cuando los dispositivos TCMU no se limpiaron [2]. La función smp_processor_id() fue llamada en la cola de trabajo del host SCSI para el manejo de abortos y activó el mensaje de ERROR. Este síntoma se observó independientemente de la confirmación 1130b499b4a7 ("scsi: target: tcm_loop: Use el asistente de envío LIO wq cmd"). Para evitar la verificación del código interrumpible en smp_processor_id(), obtenga el ID de la CPU con raw_smp_processor_id() en su lugar. El ID de la CPU se utiliza para mejorar el rendimiento, luego el movimiento del subproceso a otra CPU no afectará el código. [1] [56.468103] ejecute blktests block/005 el 2021-05-12 14:16:38 [57.369473] check_preemption_disabled: 85 devoluciones de llamada suprimidas [57.369480] ERROR: usar smp_processor_id() en código preferente [00000000]: fio/151 1 [ 57.369506] ERROR: usar smp_processor_id() en código interrumpible [00000000]: fio/1510 [57.369512] ERROR: usar smp_processor_id() en código interrumpible [00000000]: fio/1506 [57.369552] la persona que llama es __target_init_cmd+0 x157/0x170 [objetivo_core_mod] [ 57.369606] CPU: 4 PID: 1506 Comm: fio Not tainted 5.13.0-rc1+ #34 [ 57.369613] Nombre del hardware: Fabricante del sistema Nombre del producto del sistema/PRIME Z270-A, BIOS 1302 15/03/2018 [ 57.369617] Seguimiento de llamadas : [57.369621] ERROR: usar smp_processor_id() en código interrumpible [00000000]: fio/1507 [57.369628] dump_stack+0x6d/0x89 [57.369642] check_preemption_disabled+0xc8/0xd0 [57.369628] la persona que llama es __ target_init_cmd+0x157/0x170 [target_core_mod] [ 57.369655] __target_init_cmd+0x157/0x170 [target_core_mod] [ 57.369695] target_init_cmd+0x76/0x90 [target_core_mod] [ 57.369732] tcm_loop_queuecommand+0x109/0x210 [tcm_loop] [ 57 .369744] scsi_queue_rq+0x38e/0xc40 [ 57.369761] __blk_mq_try_issue_directly+0x109/0x1c0 [ 57.369779 ] blk_mq_try_issue_directly+0x43/0x90 [ 57.369790] blk_mq_submit_bio+0x4e5/0x5d0 [ 57.369812] submit_bio_noacct+0x46e/0x4e0 [ 57.369830] __blkdev_direct_IO_simple+0x1a3/0x2 d0 [57.369859]? set_init_blocksize.isra.0+0x60/0x60 [ 57.369880] generic_file_read_iter+0x89/0x160 [ 57.369898] blkdev_read_iter+0x44/0x60 [ 57.369906] new_sync_read+0x102/0x170 [ 57.369929 ] vfs_read+0xd4/0x160 [ 57.369941] __x64_sys_pread64+0x6e/0xa0 [ 57.369946] ? lockdep_hardirqs_on+0x79/0x100 [ 57.369958] do_syscall_64+0x3a/0x70 [ 57.369965] Entry_SYSCALL_64_after_hwframe+0x44/0xae [ 57.369973] RIP: 0033:0x7f7ed4c1399f [ 5 7.369979] Código: 08 89 3c 24 48 89 4c 24 18 e8 7d f3 ff ff 4c 8b 54 24 18 48 8b 54 24 10 41 89 c0 48 8b 74 24 08 8b 3c 24 b8 11 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 31 44 89 c7 48 89 04 24 e8 cd f3 ff ff 48 8b [ 57.369983] RSP: 002b:00007ffd7918c580 EFLAGS: 00000293 ORIG_RAX: 0000000000000011 [ 57.369990] RAX: fffffffffffffffda RBX: 00000000015b4540 RCX: 00 007f7ed4c1399f [ 57.369993] RDX: 0000000000001000 RSI: 00000000015de000 RDI: 000000000000000009 [ 57.369996] RBP: 00000000015b4540 R08: 000 0000000000000 R09: 0000000000000001 [ 57.369999] R10: 0000000000e5c000 R11: 0000000000000293 R12: 00007f7eb5269a70 [ 57.370002] R13: 00000000000000000 R14: 000000000000 1000 R15: 00000000015b4568 [57.370031] CPU: 7 PID: 1507 ---truncado---El advisory puede ser descargado de git.kernel.org. La vulnerabilidad es identificada como CVE-2021-47178. Resulta fácil de explotar. Detalles técnicos son conocidos, pero no hay ningún exploit público disponible.
Una actualización a la versión 5.12.9 o 5.13 elimina esta vulnerabilidad. Aplicando el parche a20b6eaf4f35/70ca3c57ff91 es posible eliminar el problema. El parche puede ser descargado de git.kernel.org. El mejor modo sugerido para mitigar el problema es Actualización.
La vulnerabilidad también está documentado en la base de datos CERT Bund (WID-SEC-2024-0699). Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
Afectado
- Amazon Linux 2
- Red Hat Enterprise Linux
- Ubuntu Linux
- SUSE Linux
- Oracle Linux
- EMC Avamar
- Dell NetWorker
- Open Source Linux Kernel
- IBM Spectrum Protect Plus
Producto
Escribe
Proveedor
Nombre
Versión
Licencia
Sitio web
- Proveedor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Confiabilidad: 🔍
CVSSv3
VulDB Puntuación meta base: 5.5VulDB Puntuación meta temporal: 5.4
VulDB Puntuación base: 5.5
VulDB Puntuación temporal: 5.3
VulDB Vector: 🔍
VulDB Confiabilidad: 🔍
NVD Puntuación base: 5.5
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complejidad | Autenticación | Confidencialidad | Integridad | Disponibilidad |
|---|---|---|---|---|---|
| Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear |
| Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear |
| Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear |
VulDB Puntuación base: 🔍
VulDB Puntuación temporal: 🔍
VulDB Confiabilidad: 🔍
Explotación
Clase: Desbordamiento de búferCWE: CWE-121 / CWE-119
CAPEC: 🔍
ATT&CK: 🔍
Físico: En parte
Local: Sí
Remoto: En parte
Disponibilidad: 🔍
Estado: No está definido
EPSS Score: 🔍
EPSS Percentile: 🔍
Predicción de precios: 🔍
Estimación del precio actual: 🔍
| 0-Day | Desbloquear | Desbloquear | Desbloquear | Desbloquear |
|---|---|---|---|---|
| Hoy | Desbloquear | Desbloquear | Desbloquear | Desbloquear |
Inteligencia de amenazas
Interés: 🔍Actores activos: 🔍
Grupos APT activos: 🔍
Contramedidas
Recomendación: ActualizaciónEstado: 🔍
Hora de 0 días: 🔍
Actualización: Kernel 5.12.9/5.13
Parche: a20b6eaf4f35/70ca3c57ff91
Línea de tiempo
2024-03-25 🔍2024-03-25 🔍
2024-03-25 🔍
2025-08-04 🔍
Fuentes
Proveedor: kernel.orgAviso: git.kernel.org
Estado: Confirmado
CVE: CVE-2021-47178 (🔍)
GCVE (CVE): GCVE-0-2021-47178
GCVE (VulDB): GCVE-100-257849
CERT Bund: WID-SEC-2024-0699 - Linux-Kernel: Mehrere Schwachstellen ermöglichen Denial of Service und unspezifische Angriffe
Artículo
Fecha de creación: 2024-03-25 10:53Actualizado: 2025-08-04 10:58
Cambios: 2024-03-25 10:53 (57), 2024-05-04 14:06 (1), 2025-03-17 16:46 (12), 2025-08-04 10:58 (7)
Completo: 🔍
Cache ID: 216::103
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
Sin comentarios aún. Idiomas: es + pt + en.
Por favor, inicie sesión para comentar.