漏洞复现 之 sudo提权漏洞(CVE-2019-14287)复现

一、简介
sudo:Linux系统命令,让普通账号以root身份去执行某些命令,如,安装软件、查看某些配置文件、关机、重启等操作,如果普通账号需要使用sudo需要修改配置文件/etc/sudoers,将sudo使用权限赋予该账号
• sudo提权漏洞是一个安全策略绕过问题,去执行某些敏感的命令,CVE编号是CVE-2019-14287,影响的版本是:<1.8.28
二、漏洞复现过程
靶机:Ubuntu 18 x64系统
1.查看sudo版本,并创建test用户
1 sudo -V 查看sudo版本
2 useradd test 添加test用户
3 passwd test 为test用户设置密码
在这里插入图片描述
在这里插入图片描述
2.修改sudo配置文件:在root ALL=(ALL:ALL) ALL下面添加一行配置test ALL=(ALL,!root) ALL
sudo gedit /etc/sudoers 使用文本编辑器打开sudo配置文件
在这里插入图片描述在这里插入图片描述1 test ALL=(ALL,!root) ALL
2 test 表示test用户
3 第一个ALL表示该用户可以在任意地方使用sudo
4 第二个(ALL,!root) 表示命令可以被除了root以外的任意用户执行
5 最后一个ALL 表示被允许执行
• 整体表示:test用户可以使用sudo,以除了root以外的任意用户去执行命令
3.切换到test用户,su test,然后进行测试
sudo id 查看root用户的ID
在这里插入图片描述
• 由上图可以看到,使用命令报错
• 解决方法:sudo -u#数字 命令,其中数字是范围:-1~4294967295,命令是系统命令
• 如果要以root身份去执行命令,数字使用-1或4294967295,至此漏洞复现成功!!
o 命令中的数字是id号,可以在/etc/group中查看
在这里插入图片描述• 解释:使用 sudo -u#id 指定用户 id 去执行命令,由于可以指定id,所以可以使用-u#-1或者-u#4294967295绕过限制,从而以root身份去执行任意代码。这是因为 sudo 命令本身就已经以用户 ID 为0运行,因此当 sudo 试图将用户 ID 修改成-1时,不会发生任何变化。这就导致 sudo 日志条目将该命令报告为以用户 ID 为 4294967295而非 root (或者用户ID为 0)运行命令
(解释来源于https://www.cnblogs.com/-mo-/p/11683402.html,很详细感谢!!!)
三、总结:该漏洞复现比较鸡肋,需要管理员修改配置文件
四、修复方法:更新sudo版本1.8.28

### 关于CVE-2016-0777漏洞 CVE-2016-0777涉及OpenSSH中的一个严重缺陷,该缺陷允许攻击者通过特定方式利用密钥交换过程中存在的逻辑错误来实施中间人攻击[^1]。 对于此类安全研究或测试活动,强烈建议仅限于合法授范围内,在实验环境中操作。这不仅有助于保护网络空间的安全秩序,也能够确保研究人员免受法律风险的影响。 为了有效复现漏洞并理解其机制,通常需要构建一个模拟环境,其中包含易受攻击版本的OpenSSH服务器和客户端软件。具体来说: - **准备阶段** - 获取受影响版本的OpenSSH源码包,并按照官方文档指导完成编译安装。 - **配置设置** - 修改sshd_config文件以启用潜在危险选项(如不推荐使用的Diffie-Hellman-group1-sha1 KEX算法),从而暴露出可被利用的风险点。 - **验证过程** - 使用定制化的工具或脚本发起连接请求,观察是否存在预期的行为偏差;例如,尝试建立非预期的数据传输路径或者获取额外限等异常情况的发生。 值得注意的是,上述描述旨在供理论上的技术探讨而非鼓励任何非法行为。实际动手前务必确认已获得适当许可,并采取必要措施防止意外扩散至生产系统中造成损害。 ```bash # 安装依赖库 sudo apt-get update && sudo apt-get install build-essential zlib1g-dev libssl-dev # 下载指定版本的openssh源代码 wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.1p1.tar.gz # 解压并进入目录 tar xf openssh-7.1p1.tar.gz cd openssh-7.1p1/ # 编辑配置文件调整参数... vi sshd_config # 启动服务端程序 ./configure && make && sudo make install sudo cp contrib/redhat/sshd.init /etc/init.d/sshd sudo chkconfig --add sshd sudo service sshd start ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值