|
Message-ID: <CAHsHv-YoOf3jYV=jGgn7Ep1LknAJrfSJUOx=2HqqGtb6bQq-0Q@mail.gmail.com>
Date: Thu, 20 Dec 2018 11:53:05 +0100
From: bryn1u85 <m.bryn1u@...il.com>
To: lkrg-users@...ts.openwall.com
Subject: Re: insmod: ERROR: could not insert module p_lkrg.ko: No
buffer space available
@Adam
I recompiled kernel with enabled options KPROBE. After all i compiled lkgr.
When i do a insomd im getting so weird output in dmesg:
[ 5.115150] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 42.423441] p_lkrg: loading out-of-tree module taints kernel.
[ 42.423830] p_lkrg: module verification failed: signature and/or
required key missing - tainting kernel
[ 42.425265] [p_lkrg] Loading LKRG...
[ 247.029037] INFO: task kworker/1:0:18 blocked for more than 120 seconds.
[ 247.031491] Tainted: G OE 4.19.10 #1
[ 247.032083] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables
this message.
> [ 247.032666] kworker/1:0 D 0 18 2 0x80000000
>
[ 247.032682] Workqueue: events once_deferred
[ 247.032683] Call Trace:
[ 247.032689] ? __schedule+0x2b8/0x780
[ 247.032691] schedule+0x2d/0x80
[ 247.032692] schedule_preempt_disabled+0x5/0x10
[ 247.032694] __mutex_lock.isra.8+0x199/0x4d0
[ 247.032697] ? ttwu_do_wakeup+0x12/0xe0
[ 247.032700] static_key_disable_cpuslocked+0x2a/0x70
[ 247.032702] static_key_disable+0x11/0x20
[ 247.032703] once_deferred+0x1a/0x30
[ 247.032705] process_one_work+0x16a/0x2d0
[ 247.032706] worker_thread+0x44/0x3e0
[ 247.032708] kthread+0xee/0x120
[ 247.032709] ? max_active_store+0x80/0x80
[ 247.032710] ? kthread_bind+0x10/0x10
[ 247.032712] ret_from_fork+0x35/0x40
[ 247.032719] INFO: task kworker/1:1:70 blocked for more than 120 seconds.
[ 247.033305] Tainted: G OE 4.19.10 #1
[ 247.033897] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables
this message.
[ 247.034456] kworker/1:1 D 0 70 2 0x80000000
[ 247.034460] Workqueue: events once_deferred
[ 247.034460] Call Trace:
[ 247.034463] ? __schedule+0x2b8/0x780
[ 247.034464] ? __switch_to_asm+0x40/0x70
[ 247.034465] schedule+0x2d/0x80
[ 247.034466] schedule_preempt_disabled+0x5/0x10
[ 247.034467] __mutex_lock.isra.8+0x199/0x4d0
[ 247.034468] ? __switch_to_asm+0x34/0x70
[ 247.034469] ? __switch_to_asm+0x34/0x70
[ 247.034470] ? __switch_to_asm+0x40/0x70
[ 247.034472] static_key_disable_cpuslocked+0x2a/0x70
[ 247.034473] static_key_disable+0x11/0x20
[ 247.034475] once_deferred+0x1a/0x30
[ 247.034476] process_one_work+0x16a/0x2d0
[ 247.034478] worker_thread+0x44/0x3e0
[ 247.034479] kthread+0xee/0x120
[ 247.034480] ? max_active_store+0x80/0x80
[ 247.034481] ? kthread_bind+0x10/0x10
[ 247.034482] ret_from_fork+0x35/0x40
[ 247.034485] INFO: task kworker/4:2:186 blocked for more than 120 seconds.
[ 247.035030] Tainted: G OE 4.19.10 #1
[ 247.035574] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables
this message.
[ 247.036139] kworker/4:2 D 0 186 2 0x80000000
[ 247.036143] Workqueue: events netstamp_clear
[ 247.036144] Call Trace:
[ 247.036145] ? __schedule+0x2b8/0x780
[ 247.036146] ? __switch_to_asm+0x40/0x70
[ 247.036147] schedule+0x2d/0x80
[ 247.036148] schedule_preempt_disabled+0x5/0x10
[ 247.036149] __mutex_lock.isra.8+0x199/0x4d0
[ 247.036150] ? __switch_to_asm+0x34/0x70
[ 247.036151] ? __switch_to_asm+0x34/0x70
[ 247.036153] static_key_enable_cpuslocked+0x28/0x80
[ 247.036154] static_key_enable+0x11/0x20
[ 247.036155] process_one_work+0x16a/0x2d0
[ 247.036156] worker_thread+0x44/0x3e0
[ 247.036157] kthread+0xee/0x120
[ 247.036159] ? max_active_store+0x80/0x80
[ 247.036160] ? kthread_bind+0x10/0x10
[ 247.036161] ret_from_fork+0x35/0x40
[ 247.036163] INFO: task kworker/1:2:312 blocked for more than 120 seconds.
[ 247.036745] Tainted: G OE 4.19.10 #1
[ 247.037337] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables
this message.
[ 247.037948] kworker/1:2 D 0 312 2 0x80000000
[ 247.037951] Workqueue: events once_deferred
[ 247.037951] Call Trace:
[ 247.037953] ? __schedule+0x2b8/0x780
[ 247.037954] ? __switch_to_asm+0x40/0x70
[ 247.037955] schedule+0x2d/0x80
[ 247.037956] schedule_preempt_disabled+0x5/0x10
[ 247.037957] __mutex_lock.isra.8+0x199/0x4d0
[ 247.037958] ? __switch_to_asm+0x34/0x70
[ 247.037960] ? __switch_to_asm+0x34/0x70
[ 247.037961] ? __switch_to_asm+0x40/0x70
[ 247.037962] static_key_disable_cpuslocked+0x2a/0x70
[ 247.037964] static_key_disable+0x11/0x20
[ 247.037965] once_deferred+0x1a/0x30
[ 247.037966] process_one_work+0x16a/0x2d0
[ 247.037967] worker_thread+0x44/0x3e0
[ 247.037968] kthread+0xee/0x120
[ 247.037969] ? max_active_store+0x80/0x80
[ 247.037970] ? kthread_bind+0x10/0x10
[ 247.037971] ret_from_fork+0x35/0x40
[ 247.037979] INFO: task kworker/6:2:571 blocked for more than 120 seconds.
[ 247.038583] Tainted: G OE 4.19.10 #1
[ 247.039205] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables
this message.
[ 247.039845] kworker/6:2 D 0 571 2 0x80000000
[ 247.039847] Workqueue: events kprobe_optimizer
[ 247.039848] Call Trace:
[ 247.039850] ? __schedule+0x2b8/0x780
[ 247.039850] schedule+0x2d/0x80
[ 247.039851] schedule_preempt_disabled+0x5/0x10
[ 247.039852] __mutex_lock.isra.8+0x199/0x4d0
[ 247.039855] ? synchronize_sched+0x55/0x80
[ 247.039856] ? __call_rcu+0x280/0x280
[ 247.039857] kprobe_optimizer+0x15b/0x290
[ 247.039858] process_one_work+0x16a/0x2d0
[ 247.039859] worker_thread+0x44/0x3e0
[ 247.039860] kthread+0xee/0x120
[ 247.039861] ? max_active_store+0x80/0x80
[ 247.039862] ? kthread_bind+0x10/0x10
[ 247.039863] ret_from_fork+0x35/0x40
[ 247.039872] INFO: task insmod:5275 blocked for more than 120 seconds.
[ 247.040500] Tainted: G OE 4.19.10 #1
[ 247.041178] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables
this message.
[ 247.041845] insmod D 0 5275 4188 0x80000084
[ 247.041846] Call Trace:
[ 247.041848] ? __schedule+0x2b8/0x780
[ 247.041849] schedule+0x2d/0x80
[ 247.041850] schedule_preempt_disabled+0x5/0x10
[ 247.041851] __mutex_lock.isra.8+0x199/0x4d0
[ 247.041857] ? p_lkrg_fast_hash+0x24f/0x340 [p_lkrg]
[ 247.041858] ? 0xffffffffc0693000
[ 247.041861] p_create_database+0x1af/0x440 [p_lkrg]
[ 247.041862] ? 0xffffffffc0693000
[ 247.041864] p_lkrg_register+0xea/0x1000 [p_lkrg]
[ 247.041867] do_one_initcall+0x47/0x1ac
[ 247.041870] ? do_init_module+0x18/0x1e7
[ 247.041871] ? kmem_cache_alloc+0x129/0x160
[ 247.041873] do_init_module+0x50/0x1e7
[ 247.041874] load_module+0x1801/0x1c80
[ 247.041876] ? __symbol_put+0x50/0x50
[ 247.041878] ? security_capable+0x3a/0x50
[ 247.041879] __do_sys_finit_module+0x94/0xe0
[ 247.041881] do_syscall_64+0x6f/0x2fc
[ 247.041883] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 247.041884] RIP: 0033:0x7faf389911c9
[ 247.041890] Code: Bad RIP value.
[ 247.041890] RSP: 002b:00007fff03ecca38 EFLAGS: 00000202 ORIG_RAX:
0000000000000139
[ 247.041891] RAX: ffffffffffffffda RBX: 000000000063a240 RCX:
00007faf389911c9
[ 247.041892] RDX: 0000000000000000 RSI: 000000000041a94e RDI:
0000000000000003
[ 247.041892] RBP: 000000000041a94e R08: 0000000000000000 R09:
00007fff03eccbd8
[ 247.041893] R10: 0000000000000003 R11: 0000000000000202 R12:
0000000000000000
[ 247.041894] R13: 000000000063a210 R14: 0000000000000000 R15:
0000000000000000
[ 369.908509] INFO: task kworker/1:0:18 blocked for more than 120 seconds.
[ 369.910436] Tainted: G OE 4.19.10 #1
[ 369.911172] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables
this message.
[ 369.912150] kworker/1:0 D 0 18 2 0x80000000
[ 369.912157] Workqueue: events once_deferred
[ 369.912161] Call Trace:
[ 369.912166] ? __schedule+0x2b8/0x780
[ 369.912168] schedule+0x2d/0x80
[ 369.912170] schedule_preempt_disabled+0x5/0x10
[ 369.912171] __mutex_lock.isra.8+0x199/0x4d0
[ 369.912175] ? ttwu_do_wakeup+0x12/0xe0
[ 369.912178] static_key_disable_cpuslocked+0x2a/0x70
[ 369.912179] static_key_disable+0x11/0x20
[ 369.912181] once_deferred+0x1a/0x30
[ 369.912183] process_one_work+0x16a/0x2d0
[ 369.912184] worker_thread+0x44/0x3e0
[ 369.912187] kthread+0xee/0x120
[ 369.912188] ? max_active_store+0x80/0x80
[ 369.912189] ? kthread_bind+0x10/0x10
[ 369.912191] ret_from_fork+0x35/0x40
[ 369.912198] INFO: task kworker/1:1:70 blocked for more than 120 seconds.
[ 369.913554] Tainted: G OE 4.19.10 #1
[ 369.914396] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables
this message.
[ 369.915130] kworker/1:1 D 0 70 2 0x80000000
[ 369.915135] Workqueue: events once_deferred
[ 369.915136] Call Trace:
[ 369.915148] ? __schedule+0x2b8/0x780
[ 369.915151] ? __switch_to_asm+0x40/0x70
[ 369.915153] schedule+0x2d/0x80
[ 369.915154] schedule_preempt_disabled+0x5/0x10
[ 369.915155] __mutex_lock.isra.8+0x199/0x4d0
[ 369.915157] ? __switch_to_asm+0x34/0x70
[ 369.915158] ? __switch_to_asm+0x34/0x70
[ 369.915159] ? __switch_to_asm+0x40/0x70
[ 369.915161] static_key_disable_cpuslocked+0x2a/0x70
[ 369.915163] static_key_disable+0x11/0x20
[ 369.915164] once_deferred+0x1a/0x30
[ 369.915166] process_one_work+0x16a/0x2d0
[ 369.915167] worker_thread+0x44/0x3e0
[ 369.915169] kthread+0xee/0x120
[ 369.915170] ? max_active_store+0x80/0x80
[ 369.915171] ? kthread_bind+0x10/0x10
[ 369.915173] ret_from_fork+0x35/0x40
[ 369.915176] INFO: task kworker/4:2:186 blocked for more than 120 seconds.
[ 369.916475] Tainted: G OE 4.19.10 #1
[ 369.917355] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables
this message.
[ 369.918123] kworker/4:2 D 0 186 2 0x80000000
[ 369.918128] Workqueue: events netstamp_clear
[ 369.918129] Call Trace:
[ 369.918131] ? __schedule+0x2b8/0x780
[ 369.918133] ? __switch_to_asm+0x40/0x70
[ 369.918136] schedule+0x2d/0x80
[ 369.918137] schedule_preempt_disabled+0x5/0x10
[ 369.918139] __mutex_lock.isra.8+0x199/0x4d0
[ 369.918140] ? __switch_to_asm+0x34/0x70
[ 369.918142] ? __switch_to_asm+0x34/0x70
[ 369.918143] static_key_enable_cpuslocked+0x28/0x80
[ 369.918145] static_key_enable+0x11/0x20
[ 369.918146] process_one_work+0x16a/0x2d0
[ 369.918147] worker_thread+0x44/0x3e0
[ 369.918149] kthread+0xee/0x120
[ 369.918150] ? max_active_store+0x80/0x80
[ 369.918151] ? kthread_bind+0x10/0x10
[ 369.918153] ret_from_fork+0x35/0x40
[ 369.918155] INFO: task kworker/1:2:312 blocked for more than 120 seconds.
[ 369.919635] Tainted: G OE 4.19.10 #1
[ 369.920421] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables
this message.
[ 369.921180] kworker/1:2 D 0 312 2 0x80000000
[ 369.921184] Workqueue: events once_deferred
[ 369.921184] Call Trace:
[ 369.921187] ? __schedule+0x2b8/0x780
[ 369.921189] ? __switch_to_asm+0x40/0x70
[ 369.921190] schedule+0x2d/0x80
[ 369.921192] schedule_preempt_disabled+0x5/0x10
[ 369.921193] __mutex_lock.isra.8+0x199/0x4d0
[ 369.921194] ? __switch_to_asm+0x34/0x70
[ 369.921195] ? __switch_to_asm+0x34/0x70
[ 369.921196] ? __switch_to_asm+0x40/0x70
[ 369.921198] static_key_disable_cpuslocked+0x2a/0x70
[ 369.921200] static_key_disable+0x11/0x20
[ 369.921201] once_deferred+0x1a/0x30
[ 369.921202] process_one_work+0x16a/0x2d0
[ 369.921204] worker_thread+0x44/0x3e0
[ 369.921205] kthread+0xee/0x120
[ 369.921206] ? max_active_store+0x80/0x80
[ 369.921207] ? kthread_bind+0x10/0x10
[ 369.921209] ret_from_fork+0x35/0x40
czw., 20 gru 2018 o 03:24 Adam Zabrocki <pi3@....com.pl> napisał(a):
> Hi,
>
> I've just checked 4.19.10 kernel under Ubuntu:
>
> root@...-ubuntu:~/zzz/bypass/legit/new-mitigation/lkrg-main#
> insmod output/p_lkrg.ko p_init_log_level=0
> root@...-ubuntu:~/zzz/bypass/legit/new-mitigation/lkrg-main#
> dmesg|tail
> [ 951.305810] hv_balloon: Balloon request will be partially
> fulfilled. Balloon floor reached.
> [ 1251.307384] hv_balloon: Balloon request will be partially
> fulfilled. Balloon floor reached.
> [ 1454.690891] p_lkrg: loading out-of-tree module taints kernel.
> [ 1454.690940] p_lkrg: module verification failed: signature
> and/or required key missing - tainting kernel
> [ 1454.692507] [p_lkrg] Loading LKRG...
> [ 1455.286597] [p_lkrg] LKRG initialized successfully!
> root@...-ubuntu:~/zzz/bypass/legit/new-mitigation/lkrg-main#
> uname -a
> Linux pi3-ubuntu 4.19.10-041910-generic #201812170433 SMP Mon Dec
> 17 09:35:34 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
> root@...-ubuntu:~/zzz/bypass/legit/new-mitigation/lkrg-main#
>
> so everything works fine. Kernel which I've used is this one:
>
> https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.19.10/
>
> I believe you have not standard configuration of your kernel (like
> previously
> you've enabled dynamic kernel module support but at the same time you've
> disabled unloading of them - CONFIG_MODULE_UNLOAD=n).
>
> Nevertheless, I suspect you did not use CONFIG_ARCH_HAS_SYSCALL_WRAPPER
> which
> is enabled by default on all modern kernels. LKRG should correctly detect
> that
> but I've missed that you can still compile new kernels (4.17+) without
> CONFIG_ARCH_HAS_SYSCALL_WRAPPER. I will try to address it soon.
>
> Until I do it, you can try to compile kernel with that CONFIG option or
> manually change LKRG code. You can fix it by replacing following line of
> code
> in "lkrg-main/src/modules/exploit_detection/p_exploit_detection.h" file:
>
> - #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,17,0)
> + #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,17,0) &&
> defined(CONFIG_ARCH_HAS_SYSCALL_WRAPPER)
>
> Thanks,
> Adam
>
> On Wed, Dec 19, 2018 at 11:35:27AM +0100, bryn1u85 wrote:
> > My output.
> >
> > [root@...alhost lkrg-main]# dmesg | tail -20
> > [ 3.836920] cryptd: max_cpu_qlen set to 1000
> > [ 3.851179] AVX2 version of gcm_enc/dec engaged.
> > [ 3.851180] AES CTR mode by8 optimization enabled
> > [ 3.905981] EXT4-fs (vda1): mounted filesystem with ordered data mode.
> > Opts: (null)
> > [ 4.125758] Adding 7077884k swap on /dev/mapper/centos-swap.
> > Priority:-2 extents:1 across:7077884k FS
> > [ 4.757109] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
> > [ 11.546012] random: crng init done
> > [ 11.546017] random: 7 urandom warning(s) missed due to ratelimiting
> > [ 296.265199] p_lkrg: loading out-of-tree module taints kernel.
> > [ 296.265283] p_lkrg: module verification failed: signature and/or
> > required key missing - tainting kernel
> > [ 296.266610] [p_lkrg] Loading LKRG...
> > [ 296.302774] [p_lkrg] Can't initialize exploit detection features!
> > Exiting...
> > [ 315.920095] [p_lkrg] Loading LKRG...
> > [ 315.950728] [p_lkrg] Can't initialize exploit detection features!
> > Exiting...
> > [ 342.557674] [p_lkrg] Loading LKRG...
> > [ 342.589567] [p_lkrg] Can't initialize exploit detection features!
> > Exiting...
> > [41040.104115] [p_lkrg] Loading LKRG...
> > [41040.117676] [p_lkrg] [kretprobe] register_kretprobe() for
> > <__x64_sys_execve> failed! [err=-38]
> > [41040.118335] [p_lkrg] ERROR: Can't hook execve syscall :(
> > [41040.139079] [p_lkrg] Can't initialize exploit detection features!
> > Exiting...
> > [root@...alhost lkrg-main]#
> >
> >
> > śr., 19 gru 2018 o 03:51 Adam Zabrocki <pi3@....com.pl> napisał(a):
> >
> > > On Tue, Dec 18, 2018 at 09:03:44PM +0100, bryn1u85 wrote:
> > > > hey guys,
> > > >
> > > > I recompiled kernel to kernel-4.19.10. After that im trying to run
> lkrg
> > > but
> > > > im getting errors like below:
> > > >
> > > >
> > > > [root@...alhost output]# insmod p_lkrg.ko
> > > > insmod: ERROR: could not insert module p_lkrg.ko: No buffer space
> > > available
> > > > [root@...alhost output]#
> > > >
> > > > [ 97.954081] p_lkrg: loading out-of-tree module taints kernel.
> > > > [ 97.954346] p_lkrg: module verification failed: signature and/or
> > > > required key missing - tainting kernel
> > > > [ 97.955845] [p_lkrg] Loading LKRG...
> > > > [ 97.990086] [p_lkrg] Can't initialize exploit detection features!
> > > > Exiting...
> > > > [root@...alhost output]#
> > > >
> > > > What can i do in this situation ?
> > > > Thanks !
> > >
> > > Hi,
> > >
> > > I believe you've already asked the same question a few times.
> > > Alexander replied to you here:
> > >
> > > https://www.openwall.com/lists/lkrg-users/2018/12/06/1
> > >
> > > Additionally, that can be useful for you too:
> > >
> > >
> > >
> https://forums.gentoo.org/viewtopic-p-8247498.html?sid=72c22d571ef610bb77a41150177a2939#8247498
> > >
> > > In short:
> > >
> > > "For the future reference, if you would like to know why LKRG fails
> > > initialization you can try this simple scenario:
> > > LKRG module has a parameter p_init_log_level which defines default
> > > log_level
> > > which is going to be used during initialization. You can read more
> about
> > > log_level option (and in general about communication channel) here:
> > >
> > > https://openwall.info/wiki/p_lkrg/Examples#Communication-channel
> > >
> > > In short it might be a number between 0-4 or 0-6 (if debugging
> compilation
> > > was
> > > used). If LKRG fails initialization I'm suggesting to use at least
> > > number 4 for this parameter (e.g. # insmod p_lkrg.ko
> p_init_log_level=4).
> > > It
> > > will give more information about the root of the problem. If debug
> option
> > > is
> > > enabled number 5 and 6 is also available but you need to be carefully
> > > using it
> > > to not spam the kernel with too many logs."
> > >
> > > Thanks,
> > > Adam
> > >
> > > --
> > > pi3 (pi3ki31ny) - pi3 (at) itsec pl
> > > http://pi3.com.pl
> > >
>
> --
> pi3 (pi3ki31ny) - pi3 (at) itsec pl
> http://pi3.com.pl
>
Content of type "text/html" skipped
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.