Hello Tim,
I tried to have a look at those two dmesg lines and it seems
they point to the function print_arp_asset_screen, line 115 [1],
where parameter rec is dereferenced unconditionally.
However, if it would be possible to install systemd-coredump then
a backtrace of those crashes should be printed to the journal.
This would give a way better information as the two dmesg lines alone,
as it would also show the functions calling print_arp_asset_screen
and therefore leading to the crash.
The link [2] might give some more hints to collect
more information for the maintainer.
Kind regards,
Bernhard
[1] https://sources.debian.org/src/pads/1.2-13/src/output/output-screen.c/#L115
112 print_arp_asset_screen (ArpAsset *rec)
113 {
114 /* Print to Screen */
115 if(rec->mac_resolved != NULL) {
116 fprintf(stdout, "[*] Asset Found: IP Address - %s / MAC Address -
%s (%s)\n",
[2] https://wiki.debian.org/HowToGetABacktrace
# 2022-09-27 Bookworm/testing qemu amd64 VM
apt install systemd-coredump mc gdb pads pads-dbgsym
apt build-dep pads
mkdir /home/benutzer/source/pads/orig -p
cd/home/benutzer/source/pads/orig
apt source pads
cd
https://wiki.debian.org/InterpretingKernelOutputAtProcessCrash
[87486.873713] pads[2092050]: segfault at 3a ip 5569c2dadb64 sp
7ffc6ce82ed0 error 4 in pads[5569c2da6000+9000]
[87486.873733] Code: 23 00 00 be 01 00 00 00 0f b7 c9 e8 46 85 ff ff 58 31 c0
5a 5b 5d 41 5c c3 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 41 54 55 53 <48> 8b 47
10 48 89 fb 48 83 c7 04 48 85 c0 74 44 4c 8b 60 08 e8 b3
error 4 == 0b0100
* bit 0 ==0: no page found
* bit 1 ==0: read access
* bit 2 ==1: user-mode access
echo -n "find /b ..., ..., 0x" && \
echo "23 00 00 be 01 00 00 00 0f b7 c9 e8 46 85 ff ff 58 31 c0 5a 5b 5d 41 5c
c3 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 41 54 55 53 <48> 8b 47 10 48 89 fb 48
83 c7 04 48 85 c0 74 44 4c 8b 60 08 e8 b3" \
| sed 's/[<>]//g' | sed 's/ /, 0x/g'
benutzer@debian:~$ gdb -q
(gdb) set width 0
(gdb) set pagination off
(gdb) file /usr/bin/pads
Reading symbols from /usr/bin/pads...
Reading symbols from
/usr/lib/debug/.build-id/56/25dea5149cbe3b93f99e31e95d4e8920ce5a73.debug...
(gdb) b main
Breakpoint 1 at 0x2470: file ./src/pads.c, line 486.
(gdb) run
Starting program: /usr/bin/pads
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Breakpoint 1, main (argc=1, argv=0x7fffe5a8) at ./src/pads.c:486
486 ./src/pads.c: Datei oder Verzeichnis nicht gefunden.
(gdb) directory /home/benutzer/source/pads/orig/pads-1.2
Source directories searched: /home/benutzer/source/pads/orig/pads-1.2:$cdir:$cwd
(gdb) dele 1
(gdb) pipe info target | grep ".text"
0x6460 - 0xe8a1 is .text
0x77fcc050 - 0x77ff0391 is .text in
/lib64/ld-linux-x86-64.so.2
0x77fc96c0 - 0x77fc9d1d is .text in system-supplied DSO
at 0x77fc9000
0x77f4b1e0 - 0x77f9f322 is .text in
/lib/x86_64-linux-gnu/libpcre.so.3
0x77f038b0 - 0x77f29c4e is .text in
/lib/x86_64-linux-gnu/libpcap.so.0.8
0x77c28380 - 0x77d94e9d is .text in
/lib/x86_64-linux-gnu/libc.so.6
0x77ef9040 - 0x77ef9101 is .text in
/lib/x86_64-linux-gnu/libpthread.so.0
0x77eb0e30 - 0x77edf098 is .text in
/lib/x86_64-linux-gnu/libdbus-1.so.3
0x77b46af0 - 0x77bc241c is .text in
/lib/x86_64-linux-gnu/libsystemd.so.0
0x77e973d0 - 0x77e9a4b6 is .text in
/lib/x86_64-linux-gnu/libcap.so.2
0x779f7580 - 0x77ae0128 is .text in
/lib/x86_64-linux-gnu/libgcrypt.so.20
0x77e6f510 - 0x77e865b2 is .text in
/lib/x86_64-linux-gnu/liblzma.so.5
0x77934740 - 0x779d0636 is .text in
/lib/x86_64-linux-gnu/libzstd.so.1
0x77e493e0 - 0x77e66437 is .text in
/lib/x86_64-linux-gnu/liblz4.so.1
0x77e206c0 - 0x77e3600e is .text in
/lib/x86_64-linux-gnu/libgpg-error.so.0
(gdb) find /b 0x6460, 0xe8a1, 0x23, 0x00, 0x00, 0xbe,
0x01, 0x00, 0x00, 0x00, 0x0f, 0xb7, 0xc9, 0xe8, 0x46, 0x85, 0xff, 0xff, 0x58,
0x31, 0xc0, 0x5a, 0x5b, 0x5d, 0x41, 0x5c, 0xc3, 0x66, 0x66, 0x2e, 0x0f, 0x1f,
0x84, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x90, 0x41, 0x54, 0x55, 0x53, 0x48,
0x8b, 0x47, 0x10, 0x48, 0x89, 0xfb, 0x48, 0x83, 0xc7, 0x04, 0x48, 0x85, 0xc0,
0x74, 0x44, 0x4c, 0x8b, 0x60, 0x08, 0xe8, 0xb3
0xdb3a
1 pattern found.
(gdb) b * (0xdb3a + 42)
Breakpoint 2 at 0xdb64: file ./src/output/output-screen.c, line 115.
(gdb) info b
Num Type Disp Enb AddressWhat
2 breakpoint keep y 0xdb64 in print_arp_asset_screen at
./src/output/output-screen.c:115
(gdb) disassemble /r 0xf7a94b31, 0