diff mbox series

[v4,2/2] Hardening x86: Forbid writes to read-only memory pages of a process

Message ID 20200416155917.28536-3-levonshe@gmail.com (mailing list archive)
State New, archived
Headers show
Series hardening : prevent write to proces's read-only pages | expand

Commit Message

Lev R. Oshvang . April 16, 2020, 3:59 p.m. UTC
Signed-off-by: Lev Olshvang <levonshe@gmail.com>
---
 arch/x86/include/asm/mmu_context.h | 5 +++++
 1 file changed, 5 insertions(+)
diff mbox series

Patch

diff --git a/arch/x86/include/asm/mmu_context.h b/arch/x86/include/asm/mmu_context.h
index 4e55370e48e8..e9b820780424 100644
--- a/arch/x86/include/asm/mmu_context.h
+++ b/arch/x86/include/asm/mmu_context.h
@@ -216,6 +216,11 @@  static inline void arch_unmap(struct mm_struct *mm, unsigned long start,
 static inline bool arch_vma_access_permitted(struct vm_area_struct *vma,
 		bool write, bool execute, bool foreign)
 {
+	if (unlikely(!vma_write_allowed(vma, write, foreign))) {
+		pr_err_once("Error : PID[%d] %s writes to read only memory\n",
+			    current->pid, current->comm);
+		return false;
+	}
 	/* pkeys never affect instruction fetches */
 	if (execute)
 		return true;