[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 1/8] Fix stack smashing when handling PR_GET_PDEATHSIG
From: |
Laurent Vivier |
Subject: |
[PULL 1/8] Fix stack smashing when handling PR_GET_PDEATHSIG |
Date: |
Mon, 26 Oct 2020 23:03:32 +0100 |
From: Stephen Long <steplong@quicinc.com>
The bug was triggered by the following code on aarch64-linux-user:
int main(void)
{
int PDeathSig = 0;
if (prctl(PR_GET_PDEATHSIG, &PDeathSig) == 0 && PDeathSig == SIGKILL)
prctl(PR_GET_PDEATHSIG, 0);
return (PDeathSig == SIGKILL);
}
Signed-off-by: Stephen Long <steplong@quicinc.com>
Signed-off-by: Ana Pazos <apazos@quicinc.com>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20200507130302.3684-1-steplong@quicinc.com>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
linux-user/syscall.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 897d20c076ce..3e0f14f2e67f 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -10703,7 +10703,7 @@ static abi_long do_syscall1(void *cpu_env, int num,
abi_long arg1,
int deathsig;
ret = get_errno(prctl(arg1, &deathsig, arg3, arg4, arg5));
if (!is_error(ret) && arg2
- && put_user_ual(deathsig, arg2)) {
+ && put_user_s32(deathsig, arg2)) {
return -TARGET_EFAULT;
}
return ret;
--
2.26.2
- [PULL 0/8] Linux user for 5.2 patches, Laurent Vivier, 2020/10/26
- [PULL 2/8] linux-user: Support f_flags in statfs64 when available., Laurent Vivier, 2020/10/26
- [PULL 4/8] linux-user: update mips/syscall-args-o32.c.inc to Linux 5.9-rc7, Laurent Vivier, 2020/10/26
- [PULL 1/8] Fix stack smashing when handling PR_GET_PDEATHSIG,
Laurent Vivier <=
- [PULL 8/8] target/xtensa: enable all coprocessors for linux-user, Laurent Vivier, 2020/10/26
- [PULL 5/8] linux-user: update syscall.tbl to Linux 5.9-rc7, Laurent Vivier, 2020/10/26
- [PULL 6/8] linux-user: remove _sysctl, Laurent Vivier, 2020/10/26
- [PULL 3/8] linux-user: update syscall_nr.h to Linux 5.9-rc7, Laurent Vivier, 2020/10/26
- [PULL 7/8] linux-user: correct errno returned from accept4() syscall, Laurent Vivier, 2020/10/26
- Re: [PULL 0/8] Linux user for 5.2 patches, Peter Maydell, 2020/10/28