Linux Kernel 2.6.0 Sendpage Local 权限提升漏洞 CVE-2009-2692 CNNVD-200908-181 CNVD-2009-4258

7.2 AV AC AU C I A
发布: 2009-08-14
修订: 2024-02-08

Linux Kernel是开放源码操作系统Linux所使用的内核。<br/>在Linux内核中,每个套接字都有一个名为proto_ops的相关操作结构,其中包含有用于实现各种功能(如接受、绑定、关闭等)的函数指针。如果对特定套接字的操作没有实现,就应将相关的函数指针指向预定义的存根。例如,如果没有定义accept功能,就应指向sock_no_accept()。但是,如果某些指针没有初始化,就可能出现其他情况。例如,sock_sendpage()函数在引用函数指针之前没有执行验证,因此依赖于proto_ops结构的初始化情况。<br/>这个漏洞可能被用于获得本地权限提升。如果要利用这个漏洞,攻击者必须能够在0地址创建包含有将以内核权限执行代码的映射,然后使用以下序列触发有漏洞的操作:<br/>/* ... */<br/> int fdin = mkstemp(template);<br/> int fdout = socket(PF_PPPOX, SOCK_DGRAM, 0);<br/> unlink(template);<br/> ftruncate(fdin, PAGE_SIZE);<br/> sendfile(fdout, fdin, NULL, PAGE_SIZE);<br/>/* ... */<br/>请注意sendfile()只是在套接字中导致sendpage操作的方法之一。<br/>

0%
当前有22条漏洞利用/PoC
当前有173条受影响产品信息