[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHC9VhTCx101boUJn8d9NxhXaV+R75dueR4Xjp-gQmqKi30uMg@mail.gmail.com>
Date: Thu, 23 Aug 2018 07:50:49 -0400
From: Paul Moore <paul@...l-moore.com>
To: omosnace@...hat.com
Cc: mlichvar@...hat.com, tglx@...utronix.de, linux-audit@...hat.com,
rgb@...hat.com, sgrubb@...hat.com, john.stultz@...aro.org,
sboyd@...nel.org, linux-kernel@...r.kernel.org
Subject: Re: [RFC PATCH ghak10 v4 0/2] audit: Log modifying adjtimex(2) calls
On Thu, Aug 23, 2018 at 5:14 AM Ondrej Mosnacek <omosnace@...hat.com> wrote:
> On Wed, Aug 22, 2018 at 11:27 PM Paul Moore <paul@...l-moore.com> wrote:
> > On Tue, Aug 21, 2018 at 3:21 AM Miroslav Lichvar <mlichvar@...hat.com> wrote:
> > > > On Mon, 20 Aug 2018, Ondrej Mosnacek wrote:
> > > > > @John or other timekeeping/NTP folks: We had a discussion on the audit
> > > > > ML on which of the internal timekeeping/NTP variables we should actually
> > > > > log changes for. We are only interested in variables that can (directly
> > > > > or indirectly) cause noticeable changes to the system clock, but since we
> > > > > have only limited understanding of the NTP code, we would like to ask
> > > > > you for advice on which variables are security relevant.
> > >
> > > I guess that mostly depends on whether you consider setting the clock
> > > to run faster or slower than real time to be an important event for
> > > the audit.
> > >
> > > > > - NTP value adjustments:
> > > > > - time_offset (probably important)
> > >
> > > This can adjust the clock by up to 0.5 seconds per call and also speed
> > > it up or slow down by up to about 0.05% (43 seconds per day).
> >
> > This seems worthwhile.
> >
> > > > > - time_freq (maybe not important?)
> > >
> > > This can speed up or slow down by up to about 0.05%.
> >
> > This too.
> >
> > > > > - time_status (likely important, can cause leap second injection)
> > >
> > > Yes, it can insert/delete leap seconds and it also enables/disables
> > > synchronization of the hardware real-time clock.
> >
> > This one as well.
> >
> > > > > - time_maxerror (maybe not important?)
> > > > > - time_esterror (maybe not important?)
> > >
> > > These two change the error estimates that are reported to applications
> > > using ntp_gettime()/adjtimex(). If an application was periodically
> > > checking that the clock is synchronized with some specified accuracy
> > > and setting the maxerror to a larger value would cause the application
> > > to abort, would it be an important event in the audit?
> >
> > Since these don't really affect the time, just the expected error, I'm
> > not sure this is important.
> >
> > > > > - time_constant (???)
> > >
> > > This controls the speed of the clock adjustments that are made when
> > > time_offset is set. Probably not important for the audit.
> >
> > Agreed. I think we can skip this.
> >
> > > > > - time_adjust (sounds important)
> > >
> > > This is similar to time_freq. It can temporarily speed up or slow down
> > > the clock by up to 0.05%.
> >
> > Like time_freq, we should probably log this too.
> >
> > > > > - tick_usec (???)
> > >
> > > This is a more extreme version of time_freq. It can speed up or slow
> > > down the clock by up to 10%.
> >
> > Let's audit this one too.
>
> I agree with Paul on all counts. I will go ahead and prepare a
> patchset that logs everything except maxerror, esterror, and constant.
Please make sure you include explanations similar to the above in the
patch descriptions; not just the cover letter, the goal is to have
this information captured in the git log.
> Thank you, Miroslav, for the explanations!
Yes, those explanations were helpful.
--
paul moore
www.paul-moore.com
Powered by blists - more mailing lists