- 简介
Sudo(SuperUser Do)是一种常见的在Linux系统中提升用户权限的工具。但是,最近Linux发现了一个严重的问题:Sudo存在一个提权漏洞,可以允许不受信任的用户以root权限运行任意命令。这个漏洞被命名为“Baron Samedit”,它影响的版本包括Sudo 1.8.2到1.8.31p2版本以及1.9.0到1.9.5p1版本。
- 漏洞利用过程
攻击者可以通过以下步骤利用“Baron Samedit”漏洞提升到root权限:
步骤1:确定目标系统是否存在该漏洞。
可以通过以下命令检查系统中是否安装了Sudo软件,并找出当前Sudo版本:
sudo -V
如果显示的版本在漏洞范围内,则该系统存在漏洞。
步骤2:构造含有恶意代码的Sudo命令。
攻击者可以在命令行中输入以下命令:
sudoedit -s '\' `perl -e 'print "A" x 65536'`
这个命令可以在Sudoers文件中添加一个新的成员,使得任何用户都可以以root权限运行任何命令。这是因为Sudoers文件使用了一种叫做visudo的工具进行编辑,而visudo使用了Sudo来进行root权限的操作。攻击者利用开启了Sudo权限的用户进行sudoedit操作,然后借助恶意代码在Sudoers文件中添加了一个存在漏洞的语句。
步骤3:利用添加的语句以root权限运行任何命令。
添加完毕后,攻击者只需要输入以下命令,就可以以root权限运行任何命令:
sudo su
这样,攻击者就可以拥有root权限,如果攻击者成功进行了攻击,那么整个系统就在攻击者的掌控之中。
- 漏洞的修复
Sudo的开发者已经针对漏洞发布了修复程序,并建议尽快更新到最新版本,修复方法如下:
- 运行以下命令检查自己的sudo版本:
sudo -V
-
检查版本,若版本为1.8.2到1.8.32或1.9.0到1.9.5p1,则需要更新版本。
-
运行以下命令更新sudo版本:
apt-get update
apt-get upgrade
- 示例说明
示例1:查看Sudo版本
输入以下命令查看Sudo版本:
sudo -V
可以检查到版本为Sudo version 1.8.31。
示例2:更新Sudo版本
输入以下命令:
sudo apt-get update
sudo apt-get upgrade
升级完毕后,再次使用第一条命令检查Sudo版本,发现已经更新到了Sudo version 1.8.32。
- 总结
Sudo提权漏洞是一种严重的安全问题,攻击者可以利用该漏洞轻易地提升权限并获取系统控制权。如果你的系统中存在此漏洞,建议尽快升级到最新版本,以保证系统安全。同时,也需要注意程序的权限控制和网络安全保护,避免成为攻击者的下一个目标。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Linux曝出Sudo提权漏洞 任意用户亦可运行root命令 - Python技术站