All of lore.kernel.org
 help / color / mirror / Atom feed
From: Catalin Marinas <catalin.marinas@arm.com>
To: Ben Hutchings <ben.hutchings@codethink.co.uk>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-kernel@vger.kernel.org, stable@vger.kernel.org,
	Will Deacon <will.deacon@arm.com>,
	Mark Rutland <mark.rutland@arm.com>
Subject: Re: [PATCH 4.4 07/40] arm64: ensure __dump_instr() checks addr_limit
Date: Tue, 14 Nov 2017 13:52:14 +0000	[thread overview]
Message-ID: <20171114135213.nj7lzhhblb5nuxi3@armageddon.cambridge.arm.com> (raw)
In-Reply-To: <1510599912.18523.8.camel@codethink.co.uk>

On Mon, Nov 13, 2017 at 07:05:12PM +0000, Ben Hutchings wrote:
> On Mon, 2017-11-06 at 10:44 +0100, Greg Kroah-Hartman wrote:
> > 4.4-stable review patch.  If anyone has any objections, please let me know.
> > 
> > ------------------
> > 
> > From: Mark Rutland <mark.rutland@arm.com>
> > 
> > commit 7a7003b1da010d2b0d1dc8bf21c10f5c73b389f1 upstream.
> > 
> > It's possible for a user to deliberately trigger __dump_instr with a
> > chosen kernel address.
> > 
> > Let's avoid problems resulting from this by using get_user() rather than
> > __get_user(), ensuring that we don't erroneously access kernel memory.
> > 
> > Where we use __dump_instr() on kernel text, we already switch to
> > KERNEL_DS, so this shouldn't adversely affect those cases.
> > 
> > Fixes: 60ffc30d5652810d ("arm64: Exception handling")
> [...]
> 
> This seems harmless, but I don't think it will fix the bug in 4.4
> unless you also cherry-pick:
> 
> commit c5cea06be060f38e5400d796e61cfc8c36e52924
> Author: Mark Rutland <mark.rutland@arm.com>
> Date:   Mon Jun 13 11:15:14 2016 +0100
> 
>     arm64: fix dump_instr when PAN and UAO are in use

I agree. In 4.4 dump_instr() doesn't do any checks, just
set_fs(KERNEL_DS) and __get_user(). While commit c5cea06b was added to
fix 57f4959bad0a154a ("arm64: kernel: Add support for User Access
Override"; merged in 4.6), it also makes sense on its own as a security
improvement for 4.4.

Mark is currently on holiday but he'll follow up next week if any
patches need back-porting.

-- 
Catalin

WARNING: multiple messages have this Message-ID (diff)
From: Catalin Marinas <catalin.marinas@arm.com>
To: Ben Hutchings <ben.hutchings@codethink.co.uk>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-kernel@vger.kernel.org, stable@vger.kernel.org,
	Will Deacon <will.deacon@arm.com>,
	Mark Rutland <mark.rutland@arm.com>
Subject: Re: [PATCH 4.4 07/40] arm64: ensure __dump_instr() checks addr_limit
Date: Tue, 14 Nov 2017 13:52:14 +0000	[thread overview]
Message-ID: <20171114135213.nj7lzhhblb5nuxi3@armageddon.cambridge.arm.com> (raw)
In-Reply-To: <1510599912.18523.8.camel@codethink.co.uk>

On Mon, Nov 13, 2017 at 07:05:12PM +0000, Ben Hutchings wrote:
> On Mon, 2017-11-06 at 10:44 +0100, Greg Kroah-Hartman wrote:
> > 4.4-stable review patch.��If anyone has any objections, please let me know.
> > 
> > ------------------
> > 
> > From: Mark Rutland <mark.rutland@arm.com>
> > 
> > commit 7a7003b1da010d2b0d1dc8bf21c10f5c73b389f1 upstream.
> > 
> > It's possible for a user to deliberately trigger __dump_instr with a
> > chosen kernel address.
> > 
> > Let's avoid problems resulting from this by using get_user() rather than
> > __get_user(), ensuring that we don't erroneously access kernel memory.
> > 
> > Where we use __dump_instr() on kernel text, we already switch to
> > KERNEL_DS, so this shouldn't adversely affect those cases.
> > 
> > Fixes: 60ffc30d5652810d ("arm64: Exception handling")
> [...]
> 
> This seems harmless, but I don't think it will fix the bug in 4.4
> unless you also cherry-pick:
> 
> commit c5cea06be060f38e5400d796e61cfc8c36e52924
> Author: Mark Rutland <mark.rutland@arm.com>
> Date:���Mon Jun 13 11:15:14 2016 +0100
> 
> ����arm64: fix dump_instr when PAN and UAO are in use

I agree. In 4.4 dump_instr() doesn't do any checks, just
set_fs(KERNEL_DS) and __get_user(). While commit c5cea06b was added to
fix 57f4959bad0a154a ("arm64: kernel: Add support for User Access
Override"; merged in 4.6), it also makes sense on its own as a security
improvement for 4.4.

Mark is currently on holiday but he'll follow up next week if any
patches need back-porting.

-- 
Catalin

  reply	other threads:[~2017-11-14 13:52 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-06  9:44 [PATCH 4.4 00/40] 4.4.97-stable review Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 01/40] ALSA: timer: Add missing mutex lock for compat ioctls Greg Kroah-Hartman
2017-11-06  9:44   ` Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 02/40] ALSA: seq: Fix nested rwsem annotation for lockdep splat Greg Kroah-Hartman
2017-11-06  9:44   ` Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 03/40] cifs: check MaxPathNameComponentLength != 0 before using it Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 04/40] KEYS: return full count in keyring_read() if buffer is too small Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 05/40] KEYS: fix out-of-bounds read during ASN.1 parsing Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 06/40] ASoC: adau17x1: Workaround for noise bug in ADC Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 07/40] arm64: ensure __dump_instr() checks addr_limit Greg Kroah-Hartman
2017-11-13 19:05   ` Ben Hutchings
2017-11-14 13:52     ` Catalin Marinas [this message]
2017-11-14 13:52       ` Catalin Marinas
2017-11-14 16:18       ` Mark Rutland
2017-11-19 10:29         ` Greg Kroah-Hartman
2017-11-19 10:29           ` Greg Kroah-Hartman
2017-11-20 11:26           ` Mark Rutland
2017-11-21 16:55             ` Greg Kroah-Hartman
2017-11-15 13:28     ` Ben Hutchings
2017-11-15 13:36       ` Ben Hutchings
2017-11-06  9:44 ` [PATCH 4.4 08/40] ARM: dts: mvebu: pl310-cache disable double-linefill Greg Kroah-Hartman
2017-11-07 23:06   ` Sebastian Gottschall
2017-11-08  8:44     ` Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 09/40] ARM: 8715/1: add a private asm/unaligned.h Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 10/40] ocfs2: fstrim: Fix start offset of first cluster group during fstrim Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 11/40] perf tools: Fix build failure on perl script context Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 12/40] drm/msm: Fix potential buffer overflow issue Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 13/40] drm/msm: fix an integer overflow test Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 14/40] tracing/samples: Fix creation and deletion of simple_thread_fn creation Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 15/40] Fix tracing sample code warning Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 16/40] PM / wakeirq: report a wakeup_event on dedicated wekup irq Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 17/40] mmc: s3cmci: include linux/interrupt.h for tasklet_struct Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 18/40] ARM: pxa: Dont rely on public mmc header to include leds.h Greg Kroah-Hartman
2017-11-06  9:44   ` Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 19/40] mfd: ab8500-sysctrl: Handle probe deferral Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 20/40] mfd: axp20x: Fix axp288 PEK_DBR and PEK_DBF irqs being swapped Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 21/40] staging: rtl8712u: Fix endian settings for structs describing network packets Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 22/40] ext4: fix stripe-unaligned allocations Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 23/40] ext4: do not use stripe_width if it is not set Greg Kroah-Hartman
2017-11-06  9:44 ` [PATCH 4.4 24/40] i2c: riic: correctly finish transfers Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 26/40] perf tools: Only increase index if perf_evsel__new_idx() succeeds Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 27/40] cx231xx: Fix I2C on Internal Master 3 Bus Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 28/40] drm/msm/dsi: Set msm_dsi->encoders before initializing bridge Greg Kroah-Hartman
2017-11-07  4:32   ` Archit Taneja
2017-11-07 10:35     ` Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 29/40] xen/manage: correct return value check on xenbus_scanf() Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 30/40] scsi: aacraid: Process Error for response I/O Greg Kroah-Hartman
2017-11-06  9:45   ` Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 31/40] platform/x86: intel_mid_thermal: Fix module autoload Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 32/40] staging: lustre: llite: dont invoke direct_IO for the EOF case Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 33/40] staging: lustre: hsm: stack overrun in hai_dump_data_field Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 34/40] staging: lustre: ptlrpc: skip lock if export failed Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 35/40] exynos4-is: fimc-is: Unmap region obtained by of_iomap() Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 36/40] mei: return error on notification request to a disconnected client Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 37/40] s390/dasd: check for device error pointer within state change interrupts Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 38/40] bt8xx: fix memory leak Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 39/40] xen: dont print error message in case of missing Xenstore entry Greg Kroah-Hartman
2017-11-06  9:45 ` [PATCH 4.4 40/40] staging: r8712u: Fix Sparse warning in rtl871x_xmit.c Greg Kroah-Hartman
2017-11-06 21:17 ` [PATCH 4.4 00/40] 4.4.97-stable review Guenter Roeck
2017-11-06 23:26 ` Shuah Khan
2017-11-07 22:55 ` Tom Gall
2017-11-08  9:22   ` Greg Kroah-Hartman

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=20171114135213.nj7lzhhblb5nuxi3@armageddon.cambridge.arm.com \
    --to=catalin.marinas@arm.com \
    --cc=ben.hutchings@codethink.co.uk \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=stable@vger.kernel.org \
    --cc=will.deacon@arm.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.