在2019年1月,由于snapd API中的错误,多个版本的Ubuntu被发现本地权限提升漏洞。漏洞编号:CVE-2019-7304
漏洞原因
默认情况下,Ubuntu附带了snapd,但是如果安装了这个软件包,任何发行版都应该可利用。运行以下命令,如果你snapd
是2.37.1或更高,你是安全的。
1
2
3
4
5
6
|
影响版本
- Ubuntu 18.10
- Ubuntu 18.04 LTS
- Ubuntu 16.04 LTS
- Ubuntu 14.04 LTS
漏洞利用
poc链接:https://github.com/initstring/dirty_sock
方法一
先在Ubuntu SSO创建账号,然后本地生成密钥:
1
|
ssh–keygen –t rsa –C “<you email>”
|
然后把当前用户下/.ssh/
目录下的id_rsa.pub
(公钥)拷到你账户的ssh-keys中。
执行第一个poc
1
|
|
出现错误,因为没有开启ssh服务。
1
|
sudo apt install openssh–server
|
重新执行下
如果成功,sudo -i
即可获取root权限。
方法二
直接执行poc
1
|
python3 ./dirty_sockv2.py
|
如果成功,会创建一个账号密码都为dirty_sock
的用户,su命令切换过去,然后通过sudo就可以切换为root了。
如果遇到了No passwd entry for user 'dirty_sock'
的问题,则查看下图中的任务进度,等到doing任务执行完之后再进行尝试,如果仍不行,请使用方法一。
参考链接
https://usn.ubuntu.com/3887-1/
https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/SnapSocketParsing
https://github.com/initstring/dirty_sock
原创文章,作者:Y4er,未经授权禁止转载!如若转载,请联系作者:Y4er