All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Serge E. Hallyn" <serge@hallyn.com>
To: Kees Cook <keescook@chromium.org>
Cc: James Morris <jmorris@namei.org>, Joe Perches <joe@perches.com>,
	Mimi Zohar <zohar@linux.vnet.ibm.com>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	"Serge E. Hallyn" <serge@hallyn.com>,
	Jonathan Corbet <corbet@lwn.net>,
	Kalle Valo <kvalo@codeaurora.org>,
	Mauro Carvalho Chehab <mchehab@osg.samsung.com>,
	Guenter Roeck <linux@roeck-us.net>, Jiri Slaby <jslaby@suse.com>,
	Paul Moore <pmoore@redhat.com>,
	Stephen Smalley <sds@tycho.nsa.gov>,
	Casey Schaufler <casey@schaufler-ca.com>,
	Andreas Gruenbacher <agruenba@redhat.com>,
	Rasmus Villemoes <linux@rasmusvillemoes.dk>,
	Ulf Hansson <ulf.hansson@linaro.org>,
	Vitaly Kuznetsov <vkuznets@redhat.com>,
	linux-security-module@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org
Subject: Re: [PATCH v4 4/6] Yama: consolidate error reporting
Date: Tue, 12 Apr 2016 16:26:42 -0500	[thread overview]
Message-ID: <20160412212642.GD12324@mail.hallyn.com> (raw)
In-Reply-To: <1460480085-32263-5-git-send-email-keescook@chromium.org>

Quoting Kees Cook (keescook@chromium.org):
> Use a common error reporting function for Yama violation reports, and give
> more detail into the process command lines.
> 
> Signed-off-by: Kees Cook <keescook@chromium.org>

Acked-by: Serge Hallyn <serge.hallyn@canonical.com>

> ---
>  security/yama/yama_lsm.c | 31 +++++++++++++++++++++----------
>  1 file changed, 21 insertions(+), 10 deletions(-)
> 
> diff --git a/security/yama/yama_lsm.c b/security/yama/yama_lsm.c
> index cb6ed10816d4..c19f6e5df9a3 100644
> --- a/security/yama/yama_lsm.c
> +++ b/security/yama/yama_lsm.c
> @@ -18,6 +18,7 @@
>  #include <linux/prctl.h>
>  #include <linux/ratelimit.h>
>  #include <linux/workqueue.h>
> +#include <linux/string_helpers.h>
>  
>  #define YAMA_SCOPE_DISABLED	0
>  #define YAMA_SCOPE_RELATIONAL	1
> @@ -41,6 +42,22 @@ static DEFINE_SPINLOCK(ptracer_relations_lock);
>  static void yama_relation_cleanup(struct work_struct *work);
>  static DECLARE_WORK(yama_relation_work, yama_relation_cleanup);
>  
> +static void report_access(const char *access, struct task_struct *target,
> +			  struct task_struct *agent)
> +{
> +	char *target_cmd, *agent_cmd;
> +
> +	target_cmd = kstrdup_quotable_cmdline(target, GFP_KERNEL);
> +	agent_cmd = kstrdup_quotable_cmdline(agent, GFP_KERNEL);
> +
> +	pr_notice_ratelimited(
> +		"ptrace %s of \"%s\"[%d] was attempted by \"%s\"[%d]\n",
> +		access, target_cmd, target->pid, agent_cmd, agent->pid);
> +
> +	kfree(agent_cmd);
> +	kfree(target_cmd);
> +}
> +
>  /**
>   * yama_relation_cleanup - remove invalid entries from the relation list
>   *
> @@ -307,11 +324,8 @@ static int yama_ptrace_access_check(struct task_struct *child,
>  		}
>  	}
>  
> -	if (rc && (mode & PTRACE_MODE_NOAUDIT) == 0) {
> -		printk_ratelimited(KERN_NOTICE
> -			"ptrace of pid %d was attempted by: %s (pid %d)\n",
> -			child->pid, current->comm, current->pid);
> -	}
> +	if (rc && (mode & PTRACE_MODE_NOAUDIT) == 0)
> +		report_access("attach", child, current);
>  
>  	return rc;
>  }
> @@ -337,11 +351,8 @@ int yama_ptrace_traceme(struct task_struct *parent)
>  		break;
>  	}
>  
> -	if (rc) {
> -		printk_ratelimited(KERN_NOTICE
> -			"ptraceme of pid %d was attempted by: %s (pid %d)\n",
> -			current->pid, parent->comm, parent->pid);
> -	}
> +	if (rc)
> +		report_access("traceme", current, parent);
>  
>  	return rc;
>  }
> -- 
> 2.6.3

  reply	other threads:[~2016-04-12 21:26 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-12 16:54 [PATCH v4 0/6] LSM: LoadPin for kernel file loading restrictions Kees Cook
2016-04-12 16:54 ` [PATCH v4 1/6] string_helpers: add kstrdup_quotable Kees Cook
2016-04-12 21:13   ` Serge E. Hallyn
2016-04-12 16:54 ` [PATCH v4 2/6] string_helpers: add kstrdup_quotable_cmdline Kees Cook
2016-04-12 21:19   ` Serge E. Hallyn
2016-04-13 11:53     ` Andy Shevchenko
2016-04-12 16:54 ` [PATCH v4 3/6] string_helpers: add kstrdup_quotable_file Kees Cook
2016-04-12 21:24   ` Serge E. Hallyn
2016-04-12 16:54 ` [PATCH v4 4/6] Yama: consolidate error reporting Kees Cook
2016-04-12 21:26   ` Serge E. Hallyn [this message]
2016-04-12 16:54 ` [PATCH v4 5/6] fs: provide function to report enum strings Kees Cook
2016-04-12 21:30   ` Serge E. Hallyn
2016-04-12 22:31   ` Al Viro
2016-04-12 22:38     ` Kees Cook
2016-04-13 11:53       ` Mimi Zohar
2016-04-12 16:54 ` [PATCH v4 6/6] LSM: LoadPin for kernel file loading restrictions Kees Cook
2016-04-12 21:44   ` Serge E. Hallyn

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=20160412212642.GD12324@mail.hallyn.com \
    --to=serge@hallyn.com \
    --cc=agruenba@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=casey@schaufler-ca.com \
    --cc=corbet@lwn.net \
    --cc=jmorris@namei.org \
    --cc=joe@perches.com \
    --cc=jslaby@suse.com \
    --cc=keescook@chromium.org \
    --cc=kvalo@codeaurora.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=linux@rasmusvillemoes.dk \
    --cc=linux@roeck-us.net \
    --cc=mchehab@osg.samsung.com \
    --cc=pmoore@redhat.com \
    --cc=sds@tycho.nsa.gov \
    --cc=ulf.hansson@linaro.org \
    --cc=vkuznets@redhat.com \
    --cc=zohar@linux.vnet.ibm.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.