[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

insecure W+X mapping



Hi,

I just noticed after booting into the kernel 5.10.0-16-armmp #1 SMP Debian 
5.10.127-2 (2022-07-23) armv7l GNU/Linux that I get an 

insecure W+X mapping  at address 0xf0879000

and a backtrace during the boot process:

[    5.377591] Registering SWP/SWPB emulation handler
[    5.382640] registered taskstats version 1
[    5.386784] Loading compiled-in X.509 certificates
[    5.787454] Loaded X.509 cert 'Debian Secure Boot CA: 
6ccece7e4c6c0d1f6149f3dd27dfcc5cbb419ea1'
[    5.796311] Loaded X.509 cert 'Debian Secure Boot Signer 2021 - linux: 
4b6ef5abca669825178e052c84667ccbc0531f8c'
[    5.806849] zswap: loaded using pool lzo/zbud
[    5.812253] Key type ._fscrypt registered
[    5.816352] Key type .fscrypt registered
[    5.820314] Key type fscrypt-provisioning registered
[    5.825722] AppArmor: AppArmor sha1 policy hashing enabled
[    5.865627] vcc_3v3: supplied by v_5v0
[    5.895845] Freeing unused kernel memory: 2048K
[    5.913843] ------------[ cut here ]------------
[    5.918527] WARNING: CPU: 0 PID: 1 at arch/arm/mm/dump.c:248 
note_page+0x3d0/0x3dc
[    5.926143] arm/mm: Found insecure W+X mapping at address 0xf0879000
[    5.932529] Modules linked in:
[    5.935629] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.10.0-16-armmp #1 
Debian 5.10.127-2
[    5.943912] Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
[    5.950457] Backtrace: 
[    5.952938] [<c0cf9890>] (dump_backtrace) from [<c0cf9c3c>] 
(show_stack+0x20/0x24)
[    5.960532]  r7:000000f8 r6:60000013 r5:00000000 r4:c14cdda8
[    5.966215] [<c0cf9c1c>] (show_stack) from [<c0cfeec4>] 
(dump_stack+0xc8/0xdc)
[    5.973469] [<c0cfedfc>] (dump_stack) from [<c034ddb0>] (__warn+0xfc/0x158)
[    5.980449]  r7:000000f8 r6:00000009 r5:c031fa38 r4:c0fbe5c8
[    5.986130] [<c034dcb4>] (__warn) from [<c0cfaa18>] 
(warn_slowpath_fmt+0xa4/0xe4)
[    5.993633]  r7:c031fa38 r6:000000f8 r5:c0fbe5c8 r4:c0fbe594
[    5.999311] [<c0cfa978>] (warn_slowpath_fmt) from [<c031fa38>] 
(note_page+0x3d0/0x3dc)
[    6.007251]  r8:00000000 r7:00000000 r6:00000005 r5:c140c4e0 r4:c197ff28
[    6.013971] [<c031f668>] (note_page) from [<c031fb2c>] 
(walk_pmd+0xe8/0x1a4)
[    6.021042]  r10:c197ff28 r9:c0207c20 r8:c1900800 r7:00000000 r6:c0fbe610 
r5:f087b000
[    6.028888]  r4:c19001ec
[    6.031437] [<c031fa44>] (walk_pmd) from [<c031fd2c>] 
(ptdump_check_wx+0x88/0x104)
[    6.039030]  r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:c0208000 
r5:f0800000
[    6.046878]  r4:c0207c28
[    6.049435] [<c031fca4>] (ptdump_check_wx) from [<c0319c14>] 
(mark_rodata_ro+0x3c/0x40)
[    6.057459]  r6:00000000 r5:c0d092cc r4:00000000
[    6.062103] [<c0319bd8>] (mark_rodata_ro) from [<c0d09310>] 
(kernel_init+0x44/0x130)
[    6.069873] [<c0d092cc>] (kernel_init) from [<c03001a8>] 
(ret_from_fork+0x14/0x2c)
[    6.077459] Exception stack(0xc197ffb0 to 0xc197fff8)
[    6.082528] ffa0:                                     00000000 00000000 
00000000 00000000
[    6.090726] ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 
00000000 00000000
[    6.098924] ffe0: 00000000 00000000 00000000 00000000 00000013 00000000
[    6.105553]  r5:c0d092cc r4:00000000
[    6.109187] ---[ end trace 36d095f56a800b3c ]---
[    6.114076] Checked W+X mappings: FAILED, 1 W+X pages found
[    6.119751] Run /init as init process
[    6.847313] gpio_mxc: module verification failed: signature and/or required 
key missing - tainting kernel
[    6.859257] vdd1p1: supplied by regulator-dummy
[    6.871900] v_usb2: supplied by v_5v0
[    6.876972] vdd3p0: supplied by regulator-dummy
[    6.882630] vdd2p5: supplied by regulator-dummy
[    6.887949] vddarm: supplied by regulator-dummy
[    6.893661] vddpu: supplied by regulator-dummy
[    6.898847] vddsoc: supplied by regulator-dummy

I do not observe any functional issue so far though.

Since I have not checked the output of the serial console, I cannot tell when 
the issue started to appear.

There is a similar report here, but is seen on a 5.13 kernel:
https://lore.kernel.org/all/YUn2qpc5iBAIvCsd@shell.armlinux.org.uk/T/

Not sure if it was already present in 5.10, if it got backported or if it is 
entirely unrelated tough.

Any insight is welcome.

Thanks
Rainer


-- 
Rainer Dorsch
http://bokomoko.de/



Reply to: