[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <201703231949.EDJ81789.FHMQOFLFOtVOJS@I-love.SAKURA.ne.jp>
Date: Thu, 23 Mar 2017 19:49:12 +0900
From: Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>
To: dvyukov@...gle.com, paul@...l-moore.com, sds@...ho.nsa.gov,
eparis@...isplace.org, james.l.morris@...cle.com, serge@...lyn.com,
keescook@...omium.org, anton@...msg.org, ccross@...roid.com,
tony.luck@...el.com, selinux@...ho.nsa.gov,
linux-security-module@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: syzkaller@...glegroups.com
Subject: Re: security: double-free in superblock_doinit
Dmitry Vyukov wrote:
> Hello,
>
> I've got the following double-free report in superblock_doinit while
> running syzkaller fuzzer.
> Note the preceding injected failure in kmalloc, most likely that the root cause.
Thank you for reporting.
selinux_parse_opts_str() and smack_parse_opts_str() forgot to set
opts->mnt_opts to NULL after kfree() at
if (!opts->mnt_opts_flags) {
kfree(opts->mnt_opts);
goto out_err;
}
and caused double free at
if (opts->mnt_opts)
for (i = 0; i < opts->num_mnt_opts; i++)
kfree(opts->mnt_opts[i]);
in security_free_mnt_opts().
Powered by blists - more mailing lists