CVE-2021-4034
CVE-2021-4034 Pwnkit Linux Polkit组件 本地提权 从危险环境变量getshell Polkit Polkit 是一个应用程序级别的工具集,通过定义和审核权限规则,实现不同优先级进程间的通讯:控制决策集中在统一的框架之中,决定低优先级进程是否有权访问高优先级进程。 polkit预装在linux发行版中,其中的suid程序pkexec被发现可利用的存在内存漏洞 漏洞分析 修复后 src/programs/pkexec.c · a2bf5c9c83b6ae46cbd5c779d3055bff81ded683 · polkit / polkit · GitLab 修复前 src/programs/pkexec.c · 0.105 · polkit / polkit · GitLab 可以看到有一个fix如下 /* * If 'pkexec' is called THIS wrong, someone's probably evil-doing. Don't be nice, just bail out. */ if (argc<1) { exit(127); } 当argc<1时的情况会被恶意利用,因此直接对这种情况退出 for (n = 1; n < (guint) argc; n++) { if (strcmp (argv[n], "--help") == 0) { opt_show_help = TRUE; } else if (strcmp (argv[n], "--version") == 0) { opt_show_version = TRUE; } else if (strcmp (argv[n], "--user") == 0 || strcmp (argv[n], "-u") == 0) { n++; if (n >= (guint) argc) { usage (argc, argv); goto out; } if (opt_user !...