Linux kernel是开放源代码Linux操作系统内核,/proc/pid/mem接口设计用于某一应用程序在某些情况下可以方便的访问另一应用程序内存。这个功能对开发人员或管理员在运行的系统中调试或分析程序非常有用。其中之一访问内存的方法是直接使用mmap()映射页面。 直接使用mmap()映射页面访问内存方法缺少充分的验证,本地攻击者可以利用这个漏洞请求访问不可读进程使系统内核崩溃。 用户可以使用mmap()接口访问被跟踪进程本来没有权限读取的内存,用户可以传递PROT_READ参数给这个调用,请求读访问这个映射,由于不充分的验证检查,恶意用户可以把映射标记为可读,这样用户可以请求他的实例可被内核读取,造成系统崩溃。
Linux kernel是开放源代码Linux操作系统内核,/proc/pid/mem接口设计用于某一应用程序在某些情况下可以方便的访问另一应用程序内存。这个功能对开发人员或管理员在运行的系统中调试或分析程序非常有用。其中之一访问内存的方法是直接使用mmap()映射页面。 直接使用mmap()映射页面访问内存方法缺少充分的验证,本地攻击者可以利用这个漏洞请求访问不可读进程使系统内核崩溃。 用户可以使用mmap()接口访问被跟踪进程本来没有权限读取的内存,用户可以传递PROT_READ参数给这个调用,请求读访问这个映射,由于不充分的验证检查,恶意用户可以把映射标记为可读,这样用户可以请求他的实例可被内核读取,造成系统崩溃。