常见linux维权方法-权限维持与后门处置
linux常见维权方法
添加用户
创建一个用户名guest密码123456的普通用户
useradd -p `openssl passwd -l -salt 'salt' 123456` guest
useradd -p方法,``是用来存放可执行的系统命令, 其中openssl passwd可以理解为一种加密方式
chpasswd方法
useradd guest;echo 'guest:123456'|chpasswd // /etc/shadow用这个命令可以写入
echo -e方法
useradd test;echo -e "123456\n123456\n" |passwd test
可疑用户排查技巧
查询特权用户(uid为0)
awk -F: '$3==0{print$1}' /etc/passwd
查询可以远程登录的账号信息
awk '/\$1|\$6/{print$1}' /etc/shadow
除root账号外,其他账号是否存在sudo权限
如非管理需要,普通账号应该删除sudo权限
more /etc/sudoers | grep -v "^#\|^$" | grep "ALL=(ALL)"
SUID shell
suid shell 是一种可用于以拥有者权限运行的shell
配合普通用户权限使用
cp /bin/bash /tmp/shell
chmod u+s /tmp/shell
suid shell的排查技巧
在linux中查找suid设置的文件
find . -perm /4000
该命令的作用是查找当前目录及其子目录下所有设置了SUID权限位的文件,并将它们列出来。
具体来说,”.”表示当前目录,”-perm /4000”表示要查找文件的权限掩码中包含4000的文件。4000代表SUID位,当某个文件设置了SUID权限位时,该文件将以拥有该文件的所有者的身份运行,而不是以执行该文件的用户的身份运行。这种权限通常用于特定的系统任务,如密码更改等
在linux中查找使用sgid设置的文件
find . -perm /2000
取消s权限
chmod u-s /tmp/shell
ssh公私钥免密登陆
在客户端上生成一堆公私钥,然后把公钥放到服务器上(~/.ssh/authorized_keys),保留私钥。当ssh登陆时,ssh程序会发送私钥去和服务器上的公钥最匹配,匹配成功就可以登陆了。
客户端公钥生成ssh-keygen -t rsa
然后将公钥追加到/root/.ssh/authorized_keys
内即可
ssh公私钥免密登陆排查技巧
查看/root/.ssh/authorized_keys
是否被修改过
软连接
实质上就是PAM认证是通过软连接的文件名/tmp/su在/etc/pam.d/目录下寻找对应的PAM配置文件(如/etc/pam.d/su),任意密码登陆的核心是auth sufficient pam_rootok.so,所以只要PAM配置文件中包含此配置即可ssh任意密码登陆,除了su中之外还有chsh、chfn同样可以
软连接排查技巧
SSH wrapper
这个就理解为反弹shell就行。但这个是长连接的反弹shell,就是可以一直连接。
ssh wrapper排查技巧
ls -al /usr/sbin/sshd
cat /usr/sbin/sshd
可通过重装ssh服务来恢复
strace后门
通过命令替换动态跟踪系统调用和数据,可以用来记录用户ssh、su、sudo的操作
vim /etc/bashrc
alias ssh='strace -o /tmp/.ssh.log -e read,write,connect -s 2048 ssh'
source /root/.bashrc
strace后门排查
使用alias即可发现异常
计划任务反弹shell
这个我就不说了吧,
排查计划任务
crontab -e
openssh后门
利用openssh后门,设置ssh后门密码及root密码记录位置,隐蔽性强,不易被发现
备份ssh配置文件
mv /etc/ssh/ssh_config /etc/ssh/ssh_config.old
mv /etc/ssh/sshd_config /etc/ssh/sshd_config.old
openssh排查技巧
利用strace找出ssh后门
获取可疑ip
ps aux | grep sshd
跟踪sshd pid
strace -o aa -ff -p PID
查看记录密码打开文件
grep open sshd* | grep -v -e No -e null -e denied | grep WR
PAM后门
LINUX留后门–教程(六)—— PAM后门_pam_unix.so-CSDN博客
先不实操了,主要是刷课,了解大纲
rookit后门
Mafix是一款常用的轻量应用级别Rootkits,是通过伪造ssh协议漏洞实现远程登陆的特点是配置简单并可以自定义验证密码和端口
安装完成后,直接 ssh用户@IP -P 端口
排查技巧
查看端口是否异常,RPM chake查看命令是否被替换
这个也是一个大类的哈,我们后面会专门出
主流rootkit实现有下面三种方式:
库文件劫持
系统文件替换
LKM
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。后续可能会有评论区,不过也可以在github联系我。