Old utmp entries
Solution 1:
finger segfaulting is really not a good sign. I'd at least make cursory checks for break in; at least run chkrootkit and debsums for example. Second, have you tried clearing out utmp entirely by rm or echo -n > utmp? It may be corrupted in some subtle manner.
Lastly, have you done anything with your PAM setup in /etc/pam.d? That could easily cause logouts not to be recorded.