Linux
在已知恶意域名/IP的情况下,可以通过边界设备查询首次域名解析、IP通联的时间,基于时间信息往往就可以定位到恶意进程及文件位置。
例如首次域名/IP出现的时间为2024年7月2日,可以查询2024年7月1日访问(at)、数据修改(mt)、状态修改(ct)的ELF文件。
查找文件时间信息
find / -mount -type f -executable -newerct '2024-07-01 00:00:00' ! -newerct '2024-07-03 00:00:00' -exec file {} ; | grep ELF | awk -F: '{print $1}' | xargs -I % sh -c 'stat % && md5sum %'
以上命令为个人构造常用命令,大致解释如下。
- find /: 从根目录 / 开始搜索。
- -mount: 只搜索当前文件系统,不跨越挂载点。
- -type f: 只搜索普通文件,不包括目录等其他类型。
- -executable: 只搜索可执行文件。
- -newerct '2024-07-01 00:00:00': 只搜索比 2024 年 7 月 1 日 00:00:00 更新的文件。(可灵活替换为at、mt)
- ! -newerct '2024-07-03 00:00:00': 排除那些比 2024 年 7 月 03日 00:00:00 更新的文件。(可灵活替换为at、mt)
- -exec file {} ;: 对每个找到的文件运行 file 命令,获取文件类型信息。
- | grep ELF: 通过管道将 file 命令的输出传递给 grep,只保留 ELF 格式的文件。
- | xargs -I % sh -c 'stat % && md5sum %':
- 对每个文件运行 stat 命令获取文件详细信息,然后运行 md5sum 命令计算文件的 MD5 校验和。
另外,如果遇到嵌入式设备或者find命令被篡改的情况。可以使用busybox替换上述命令部分功能。
find / ! -path "/log/m*" -type f -exec busybox stat {} \; | grep -B 6 "Change: 2024"
适用于攻击者未修改落地时间的情况,事实上,在Linux系统中,修改文件的at、mt、ct属性是很方便的。将木马文件修改成与当前文件夹相同的mt、ct,是APT组织的惯用手法。
查找程序启动时间
ps -eo cmd,pid,lstart --sort=lstart
#更多输出信息查看man手册STANDARD FORMAT SPECIFIERS
根据输出的信息,查找当天是否有异常启动的进程。
适用于服务器、很久未关机的情况,异常的进程启动时间往往会格外明显。
不适用于做了持久化的后门进程发现,一旦后门做了持久化并且设备重启后,靠启动时间就无法推断了。
Windows
Windows平台,最好用的应当是Everything,较为直观、列名空白处右键,将时间信息导出即可。
![图片[1]-时间信息定位恶意进程-李白你好](https://libaisec-1303108685.cos.ap-guangzhou.myqcloud.com/2024/12/20241231153249989-图片-1024x546.png)
常用命令:
#查找2024年8月1日至8月2日数据修改过的所有文件,可替换为da、dc
dm:2024/08/01..2024/08/02
© 版权声明
文章版权归作者所有,转载请标明出处。
THE END
暂无评论内容