2020-07-06 03:29:23

by Xidong Wang

[permalink] [raw]
Subject: [PATCH 1/1] ALSA: opl3: fix infoleak in opl3

From: xidongwang <[email protected]>

The stack object “info” in snd_opl3_ioctl() has a leaking problem.
It has 2 padding bytes which are not initialized and leaked via
“copy_to_user”.

Signed-off-by: xidongwang <[email protected]>
---
sound/drivers/opl3/opl3_synth.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/sound/drivers/opl3/opl3_synth.c b/sound/drivers/opl3/opl3_synth.c
index e69a4ef..08c10ac 100644
--- a/sound/drivers/opl3/opl3_synth.c
+++ b/sound/drivers/opl3/opl3_synth.c
@@ -91,6 +91,8 @@ int snd_opl3_ioctl(struct snd_hwdep * hw, struct file *file,
{
struct snd_dm_fm_info info;

+ memset(&info, 0, sizeof(info));
+
info.fm_mode = opl3->fm_mode;
info.rhythm = opl3->rhythm;
if (copy_to_user(argp, &info, sizeof(struct snd_dm_fm_info)))
--
2.7.4


2020-07-07 08:12:28

by Takashi Iwai

[permalink] [raw]
Subject: Re: [PATCH 1/1] ALSA: opl3: fix infoleak in opl3

On Mon, 06 Jul 2020 05:27:38 +0200,
Xidong Wang wrote:
>
> From: xidongwang <[email protected]>
>
> The stack object “info” in snd_opl3_ioctl() has a leaking problem.
> It has 2 padding bytes which are not initialized and leaked via
> “copy_to_user”.
>
> Signed-off-by: xidongwang <[email protected]>

Applied, thanks.


Takashi