Date: Thu, 7 Jan 1999 17:43:08 +0300 From: Vadim Kolontsov <vadim@tversu.ru> To: Darren Reed <avalon@coombs.anu.edu.au> Cc: Don.Lewis@tsc.tdk.com, freebsd-security@FreeBSD.ORG Subject: Re: kernel/syslogd hack Message-ID: <19990107174308.A28043@tversu.ru> In-Reply-To: <199901071355.AAA12004@cheops.anu.edu.au>; from Darren Reed on Fri, Jan 08, 1999 at 12:55:55AM %2B1100 References: <19990107153615.A27741@tversu.ru> <199901071355.AAA12004@cheops.anu.edu.au>
next in thread | previous in thread | raw e-mail | index | archive | help
Darren, > Just so I understand what you're doing, you're recording who sent the > syslog message (and making the message longer) because you're concerned > about users generating fake messages. Yes, if kernel see that destination UNIX domain socket has special option set, it adds pid/uid/gid/etc to all datagrams sent to this socket, so syslogd can record this information to logs. So I can determine later who is sending fake messages, who is flooding and so on.. This patch doesn't stop users to send fake message. But it allows me to know *who* is sending it (it can be analyzed by human or by log analyzing program). To activate this behaviour in kernel, syslogd makes setsockopt("/var/run/log", SOL_SOCKET, SO_MY_NEW_OPTION, &1). You only need to recompile kernel and syslogd. I've been suggested to modify syslog(3) to use sendmsg(2) with SCM_CREDS instead of send()/sendto(). In this case kernel does the same work (adding pid/uid/euid/gid/groups to the datagram). It requires to recompile shared libraries and statically linked programs which uses syslog(3), but I think it's anyway more "clear" way than patching kernel. > Now as it stands, you don't want to stop them sending fake messages, > you just want to know when they are being sent so you can distinguish > real ones from fakes. See above.. probably I didn't described the original idea well enough, sorry. patching kernel and using SCM_CREDS with sendmsg(2) are just two different ways to one target -- to allow syslog to record information about process who sends logs. > Btw, if you just wanted an enhanced configuration file, nsyslogd does > filtering on IP#'s now. I've tried nsyslogd, and I saw examples of it's configuration files.. it's good, and I like it. But now I'm thinking about FreeBSD's syslogd :) Regards, V. -- Vadim Kolontsov Tver Internet Center NOC To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-security" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990107174308.A28043>