0x01 文件无法删除
以 evil.sh文件 为例,下列提到的方法都是在常规 rwx 权限满足条件后依旧无法删除文件的情况
文件被进程占用lsof evil.sh
文件存在隐藏属性lsattr evil.sh
一般导致无法删除的隐藏属性有两种 a 和 i 可以像图中一样使用下列命令进行取消chattr -a evil.shchattr -i evil.sh
文件上层目录存在 SBIT 权限
这种情况只存在于非 root 权限去删除其他用户创建的目录的情况,即使文件权限是 777也无法进行删除以非 root 用户 join 删除 test1 用户创建的 /tmp/test1_dir/test1.txt 为例
0x02 netstat -pantu pid处显示 -
存在隐藏挂载
有些时候 netstat -pantu 显示 pid 处显示为 -可能是使用了下面的方法隐藏mkdir .hiddenmount -o bind .hidden /proc/PID这种情况可以使用 cat /proc/$$/mountinfo 来查看挂载信息通过 umount /pro ...
0x01 定损
定损过程就是确定受害范围的过程,此过程主要是与网络安全负责人、系统管理员、应用管理员、网络管理员等进行沟通交流
统计出与受害系统使用了相同密码的服务器
统计出与受害系统部署了相同存在漏洞或特有服务的服务器
例如负载均衡下的服务器
统计出与受害系统同一管理人员管理下的服务器
主要是系统管理员和应用管理员
统计出受害系统可以使用 ssh 密钥直接登录的服务器
统计出受害系统受害期间频繁交互的服务器
…
0x02 针对性排查处理
如果服务器数量不多,可以按照常规安全检查章节对服务器进行安全检查
若服务器数量较多,可以通过安全设备查看是否存在来自这些服务器发起的攻击
对内发起攻击
对外发起攻击
修改这些服务器的密码,尽量保证每一台服务器密码均不同,且为强口令
善后阶段是所有事件处置都要做的步骤,放在最后一起写,主要内容包括以下几个方面
0x01 杀毒工具查杀
chkrootkit
clamav
Unhide
Rootkit Hunter
0x02 history 信息
以下四种情况history 会不完整
被清空或设置不记录, history -c 或者 unset HISTORY HISTFILE HISTSAVE HISTZONE HISTORY HISTLOG; export HISTFILE=/dev/null; export HISTSIZE=0; export HISTFILESIZE=0
如果ssh 异常中断(比如网络中断),历史命令还在缓冲区中不会写入到文件中,就会导致此连接执行的命令没有记录
如果命令前带一个空格,这条命令就不会被记录
通过 ssh 直接远程执行的命令不会记录
例如 ssh ubuntu@192.168.1.1 “whoami”
history 信息默认是不显示命令执行的时间的,默认并没有记录,可以通过配置环境变量将时间显示出来,在设置后 ...
为了隐匿流量,攻击者常常使用隧道来进行流量加密与混淆
隧道事件的事件来源一般有以下几种:
流量设备发现存在网络隧道
主机安全程序发现存在网络隧道或相关文件、进程
排查过程中发现存在跳板机痕迹等,进而发现隧道
运维相关人员发现异常端口等
其实大家可以发现,处理隧道与处理远控后门没有太大的区别,因为隧道本身就是后门大概念中的一部分,所以也是通过各种特征找到 PID ,进而处理
大多数协议隧道都包含两点特征:
存在短时间、单一目标、频繁请求的该协议的数据包
可能出现额外本地到本地的连接 (127.0.0.1:xx -> 127.0.0.1:xx)
大家需要明白一点,发现隧道并不是应急人员要做的,验证处理才是,现在隧道程序五花八门,尝试去记住特征并识别意义并不大,下面的部分也仅仅是介绍一些隧道技术与正常网络连接的差异,如果隧道程序想做,完全可以做到和正常网络连接没区别
这里给大家推荐一篇总结内网代理工具与检测方法研究的文章,下面部分内容参考该文章
0x00 隧道处置方法
隧道处置起来比较困难的是找到隧道对应的进程,尤其是对于 icmp 隧道来说,找到进程后 ...
0x00 梳理现场情况
采集并确定 ioc 信息
恶意软件包供应链攻击的事件来源可能有很多,例如主动 rpm -Va 或 debsums –all 检查或被动流量侧、EDR侧检测到恶意程序等,因此这部分以发现恶意软件包程序 pid 为开始
确认攻击信息准确性
安全设备、人、上级/行业/监管单位的通报都不见得是准确的,做二次研判是必要的,能够帮我应急响应人员确定整体排查思路
询问历史被攻击情况、历史通报
历史攻击可能会留下攻击遗产,成为未来新一轮攻击事件的发起点,询问清楚历史被攻击、被通报情况,向当事人或负责人了解清楚事件性质、处理过程、处理结果,这可能会在完全理不清攻击路径的时候帮你一把
0x01 通过 pid 确定具体文件
根据pid获取程序的详细信息
lsof -p pid
pwdx pid 获取该pid的进程启动的时候的目录,并不一定是恶意文件所在的路径,只是启动恶意文件的路径
systemctl status pid 获取这个进程的status信息
cat /proc/pid/maps
ls -al /proc/pid/exe
有 ...
0x00 简介
持续性的挖矿、远控后门等可以通过直接排查发现,但是在实际工作中,很多恶意行为(访问恶意域名、连接恶意IP)只集中出现了几次,无法直接通过网络连接找到恶意进程及文件或者有些恶意程序处置结束后,无法确定是否已经清理完整可以通过短时间/长时间网络监控来解决
0x01 确定目标域名或IP
如果目标域名或者IP是某一知名组织的,可以将该组织或者种类病毒的域名和IP都收集进行监控
0x02 修改域名解析记录
修改恶意域名的解析记录目的主要有两个:
阻断控制,防止二次伤害
得到固定的IP解析记录,防止攻击者把域名下架或者改变解析到的IP
修改域名解析记录有两个途径:
在内网DNS服务器中集中修改(如果内网有DNS服务器)
修改 hosts 文件 (推荐)
以恶意域名 du.testjj.com 为例
通过修改 /etc/hosts 将 du.testjj.com 解析IP修改为 123.123.123.123
0x03 设置监控程序
很多客户不允许在服务器上安装监控程序,但是对于可审计的脚本倒是可以在审计后执行,因此这里主要以脚本为主
Linu ...
0x00 整体流程
0x01 梳理现场情况
确认攻击信息准确性
安全设备、人、上级/行业/监管单位的通报都不见得是准确的,做二次研判是必要的,能够帮我应急响应人员确定整体排查思路
询问历史被攻击情况、历史通报、历史误报
历史攻击可能会留下攻击遗产,成为未来新一轮攻击事件的发起点,询问清楚历史被攻击、被通报情况,向当事人或负责人了解清楚事件性质、处理过程、处理结果,这可能会在完全理不清攻击路径的时候帮你一把
应急响应人员大概率是没有被攻击单位运维、安全等人员熟悉他们的系统的,所以历史误报很重要,例如修改了数据库密码等问题就很容易有历史误报,建议面对暴力破解事件时打听一下历史误报情况
暴力破解类型
暴力破解攻击主要针对
ssh
mysql
ftp
redis
mongodb
smtp
0x02 SSH 暴力破解
检查网络连接信息netstat -pantu
Proto 协议类型
Recv-Q :表示收到的数据已经在本地接收缓冲,但是还有多少没有被进程取走,如果接收队列Recv-Q一直处于阻塞状态,可能是遭受了拒绝服务 denial-of-se ...
0x00 整体流程
0x01 勒索病毒简述
勒索病毒是让人比较无奈的恶意程序,大部分都是只有攻击者才能解密近期和一些勒索解密团队合作后发现,其实还是有解密的可能的,是否能够解密,如何判断需要专业团队来完成但还是那句话,把应急解密或者赎金的钱用在数据备份,安全防护上才是较为明智的选择
0x02 梳理现场情况
保护现场
保护现场很重要,即使重装系统也建议保留一份镜像,尤其是与本次攻击相关的关键系统可以使用电子取证专用的一些采集器
采集并确定 ioc 信息
从内网 dns 服务器、dns 防火墙、流量审计设备等设备获取
从EDR、态势感知等设备获取
从被勒索文件特征以及勒索信获取
确认攻击信息准确性
安全设备、人、上级/行业/监管单位的通报都不见得是准确的,做二次研判是必要的,能够帮我应急响应人员确定整体排查思路
询问历史被攻击情况或历史通报
历史攻击可能会留下攻击遗产,成为未来新一轮攻击事件的发起点,询问清楚历史被攻击、被通报情况,向当事人或负责人了解清楚事件性质、处理过程、处理结果,这可能会在完全理不清攻击路径的时候帮你一把
0x03 ...
0x0-整体流程
0x2— 远控后门事件应急处置方法1.事件告警来源
木马远控后门事件通常会在 EDR 或者态势感知系统中获得相关告警信息。
1.1 通过 EDR 获取到告警事件
通过 EDR 获取到的紧急事件,可以直接定位到恶意文件以及文件路径。
通过文件寻找相关恶意进程。
根据文件查找 pid:
lsof | grep evil.sh
lsof /root/evil.sh # 需要指定路径,只指定字符无法直接查询到相关信息
fuser /root/evil.sh # 该命令需要在 root 权限下执行,否则结果会为空,命令前加 sudo 也可能显示为空。
1.2 通过态势感知获取到告警事件
通过态势感知获取到的紧急事件,是可以根据五元组进行详细查询的。
根据态感报警信息,可得到外连 IP+端口
根据目的 IP 和端口查找 pid
netstat -pantu | grep 11.11.11.11 # grep 后面要根据真实情况填写实际 IP 而非演示地址 11.11.11.11
netstat -pantu | grep 65535 # ...
0x0-整体流程
0x1—挖矿事件应急响应处置方法1.发掘寻找恶意域名(矿池地址)
根据内网 dns 服务器、dns 防火墙、边界防火墙、流量审计设备等相关设备获取
根据域名确认木马类型,可以从以下沙箱判定寻找
微步在线
Virustotal
安恒威胁情报中心
绿盟威胁情报中心链接
天际友盟威胁情报中心
360威胁情报中心
多沙箱检测,确保结果。
2.获取异常进程 pid
cpu 占用
top -c -o %cpu
-c 参数显示进程的命令行参数
ps -eo pid ,ppid,%mem,%cpu,cmd --sort =-%cpu | head -n 5
列出 cpu 占用前 5 的进程信息
内存占用
top -c -o %MEM
-c 参数显示进程的命令参数
ps -eo pid ,ppid,%mem,%cpu,cmd --sort =-%mem | head -n 5
列出 内存占用前 5 的进程信息
网络占用
网络占用需借助第三方软件,之后使用 root 权限执行
Ubuntu/Debian 安装:
sudo apt ins ...

