首页 » 安全漏洞 » CVE-2021-3156漏洞权限提升复现及修复
"宝塔服务器面板,一键全能部署及管理,送你" 3188 "礼包"

CVE-2021-3156漏洞权限提升复现及修复


3月 31, 2022 已阅读: 4,008 次    安全漏洞

以前从来没关注过服务器漏洞情况,近期事情不多想着修复下比较高危的安全漏洞,经过扫描发现有个CVE-2021-3156的权限提升漏洞,并且漏洞并且已经有了漏洞验证程序
CVE-2021-3156漏洞权限提升复现及修复-TestGo
以前从来没复现过漏洞 只想着怎么修复,这次就来学习下如何完整的复现漏洞

漏洞判断

执行sudoedit -s '\' 后:
出现sudoedit:”开头的错误,说明系统可能存在此安全风险。
CVE-2021-3156漏洞权限提升复现及修复-TestGo
不受影响的系统将显示以“ usage:”开头的错误
CVE-2021-3156漏洞权限提升复现及修复-TestGo

漏洞复现

复现过程

1、服务器新建普通账户并查看当前账户权限
新建账号jc 并执行whoami查看此账号权限并不属于root
CVE-2021-3156漏洞权限提升复现及修复-TestGo
2、下载poc提权程序进行验证
https://haxx.in/CVE-2021-3156_nss_poc_ubuntu.tar.gz
将下载好的POC程序上传到服务器,使用tar命令解压,解压后可以看到以下文件
CVE-2021-3156漏洞权限提升复现及修复-TestGo
cd到CVE-2021-3156目录下,执行make(测试环境需要gcc编译器的支持才能正常编译),编译通过后多出一个./sudo-hax-me-a-sandwich的可执行文件
CVE-2021-3156漏洞权限提升复现及修复-TestGo

执行./sudo-hax-me-asanwich 0后再执行whoami可以看到提权成功了,此时jc账户的权限已经属于root了。
CVE-2021-3156漏洞权限提升复现及修复-TestGo

修复方案

更新sudo的版本
官方下载地址:https://www.sudo.ws/download.html

或执行命令:

wget "https://www.sudo.ws/dist/sudo-1.9.5p2.tar.gz"

下载新的sudo文件后用tar命令解压
CVE-2021-3156漏洞权限提升复现及修复-TestGo
执行./configure
CVE-2021-3156漏洞权限提升复现及修复-TestGo
执行make && sudo make install安装新的版本即可!