Received: by 2002:ac0:a591:0:0:0:0:0 with SMTP id m17-v6csp1602555imm; Fri, 6 Jul 2018 03:10:42 -0700 (PDT) X-Google-Smtp-Source: AAOMgpfM65b5E4YVUnEKOmNiEh0t/pl3iqiGJO+UnLuaZioKwJ1FgmUZGkBwc9WtYEnd3f+SbUTK X-Received: by 2002:a62:8995:: with SMTP id n21-v6mr9920712pfk.83.1530871842556; Fri, 06 Jul 2018 03:10:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530871842; cv=none; d=google.com; s=arc-20160816; b=JcQaoEEn8LKrKcjsalaUUgA2zihybNnQRdeMPUyuMkikaTZWDyOjKcL2/zXv1EN/fM MD64JjKMHO/q4JEYoWUiWWsCBnibIMXK2YYD771dOxyvI+PdmRLa6Is7OtiTuwM0yZS/ 65wzKBJekcRHh8AckV1YF6mI3OjQZeCEBUDanVxO3AnNK2bbz8RVUoupWY6C5MMJCSYE nLrSBWdqQ0Ju0ilB7dvtwE+5aO5n1vAZamhEAJ5/8Ps8jkfCthJkiOcCHFyR7n4fj8Wt q+hi8j+Nq95utzKshWFKS2ZFEjrCBnd6A1U69gNiieBNiJ6p19z0U78Z+WxQ9INt//qR V9sA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=Njzfx3Ldia2PkvbKe/A30pRHWLLoRUyoKs/1JOX4oVg=; b=GPnThnafI2MP3HvOntH7gHM7jegweue7Dh6x9KeqXhXqrQ1zv/p+KUilNMI6iyQQBw 0IQbk0yRatGE9lCp/x9v7zc15GZStY+OcIOn3uTiTTrFh5YGNH2I9viG2X2Fm1j+YflR fSliykNFZPlzlUdJi7BhvjTN6gpnMzAT5aASDtG9PO2jMYVS5Do5Vt76wmuMa2z7xtS2 zvP/Z7L/5BwpYyMidQhchScB4qqJJF2Y1kOTMAuwd/WVrm/LKQBROJhXS3A8DMBrVdws mVonkwYVOErbqrmKVl52OW3wZd3O+GR5xZCM/tCI8ZefvzbSe8D9NSjMBkQlaBlqsBKI 2Cqg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q1-v6si8054222plb.331.2018.07.06.03.10.27; Fri, 06 Jul 2018 03:10:42 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754054AbeGFKJO (ORCPT + 99 others); Fri, 6 Jul 2018 06:09:14 -0400 Received: from www262.sakura.ne.jp ([202.181.97.72]:60082 "EHLO www262.sakura.ne.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753529AbeGFKHt (ORCPT ); Fri, 6 Jul 2018 06:07:49 -0400 Received: from fsav402.sakura.ne.jp (fsav402.sakura.ne.jp [133.242.250.101]) by www262.sakura.ne.jp (8.15.2/8.15.2) with ESMTP id w66A7f7u002596; Fri, 6 Jul 2018 19:07:41 +0900 (JST) (envelope-from penguin-kernel@I-love.SAKURA.ne.jp) Received: from www262.sakura.ne.jp (202.181.97.72) by fsav402.sakura.ne.jp (F-Secure/fsigk_smtp/530/fsav402.sakura.ne.jp); Fri, 06 Jul 2018 19:07:41 +0900 (JST) X-Virus-Status: clean(F-Secure/fsigk_smtp/530/fsav402.sakura.ne.jp) Received: from ccsecurity.localdomain (softbank126074194044.bbtec.net [126.74.194.44]) (authenticated bits=0) by www262.sakura.ne.jp (8.15.2/8.15.2) with ESMTPSA id w66A7ZRL002553 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Fri, 6 Jul 2018 19:07:41 +0900 (JST) (envelope-from penguin-kernel@I-love.SAKURA.ne.jp) From: Tetsuo Handa To: keescook@chromium.org Cc: linux-kernel@vger.kernel.org, torvalds@linux-foundation.org, Tetsuo Handa Subject: [PATCH] uts: Don't randomize "struct uts_namespace". Date: Fri, 6 Jul 2018 19:07:30 +0900 Message-Id: <1530871650-3582-1-git-send-email-penguin-kernel@I-love.SAKURA.ne.jp> X-Mailer: git-send-email 1.8.3.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org I noticed that makedumpfile utility is failing to check kernel version, for it depends on offset of "struct uts_namespace"->name being sizeof(int). ---------- int check_release(void) { unsigned long utsname; /* * Get the kernel version. */ if (SYMBOL(system_utsname) != NOT_FOUND_SYMBOL) { utsname = SYMBOL(system_utsname); } else if (SYMBOL(init_uts_ns) != NOT_FOUND_SYMBOL) { utsname = SYMBOL(init_uts_ns) + sizeof(int); } else { ERRMSG("Can't get the symbol of system_utsname.\n"); return FALSE; } if (!readmem(VADDR, utsname, &info->system_utsname, sizeof(struct utsname))) { ERRMSG("Can't get the address of system_utsname.\n"); return FALSE; } ---------- Since there is no way to tell the offset to userspace, let's not randomize "struct uts_namespace". Signed-off-by: Tetsuo Handa Fixes: 3859a271a003aba0 ("randstruct: Mark various structs for randomization") Cc: stable # v4.13+ --- include/linux/utsname.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/utsname.h b/include/linux/utsname.h index 44429d9..85c206f 100644 --- a/include/linux/utsname.h +++ b/include/linux/utsname.h @@ -27,7 +27,7 @@ struct uts_namespace { struct user_namespace *user_ns; struct ucounts *ucounts; struct ns_common ns; -} __randomize_layout; +}; extern struct uts_namespace init_uts_ns; #ifdef CONFIG_UTS_NS -- 1.8.3.1