Bug 62261
Summary: | 3.11 regression: null pointer oops in aa_calc_profile_hash | ||
---|---|---|---|
Product: | Other | Reporter: | Phillip Susi (phill) |
Component: | Loadable Security Modules (LSM) | Assignee: | Other/LSM (other_lsm) |
Status: | NEW --- | ||
Severity: | normal | CC: | john.johansen |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | Subsystem: | ||
Regression: | Yes | Bisected commit-id: | |
Attachments: | patch for BUG in aa_calc_profile_hash |
Description
Phillip Susi
2013-09-27 22:56:58 UTC
Looks like this actually landed late in 3.11... I bisected it to this commit: commit f8eb8a1324e81927b2c64823b2fc38386efd3fef Author: John Johansen <john.johansen@canonical.com> Date: Wed Aug 14 11:27:36 2013 -0700 apparmor: add the ability to report a sha1 hash of loaded policy Provide userspace the ability to introspect a sha1 hash value for each profile currently loaded. Signed-off-by: John Johansen <john.johansen@canonical.com> Acked-by: Seth Arnold <seth.arnold@canonical.com> No this isn't in 3.11 its part of the 3.12 pull request from the security tree. The original request went to the security tree around 3.11-rc5 to be queued for the 3.12 merge This looks to be the vmalloc + hash interface with scatter gather lists problems that has been reported a couple times. We have a patch (attached) for this that has been in testing and I am sending out a pull request for. Created attachment 109921 [details]
patch for BUG in aa_calc_profile_hash
Strange, I wonder why git describe describes it as following v3.11-rc2 instead of v3.11 final? Hrmmm, possibly the security tree that they went into was around v3.11-rc2? The apparmor request was pulled on Aug 15 https://lkml.org/lkml/2013/8/15/192 but the original pull request shows the security tree next branch (which I rebase against for a pull was at an earlier state (July 25) The following changes since commit 9548906b2bb7ff09e12c013a55d669bef2c8e121: xattr: Constify ->name member of "struct xattr". (2013-07-25 19:30:03 +1000) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/jj/linux-apparmor for-security for you to fetch changes up to f8eb8a1324e81927b2c64823b2fc38386efd3fef: apparmor: add the ability to report a sha1 hash of loaded policy (2013-08-14 11:42:08 -0700) ---------------------------------------------------------------- John Johansen (14): apparmor: enable users to query whether apparmor is enabled apparmor: add a features/policy dir to interface apparmor: provide base for multiple profiles to be replaced at once apparmor: convert profile lists to RCU based locking apparmor: change how profile replacement update is done apparmor: update how unconfined is handled apparmor: rework namespace free path apparmor: make free_profile available outside of policy.c apparmor: allow setting any profile into the unconfined state apparmor: add interface files for profiles and namespaces apparmor: add an optional profile attachment string for profiles apparmor: add the profile introspection file to interface apparmor: export set of capabilities supported by the apparmor module apparmor: add the ability to report a sha1 hash of loaded policy Tetsuo Handa (1): apparmor: remove minimum size check for vmalloc() security/apparmor/Kconfig | 12 + security/apparmor/Makefile | 7 +- security/apparmor/apparmorfs.c | 636 +++++++++++++++++++++++++++++- security/apparmor/capability.c | 5 + security/apparmor/context.c | 16 +- security/apparmor/crypto.c | 97 +++++ security/apparmor/domain.c | 24 +- security/apparmor/include/apparmor.h | 6 + security/apparmor/include/apparmorfs.h | 40 ++ security/apparmor/include/audit.h | 1 - security/apparmor/include/capability.h | 4 + security/apparmor/include/context.h | 15 +- security/apparmor/include/crypto.h | 36 ++ security/apparmor/include/policy.h | 218 +++++++--- security/apparmor/include/policy_unpack.h | 21 +- security/apparmor/lib.c | 5 - security/apparmor/lsm.c | 22 +- security/apparmor/policy.c | 609 ++++++++++++++++------------ security/apparmor/policy_unpack.c | 135 +++++-- security/apparmor/procattr.c | 2 +- 20 files changed, 1502 insertions(+), 409 deletions(-) create mode 100644 security/apparmor/crypto.c create mode 100644 security/apparmor/include/crypto.h |