[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZjyJsl_u_FmYHrki@krava>
Date: Thu, 9 May 2024 10:30:42 +0200
From: Jiri Olsa <olsajiri@...il.com>
To: "Edgecombe, Rick P" <rick.p.edgecombe@...el.com>
Cc: "mhiramat@...nel.org" <mhiramat@...nel.org>,
"rostedt@...dmis.org" <rostedt@...dmis.org>,
"ast@...nel.org" <ast@...nel.org>,
"andrii@...nel.org" <andrii@...nel.org>,
"oleg@...hat.com" <oleg@...hat.com>,
"daniel@...earbox.net" <daniel@...earbox.net>,
"debug@...osinc.com" <debug@...osinc.com>,
"luto@...nel.org" <luto@...nel.org>, "bp@...en8.de" <bp@...en8.de>,
"yhs@...com" <yhs@...com>,
"songliubraving@...com" <songliubraving@...com>,
"linux-api@...r.kernel.org" <linux-api@...r.kernel.org>,
"x86@...nel.org" <x86@...nel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"john.fastabend@...il.com" <john.fastabend@...il.com>,
"tglx@...utronix.de" <tglx@...utronix.de>,
"mingo@...hat.com" <mingo@...hat.com>,
"linux-trace-kernel@...r.kernel.org" <linux-trace-kernel@...r.kernel.org>,
"bpf@...r.kernel.org" <bpf@...r.kernel.org>,
"linux-man@...r.kernel.org" <linux-man@...r.kernel.org>,
"peterz@...radead.org" <peterz@...radead.org>
Subject: Re: [PATCHv5 bpf-next 6/8] x86/shstk: Add return uprobe support
On Tue, May 07, 2024 at 05:35:54PM +0000, Edgecombe, Rick P wrote:
> On Tue, 2024-05-07 at 12:53 +0200, Jiri Olsa wrote:
> > diff --git a/arch/x86/kernel/uprobes.c b/arch/x86/kernel/uprobes.c
> > index 81e6ee95784d..ae6c3458a675 100644
> > --- a/arch/x86/kernel/uprobes.c
> > +++ b/arch/x86/kernel/uprobes.c
> > @@ -406,6 +406,11 @@ SYSCALL_DEFINE0(uretprobe)
> > * trampoline's ret instruction
> > */
> > r11_cx_ax[2] = regs->ip;
> > +
> > + /* make the shadow stack follow that */
> > + if (shstk_push_frame(regs->ip))
> > + goto sigill;
> > +
> > regs->ip = ip;
> >
>
> Per the earlier discussion, this cannot be reached unless uretprobes are in use,
> which cannot happen without something with privileges taking an action. But are
> uretprobes ever used for monitoring applications where security is important? Or
> is it strictly a debug-time thing?
sorry, I don't have that level of detail, but we do have customers
that use uprobes in general or want to use it and complain about
the speed
there are several tools in bcc [1] that use uretprobes in scripts,
like:
memleak, sslsniff, trace, bashreadline, gethostlatency, argdist,
funclatency
jirka
[1] https://github.com/iovisor/bcc
Powered by blists - more mailing lists