Daemons really should be built as PIE where possible, by passing -fpie -pie
lsexec shows auditd isn't built this way yet.
I used to have it PIE, but debugging was not easy. Development work is nearly
over, I'll keep this open a little while longer to remind me to fix it. BTW,
there is nearly no risk for this daemon. Only root can run auditd & auditd only
takes input from /etc/audit.conf which is owned by root. It performs checks on
that file to make sure permissions are sane before reading anything from it. It
also reads from netlink only if sender is kernel.
audit 0.9.4 is a pie executable. I don't have relro, is that needed?
(16:28:01:root@nemesis:~)# lsexec --all | grep aud
auditd, PID 26848: PIE, execshield enabled
Looks fixed :-)