linux-arch.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa@zytor.com>
To: Indan Zupancic <indan@nul.nu>
Cc: Will Drewry <wad@chromium.org>,
	linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org,
	linux-doc@vger.kernel.org, kernel-hardening@lists.openwall.com,
	netdev@vger.kernel.org, x86@kernel.org, arnd@arndb.de,
	davem@davemloft.net, mingo@redhat.com, oleg@redhat.com,
	peterz@infradead.org, rdunlap@xenotime.net,
	mcgrathr@chromium.org, tglx@linutronix.de, luto@mit.edu,
	eparis@redhat.com, serge.hallyn@canonical.com, djm@mindrot.org,
	scarybeasts@gmail.com, pmoore@redhat.com,
	akpm@linux-foundation.org, corbet@lwn.net,
	eric.dumazet@gmail.com, markus@chromium.org,
	coreyb@linux.vnet.ibm.com, keescook@chromium.org
Subject: Re: [PATCH v12 06/13] seccomp: add system call filtering using BPF
Date: Thu, 01 Mar 2012 22:55:30 -0800	[thread overview]
Message-ID: <4F506EE2.1050705@zytor.com> (raw)
In-Reply-To: <bc1b4ec8fbad5a5931a928f108a6095f.squirrel@webmail.greenhost.nl>

On 03/01/2012 10:43 PM, Indan Zupancic wrote:
> On Fri, March 2, 2012 06:52, H. Peter Anvin wrote:
>> On 03/01/2012 09:45 PM, Indan Zupancic wrote:
>>>
>>>> + * @nr: the system call number
>>>> + * @arch: indicates system call convention as an AUDIT_ARCH_* value
>>>> + *        as defined in <linux/audit.h>.
>>>> + * @instruction_pointer: at the time of the system call.
>>>
>>> If the vDSO is used this will always be the same, so what good is this?
>>> I haven't gotten an answer to this yet.
>>>
>>
>> And if it isn't, or you're on an architecture which doesn't use the vdso
>> as the launching point, it's not.
> 
> True, but then what?
> 

Ok, fail on my part - I misread the above to refer to @arch, not
@instruction_pointer.

>> -- Pin is a great example.
> Is that http://www.pintool.org/?
> 
> Can you explain how knowing the IP is useful for Pin?
> 
> All I am asking for is just one use case for providing the IP. Is that
> asking for too much?

However, it still applies.  For something like Pin, Pin may want to trap
on all or a subset from the instrumented program, while the
instrumentation code -- which lives in the same address space -- needs
to execute those same instructions.

Yes, it's useless for *security* (unless perhaps if you keep very strict
tabs on the flow of control by using debug registers, dynamic
translation or whatnot), but it can be highly useful for
*instrumentation*, where you want to analyze the behavior of a
non-malicious program.

	-hpa

-- 
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.

  parent reply	other threads:[~2012-03-02  6:55 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-29 23:53 [PATCH v12 01/13] sk_run_filter: add support for custom load_pointer Will Drewry
2012-02-29 23:53 ` Will Drewry
2012-02-29 23:53 ` [PATCH v12 02/13] net/compat.c,linux/filter.h: share compat_sock_fprog Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-02-29 23:53 ` [PATCH v12 03/13] seccomp: kill the seccomp_t typedef Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-02-29 23:53 ` [PATCH v12 04/13] asm/syscall.h: add syscall_get_arch Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-02-29 23:53 ` [PATCH v12 05/13] arch/x86: add syscall_get_arch to syscall.h Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-02-29 23:53 ` [PATCH v12 06/13] seccomp: add system call filtering using BPF Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-03-02  5:45   ` Indan Zupancic
2012-03-02  5:45     ` Indan Zupancic
2012-03-02  5:52     ` H. Peter Anvin
2012-03-02  5:52       ` H. Peter Anvin
2012-03-02  6:43       ` Indan Zupancic
2012-03-02  6:43         ` Indan Zupancic
2012-03-02  6:55         ` H. Peter Anvin [this message]
2012-03-02  6:55           ` H. Peter Anvin
2012-03-02  8:12           ` Indan Zupancic
2012-03-02  8:12             ` Indan Zupancic
2012-03-02 18:44     ` [kernel-hardening] " Will Drewry
2012-03-02 18:44       ` Will Drewry
2012-02-29 23:53 ` [PATCH v12 07/13] seccomp: add SECCOMP_RET_ERRNO Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-03-02 18:24   ` Serge E. Hallyn
2012-03-02 18:24     ` Serge E. Hallyn
2012-03-05 21:03     ` Will Drewry
2012-03-05 21:03       ` Will Drewry
2012-03-05 21:13       ` Serge Hallyn
2012-03-05 21:13         ` Serge Hallyn
2012-02-29 23:53 ` [PATCH v12 08/13] signal, x86: add SIGSYS info and make it synchronous Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-02-29 23:53 ` [PATCH v12 09/13] seccomp: Add SECCOMP_RET_TRAP Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-02-29 23:53 ` [PATCH v12 10/13] ptrace,seccomp: Add PTRACE_SECCOMP support Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-02-29 23:53 ` [PATCH v12 11/13] x86: Enable HAVE_ARCH_SECCOMP_FILTER Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-02-29 23:53 ` [PATCH v12 12/13] Documentation: prctl/seccomp_filter Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-02-29 23:53 ` [PATCH v12 13/13] seccomp: remove duplicated failure logging Will Drewry
2012-02-29 23:53   ` Will Drewry
2012-03-01 23:37 ` [PATCH v12 01/13] sk_run_filter: add support for custom load_pointer Kees Cook
2012-03-01 23:37   ` Kees Cook
2012-03-02  0:05   ` H. Peter Anvin
2012-03-02  0:05     ` H. Peter Anvin
2012-03-02  0:22   ` Andrew Lutomirski
2012-03-02  0:47   ` Stephen Rothwell
2012-03-02  0:47     ` Stephen Rothwell
2012-03-02  0:57     ` Kees Cook
2012-03-02  1:19       ` Andrew Morton
2012-03-02  1:19         ` Andrew Morton
2012-03-02  2:39         ` Will Drewry
2012-03-02  2:39           ` Will Drewry
2012-03-02  4:04         ` Indan Zupancic
2012-03-02  4:04           ` Indan Zupancic
2012-03-02  5:03           ` Stephen Rothwell
2012-03-02  5:03             ` Stephen Rothwell
2012-03-02  5:26           ` Kees Cook
2012-03-02  5:26             ` Kees Cook
2012-03-02  1:48       ` Andrew Lutomirski
2012-03-02  3:10       ` Stephen Rothwell
2012-03-02  3:41         ` Will Drewry
2012-03-02  3:41           ` Will Drewry
2012-03-02  3:57           ` Stephen Rothwell
2012-03-02  3:57             ` Stephen Rothwell
2012-03-02  0:47   ` Eric Dumazet
2012-03-02 10:40 ` Indan Zupancic
2012-03-02 10:40   ` Indan Zupancic
2012-03-02 18:47   ` Will Drewry
2012-03-02 18:47     ` Will Drewry

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F506EE2.1050705@zytor.com \
    --to=hpa@zytor.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=corbet@lwn.net \
    --cc=coreyb@linux.vnet.ibm.com \
    --cc=davem@davemloft.net \
    --cc=djm@mindrot.org \
    --cc=eparis@redhat.com \
    --cc=eric.dumazet@gmail.com \
    --cc=indan@nul.nu \
    --cc=keescook@chromium.org \
    --cc=kernel-hardening@lists.openwall.com \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luto@mit.edu \
    --cc=markus@chromium.org \
    --cc=mcgrathr@chromium.org \
    --cc=mingo@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=oleg@redhat.com \
    --cc=peterz@infradead.org \
    --cc=pmoore@redhat.com \
    --cc=rdunlap@xenotime.net \
    --cc=scarybeasts@gmail.com \
    --cc=serge.hallyn@canonical.com \
    --cc=tglx@linutronix.de \
    --cc=wad@chromium.org \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).