|
|
Message-ID: <20201230223917.GA11479@pi3.com.pl>
Date: Wed, 30 Dec 2020 23:39:17 +0100
From: Adam Zabrocki <pi3@....com.pl>
To: lkrg-users@...ts.openwall.com
Subject: Re: LKRG build error on Linux-5.10.x
Hi,
It should be fixed with the latest commit.
Thanks for report!
- Adam
On Wed, Dec 30, 2020 at 05:23:28AM +0100, Jacek wrote:
> Hi
>
> LKRG commit:
>
> commit 58b9ec06e52ccf55132f72cab988d5ec043ef13c (HEAD -> main, origin/main,
> origin/HEAD)
> Author: Adam_pi3 <pi3@....com.pl>
> Date: Tue Dec 29 18:21:39 2020 -0500
>
> Integrate LKRG with 'out-of-tree' framework
>
> Mikhail Klementev created an amazing framework which allows to
> automatically
> verify LKRG under various kernel versions. Let's integrate LKRG's
> code-base
> with it. We also have a simple configuration file to run it under
> simulated
> Ubuntu 18.04 environment.
> ~
>
> My OS:
>
> cat /proc/version
> Linux version 5.10.3-g1 (root@...ek) (gcc (Gentoo Hardened 9.3.0-r2 p4)
> 9.3.0, GNU ld (Gentoo 2.34 p6) 2.34.0) #1 SMP PREEMPT Mon Dec 28 01:07:43
> CET 2020
>
> LKRG build log:
>
> # root ~> make
> make -C /lib/modules/5.10.3-g1/build M=/ssdtmp/lkrg modules
> make[1]: Wejście do katalogu
> '/ssdtmp/fabryka/kernel/src64/linux-5.10.3-gentoo'
> CC [M] /ssdtmp/lkrg/src/modules/ksyms/p_resolve_ksym.o
> /ssdtmp/lkrg/src/modules/ksyms/p_resolve_ksym.c: In function
> ‘p_find_isra_name’:
> /ssdtmp/lkrg/src/modules/ksyms/p_resolve_ksym.c:29:9: note: byref variable
> will be forcibly initialized
> 29 | char p_buf2[0x100];
> | ^~~~~~
> /ssdtmp/lkrg/src/modules/ksyms/p_resolve_ksym.c:28:9: note: byref variable
> will be forcibly initialized
> 28 | char p_buf[0x100];
> | ^~~~~
> /ssdtmp/lkrg/src/modules/ksyms/p_resolve_ksym.c: In function
> ‘get_kallsyms_address’:
> /ssdtmp/lkrg/src/modules/ksyms/p_resolve_ksym.c:83:18: note: byref variable
> will be forcibly initialized
> 83 | struct kprobe p_kprobe;
> | ^~~~~~~~
> CC [M] /ssdtmp/lkrg/src/modules/hashing/p_lkrg_fast_hash.o
> /ssdtmp/lkrg/src/modules/hashing/p_lkrg_fast_hash.c: In function
> ‘p_lkrg_fast_hash’:
> /ssdtmp/lkrg/src/modules/hashing/p_lkrg_fast_hash.c:31:13: note: byref
> variable will be forcibly initialized
> 31 | uint64_t p_tmp = 0;
> | ^~~~~
> CC [M] /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.o
> In file included from
> /ssdtmp/lkrg/src/modules/comm_channel/../../p_lkrg_main.h:323,
> from
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c:18:
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c: In function
> ‘p_lkrg_close_rw’:
> /ssdtmp/lkrg/src/modules/comm_channel/../../modules/wrap/p_struct_wrap.h:353:20:
> note: byref variable will be forcibly initialized
> 353 | static inline void p_lkrg_close_rw(void) {
> | ^~~~~~~~~~~~~~~
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c: In function
> ‘p_lkrg_open_rw’:
> /ssdtmp/lkrg/src/modules/comm_channel/../../modules/wrap/p_struct_wrap.h:338:20:
> note: byref variable will be forcibly initialized
> 338 | static inline void p_lkrg_open_rw(void) {
> | ^~~~~~~~~~~~~~
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c: In function
> ‘p_sysctl_pcfi_enforce’:
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c:888:10: note: byref
> variable will be forcibly initialized
> 888 | char *p_str[] = {
> | ^~~~~
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c: In function
> ‘p_sysctl_umh_enforce’:
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c:791:10: note: byref
> variable will be forcibly initialized
> 791 | char *p_str[] = {
> | ^~~~~
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c: In function
> ‘p_sysctl_pint_enforce’:
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c:459:10: note: byref
> variable will be forcibly initialized
> 459 | char *p_str[] = {
> | ^~~~~
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c: In function
> ‘p_sysctl_pint_validate’:
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c:428:10: note: byref
> variable will be forcibly initialized
> 428 | char *p_str[] = {
> | ^~~~~
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c: In function
> ‘p_sysctl_kint_enforce’:
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c:389:10: note: byref
> variable will be forcibly initialized
> 389 | char *p_str[] = {
> | ^~~~~
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c: In function
> ‘p_sysctl_kint_validate’:
> /ssdtmp/lkrg/src/modules/comm_channel/p_comm_channel.c:352:10: note: byref
> variable will be forcibly initialized
> 352 | char *p_str[] = {
> | ^~~~~
> CC [M] /ssdtmp/lkrg/src/modules/integrity_timer/p_integrity_timer.o
> /ssdtmp/lkrg/src/modules/integrity_timer/p_integrity_timer.c: In function
> ‘p_check_integrity’:
> /ssdtmp/lkrg/src/modules/integrity_timer/p_integrity_timer.c:112:23: note:
> byref variable will be forcibly initialized
> 112 | p_module_kobj_mem *p_module_kobj_tmp = NULL;
> | ^~~~~~~~~~~~~~~~~
> /ssdtmp/lkrg/src/modules/integrity_timer/p_integrity_timer.c:111:23: note:
> byref variable will be forcibly initialized
> 111 | p_module_list_mem *p_module_list_tmp = NULL;
> | ^~~~~~~~~~~~~~~~~
> /ssdtmp/lkrg/src/modules/integrity_timer/p_integrity_timer.c:110:17: note:
> byref variable will be forcibly initialized
> 110 | unsigned int p_module_kobj_nr_tmp; // Count by walk through the
> list first
> | ^~~~~~~~~~~~~~~~~~~~
> /ssdtmp/lkrg/src/modules/integrity_timer/p_integrity_timer.c:109:17: note:
> byref variable will be forcibly initialized
> 109 | unsigned int p_module_list_nr_tmp; // Count by walk through the
> list first
> | ^~~~~~~~~~~~~~~~~~~~
> /ssdtmp/lkrg/src/modules/integrity_timer/p_integrity_timer.c:107:15: note:
> byref variable will be forcibly initialized
> 107 | p_cpu_info p_tmp_cpu_info;
> | ^~~~~~~~~~~~~~
> CC [M] /ssdtmp/lkrg/src/modules/kmod/p_kmod.o
> In file included from /ssdtmp/lkrg/src/modules/kmod/../../p_lkrg_main.h:323,
> from /ssdtmp/lkrg/src/modules/kmod/p_kmod.c:22:
> /ssdtmp/lkrg/src/modules/kmod/p_kmod.c: In function ‘p_lkrg_close_rw’:
> /ssdtmp/lkrg/src/modules/kmod/../../modules/wrap/p_struct_wrap.h:353:20:
> note: byref variable will be forcibly initialized
> 353 | static inline void p_lkrg_close_rw(void) {
> | ^~~~~~~~~~~~~~~
> /ssdtmp/lkrg/src/modules/kmod/p_kmod.c: In function ‘p_lkrg_open_rw’:
> /ssdtmp/lkrg/src/modules/kmod/../../modules/wrap/p_struct_wrap.h:338:20:
> note: byref variable will be forcibly initialized
> 338 | static inline void p_lkrg_open_rw(void) {
> | ^~~~~~~~~~~~~~
> CC [M] /ssdtmp/lkrg/src/modules/database/CPU.o
> CC [M] /ssdtmp/lkrg/src/modules/database/arch/x86/p_x86_metadata.o
> /ssdtmp/lkrg/src/modules/database/arch/x86/p_x86_metadata.c: In function
> ‘p_dump_x86_metadata’:
> /ssdtmp/lkrg/src/modules/database/arch/x86/p_x86_metadata.c:76:18: note:
> byref variable will be forcibly initialized
> 76 | unsigned char p_idtr[0xA];
> | ^~~~~~
> CC [M]
> /ssdtmp/lkrg/src/modules/database/arch/x86/p_switch_idt/p_switch_idt.o
> CC [M] /ssdtmp/lkrg/src/modules/database/arch/arm64/p_arm64_metadata.o
> CC [M] /ssdtmp/lkrg/src/modules/database/arch/arm/p_arm_metadata.o
> CC [M] /ssdtmp/lkrg/src/modules/database/arch/p_arch_metadata.o
> CC [M] /ssdtmp/lkrg/src/modules/database/JUMP_LABEL/p_arch_jump_label_transform/p_arch_jump_label_transform.o
> CC [M] /ssdtmp/lkrg/src/modules/database/JUMP_LABEL/p_arch_jump_label_transform_apply/p_arch_jump_label_transform_apply.o
> CC [M] /ssdtmp/lkrg/src/modules/database/FTRACE/p_ftrace_modify_all_code/p_ftrace_modify_all_code.o
> CC [M] /ssdtmp/lkrg/src/modules/database/FTRACE/p_ftrace_enable_sysctl/p_ftrace_enable_sysctl.o
> CC [M] /ssdtmp/lkrg/src/modules/database/p_database.o
> CC [M] /ssdtmp/lkrg/src/modules/notifiers/p_notifiers.o
> CC [M] /ssdtmp/lkrg/src/modules/self-defense/hiding/p_hiding.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/p_rb_ed_trees/p_rb_ed_pids/p_rb_ed_pids_tree.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_install.o
> /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_install.c: In function
> ‘p_install_hook’:
> /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_install.c:27:27: note:
> byref variable will be forcibly initialized
> 27 | struct p_isra_argument p_isra_arg;
> | ^~~~~~~~~~
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_execve/p_sys_execve.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_execveat/p_sys_execveat.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_call_usermodehelper/p_call_usermodehelper.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_call_usermodehelper_exec/p_call_usermodehelper_exec.o
> CC [M]
> /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_do_exit/p_do_exit.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_wake_up_new_task/p_wake_up_new_task.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_setuid/p_sys_setuid.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_setreuid/p_sys_setreuid.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_setresuid/p_sys_setresuid.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_setfsuid/p_sys_setfsuid.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_setgid/p_sys_setgid.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_setregid/p_sys_setregid.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_setresgid/p_sys_setresgid.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_setfsgid/p_sys_setfsgid.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_set_current_groups/p_set_current_groups.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_generic_permission/p_generic_permission.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sel_write_enforce/p_sel_write_enforce.o
> CC [M]
> /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_seccomp/p_seccomp.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_unshare/p_sys_unshare.o
> CC [M]
> /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_sys_setns/p_sys_setns.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/caps/p_sys_capset/p_sys_capset.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/caps/p_cap_task_prctl/p_cap_task_prctl.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/keyring/p_key_change_session_keyring/p_key_change_session_keyring.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/keyring/p_sys_add_key/p_sys_add_key.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/keyring/p_sys_request_key/p_sys_request_key.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/keyring/p_sys_keyctl/p_sys_keyctl.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_security_ptrace_access/p_security_ptrace_access.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/compat/p_compat_sys_execve/p_compat_sys_execve.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/compat/p_compat_sys_execveat/p_compat_sys_execveat.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/compat/p_compat_sys_keyctl/p_compat_sys_keyctl.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/compat/p_compat_sys_capset/p_compat_sys_capset.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/compat/p_compat_sys_add_key/p_compat_sys_add_key.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/compat/p_compat_sys_request_key/p_compat_sys_request_key.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/__x32/p_x32_sys_execve/p_x32_sys_execve.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/__x32/p_x32_sys_execveat/p_x32_sys_execveat.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/__x32/p_x32_sys_keyctl/p_x32_sys_keyctl.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/override/p_override_creds/p_override_creds.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/override/p_revert_creds/p_revert_creds.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/override/overlayfs/p_ovl_create_or_link/p_ovl_create_or_link.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/pCFI/p_mark_inode_dirty/p_mark_inode_dirty.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/pCFI/p_schedule/p_schedule.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/pCFI/p___queue_work/p___queue_work.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/pCFI/p_lookup_fast/p_lookup_fast.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_ttwu_do_wakeup/p_ttwu_do_wakeup.o
> CC [M]
> /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_capable/p_capable.o
> CC [M]
> /ssdtmp/lkrg/src/modules/exploit_detection/syscalls/p_scm_send/p_scm_send.o
> CC [M] /ssdtmp/lkrg/src/modules/exploit_detection/p_exploit_detection.o
> /ssdtmp/lkrg/src/modules/exploit_detection/p_exploit_detection.c: In
> function ‘p_verify_addr_limit’:
> /ssdtmp/lkrg/src/modules/exploit_detection/p_exploit_detection.c:512:64:
> error: ‘mm_segment_t’ {aka ‘struct <anonymous>’} has no member named ‘seg’
> 512 | p_orig->p_ed_task.p_addr_limit.seg;
> | ^
> /ssdtmp/lkrg/src/modules/exploit_detection/p_exploit_detection.c: In
> function ‘p_dump_addr_limit’:
> /ssdtmp/lkrg/src/modules/exploit_detection/p_exploit_detection.c:534:16:
> error: ‘mm_segment_t’ {aka ‘struct <anonymous>’} has no member named ‘seg’
> 534 | p_addr_limit->seg =
> | ^~
> make[2]: *** [scripts/Makefile.build:279:
> /ssdtmp/lkrg/src/modules/exploit_detection/p_exploit_detection.o] Błąd 1
> make[1]: *** [Makefile:1805: /ssdtmp/lkrg] Błąd 2
> make[1]: Opuszczenie katalogu
> '/ssdtmp/fabryka/kernel/src64/linux-5.10.3-gentoo'
> make: *** [Makefile:100: all] Błąd 2
>
> Cheers
>
--
pi3 (pi3ki31ny) - pi3 (at) itsec pl
http://pi3.com.pl
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.