Consider the output of /boot/System.map-5.8.0-50-generic and /proc/kallsyms on Ubuntu 20.10 (Groovy Gorilla):
$ sudo cat /boot/System.map-5.8.0-50-generic | grep sys_call_table
ffffffff820002e0 D sys_call_table
ffffffff82001360 D ia32_sys_call_table
ffffffff82002120 D x32_sys_call_table
$ sudo cat /proc/kallsyms | grep sys_call_table
ffffffff978002e0 D sys_call_table
ffffffff97801360 D ia32_sys_call_table
ffffffff97802120 D x32_sys_call_table
AFAIK, these files should contain the current load addresses of kernel symbols, so why don't they match?
Is it because only /proc/kallsyms is affected by KASLR? If so, how can I verify whether KASLR is enabled?